cross-posted from: https://lemmygrad.ml/post/6028275
After being extremely annoyed with how Microsoft was trying to force me to use their worthless Outlook programme, and learning that Windows 11 (which they’ve also been pressuring to try) is polluted with advertising, I decided that it was time to migrate to another operating system. Somebody recommended EndeavourOS to me, and after backing up my valuables and following these instructions, I am finally trying a better operating system.
If I’m being honest, my first impressions are… not good.
One of the first things that I notice is that I can’t easily modify the /usr/ directory. I tried to install Java there but the OS would not let me because I lack the permission. How do I get the permission? I don’t know. I am guessing that it has something to do with Terminal Emulator, and the fact that I have to use this program so much immediately tells me that this OS was made for programmers in mind, not ordinary users. On Windows, I could click an executable, click a few more buttons and be done with it, but here the OS wants me to mess with a
DOS promptterminal.Then there is the scaling. I managed to adjust the scaling while keeping the resolution so that everything on my screen didn’t look microscopic. The problem is that when I open certain tabs or windows, they stretch out so far that the monitor can only show part of them. Here’s a screenshot so that you can see what I mean:
This is just lousy design. I can shrink the window, but not by much.
I want to uninstall a font. How do I do that? Well, I read on the EndeavourOS forum that I need to run ‘pacman’ (meaning the terminal) to uninstall a font. Nobody elaborated on that. So after entering the terminal, typing ‘su’, then my password (another annoyance), then entering “pacman -R /usr/share/fonts/noto/NotoColorEmoji.ttf”, the terminal spits out “error: target not found: /usr/share/fonts/noto/NotoColorEmoji.ttf”, even though I am 100% certain that it is there. I would just remove it by simply clicking it and deleting it, except that the OS refuses and tells me “Error removing file: Permission denied”.
Speaking of which, I actually find this more annoying than Windows’ worthless ‘administrator’ function. At least I could simply click the administrator function and be done with it. The process here looks much less straightforward.
I want a calendar with scheduling, which is part of the reason that I am quitting Windows. I downloaded the Orage application hence, then I clicked on ‘orage-4.18.0.tar.bz2’ in my downloads folder. My cursor spins like something is loading, and… nothing happens. I don’t even get an error message.
There are some other things that I could mention (where’s the color filter?), but these are the worst offenders. I’m not calling it quits on EndeavourOS, and I am sure that eventually I’ll get the hang of things, but so far this has been unenjoyable.
If it’s your first distro, just install Linux Mint, Kubuntu, Fedora, Debian… one of the “big ones”.
EndeavourOS
EndeavourOS is based on Arch linux, which is marketed to “power users”. EndeavourOS just has some decisions made for you plus some helpful tools. It is still Arch Linux under the hood and does require you to interact with the command line a lot.
One of the first things that I notice is that I can’t easily modify the /usr/ directory. I tried to install Java there but the OS would not let me because I lack the permission. How do I get the permission?
Linux, unlike Windows, is a multi-user system. That means multiple users can use the machine at the same time. You have your user account, but you also have an “Administrator” account. Did the installer ask you to set a “root password”? That is the password to the Administrator account, on Linux it’s called “root”.
Alternatives: https://kubuntu.org/
https://www.linuxmint.com/
https://pop.system76.com/
https://lubuntu.me/
https://fedoraproject.org/I strongly suggest you give up on EndeavourOS (for now) and try one of the ones linked above. You also have to know nobody chooses a Linux distro forever. “Distro hopping” is a thing, people try many, sometimes dozens of Linuxes until they find one that suits them.
My first distro was RedHat back in 2004. Then Slackware, then Debian. Since then I’ve tried/used Ubuntu, Fedora, Arch Linux, Linux From Scratch, Slax, Linux Mint (installed it for family members), Void Linux (what I use now), etc. etc.
Once you get a good feel for linux with one of the more user friendly distros, then you can try the exotic ones.
Books/wikis: https://linuxnewbieguide.org/ulngebook2017/
https://wiki.archlinux.org/title/Main_page
https://wiki.gentoo.org/wiki/Handbook:AMD64Arch and Gentoo wikis are distro-specific but hold a lot of info that applies to others.
Best place to find help with Linux is IRC.
- server: irc.libera.chat
- channels: #Linux, #Debian, and so on, the help channel is usually just your distros name.
The
/usr/
folder is not to be touched directly. The system uses those folders to store configuration and installation files.
The/home/
folder is what you’ll be using to access your files and documents. The rest is not to be touched unless you’re doing “power user” stuff.I’ll be echoing @multitotal@lemmygrad.ml’s suggestion and recommending that you install Linux Mint, which is recommended for early Linux users, though it doesn’t matter that much in the end for the average user.
I think EndeavourOS (or anything based on Arch Linux) isn’t a great distro to start with for a beginner, experienced users like to pretend that it’s totally easy but it’s really not, it generally relies more on the terminal and manual configuration than other easier distros
I agree with that other comment in this thread saying that a different distro would be a lot easier to learn, and I also agree with them about Fedora Kinoite being easy to understand as a new user (the distro I use is a variant of it), though I also understand that a lot of people here aren’t fond of Fedora due to their connection to Red Hat, and Fedora’s Atomic variants like that have some quirks that make them different from most other distros
I also agree that XFCE isn’t a great choice of desktop environment, a big part of it being “lightweight” is because it lacks a lot of useful features that other DEs have, and if your PC can handle current Windows then you most likely will be fine with “heavier” DEs like KDE Plasma or GNOME, they still generally run better than Windows these days
I’d recommend trying KDE Plasma (Fedora Kinoite comes with it, but you can get it on most other distros too), it’s very flexible but still pretty easy to use, its UI scaling works better than in any other DE I’ve seen, and it also has color blindness filters if that’s what you mean by color filter (and if you mean blue light filter, it has that too)
Agreed: Endeavour is not for beginners.
Oof, I wish I could spend an afternoon with you teaching you some very basic linux things. I wish there were an easy way to share my knowledge with you, because with literally an afternoon spent together with me (or any other semi-knowledgable linux user who enjoys teaching) learning, you’d be in a much better place to understand how to interact with a linux system.
But through text like this, in this medium, I’m just not going to be very helpful! We need to talk about overarching linux concepts, like, how the file system works (because it’s pretty different from windows), what package managers are and how to interact with them, basic command line functions, stuff like that. And I just can’t be responsive to your questions in a forum like this!
I’m sorry your experience has been so unpleasant! EndeavourOS is a great distro (it’s what I use), but it certainly isn’t beginner-friendly. On the plus side, if you get comfortable with it, you’ll understand computers better than ever before!
OK, couple things here. First… change how you view installing and uninstalling. 99% of what you want/need can be installed with pacman, which is like the windows store. If you are not keen on the cli/terminal use, open up a command prompt and run the command ‘sudo pacman -S octopi’ to install it. You can then launch the octopi app and install or uninstall apps from there. I recommend sticking to this for now until you get more comfortable with linux and the cli. You’ll want to use octopi to download and install yay, which is another package manager like pacman but has more software available. Once you do that, enable AUR (arch user repository) in octopi so it knows to use yay as well as pacman when searching for software.
The calendar app you mentioned - you downloaded a ‘tarball’, which is essentially a compressed file for the app. If you searched for Orage and followed links to their source page, there’s directions on how to install the tarball. This is common for linux apps. That being said, Orage is in the AUR so after getting g octopi setup you can install it from there.
The remove command you used is not for removing files, it’s for uninstalling packages. So to uninstall noto fonts you would use the command ‘sudo pacman -Rdd noto-fonts’, however depending on the desktop 3nvironment (de) you selected it could cause issues. I don’t really recommend removing the font since it’s a dependency for KDE, XFCE, and maybe some others. Instead, find a replacement font you like and set it in the settings.
Regarding the dpi issue, does the problem persist after logout/login or a reboot? Sometimes dpi setting require that, again depending on the desktop environment.
also, you don’t manually move stuff around in /usr. if you want to manually install something or create directories, it goes in /home/<username>/<whatever folder>. Here’s a chatGPT response for what the base directories are typically for:
In Linux, the file system is organized into a series of directories, each with a specific purpose. Here’s a summary of the main Linux base directories and their typical purposes:
-
/ (Root Directory)
The top-level directory of the file system, from which all other directories branch. It contains all other files and directories.
-
/bin (Binary Executables)
Stores essential user command binaries that are needed for the system to operate in single-user mode (e.g., basic commands like ls, cat, cp, etc.).
-
/boot (Boot Files)
Contains files necessary for the boot process, including the Linux kernel (vmlinuz), initial RAM disk (initrd or initramfs), and bootloader configuration files (e.g., GRUB).
-
/dev (Device Files)
Holds device files that represent hardware devices (e.g., hard drives, printers, terminals) as files, allowing for device I/O. These files provide a way for programs to communicate with hardware.
-
/etc (Configuration Files)
Contains all system-wide configuration files and shell scripts used to start or manage programs and services (e.g., /etc/passwd for user accounts, /etc/fstab for mounting filesystems).
-
/home (User Home Directories)
Each user’s personal directory where they can store their files, configuration settings, and data. For example, /home/john would be John’s home directory.
-
/lib (Shared Libraries)
Contains shared libraries (similar to DLLs on Windows) needed by binaries in /bin and /sbin. These libraries contain code shared by multiple programs.
-
/media (Removable Media Mount Points)
Used to mount removable media like USB drives, CDs, or DVDs. For example, /media/usb may contain the files of a connected USB drive.
-
/mnt (Temporary Mount Points)
Typically used for temporarily mounting filesystems, such as external drives, or networked filesystems, often manually by the system administrator.
-
/opt (Optional Software)
Contains additional software packages or optional applications that are not included in the default installation. This is often used for proprietary or large third-party software.
-
/proc (Process Information)
A virtual filesystem providing access to kernel and process information. It contains directories for each running process (e.g., /proc/1234 for process ID 1234) and information about system resources.
-
/root (Root User Home Directory)
The home directory of the root (superuser) account, separate from /home to emphasize the special nature of the root account.
-
/run (Runtime Data)
Contains runtime information (e.g., process IDs, sockets, and other volatile data) that is typically cleared at boot. It stores data used for system management and communication between running services.
-
/sbin (System Binaries)
Holds system administration binaries that are essential for booting, restoring, and recovering the system (e.g., ifconfig, iptables, fsck). These commands usually require superuser (root) privileges to execute.
-
/srv (Service Data)
Contains data served by the system’s services, such as web or FTP server data. It is intended to store the actual content being served by services running on the system.
-
/tmp (Temporary Files)
A directory for temporary files that are created and used by programs and processes. Files here are usually cleared upon reboot, making it a transient storage space.
-
/usr (User System Resources)
One of the largest directories, it holds the majority of user utilities and applications. It contains subdirectories like: /usr/bin: non-essential user commands. /usr/sbin: non-essential system binaries. /usr/lib: libraries for programs in /usr/bin and /usr/sbin. /usr/local: for software installed locally (i.e., by the system administrator), separate from the distribution-provided software.
-
/var (Variable Data)
Stores variable (changing) files such as logs, mail, and databases. Some important subdirectories include: /var/log: log files. /var/tmp: temporary files that persist between reboots. /var/www: web server files.
These directories organize the operating system, making it easier for users and programs to find what they need.
All good info, but OP should not be running Endeavour if they are trying to mess around in /usr/ to install java - they’re going to bork their install in a matter of minutes without constant supervision. Mint, PopOS, Fedora Kinoite, Elementary… whatever, but not an Arch based distro.
-
Continuing slickJujitsu’s line, the reason they want you to install yay is because it’s an “AUR helper” meaning it can pull programs from the Arch User Repository. Arch (and arch based distros like endeavor) have their own repositories with curated programs chosen by the distro maintainers which pacman will pull from, but the AUR has every program you could imagine.
yay
andoctopi
will install from both places so once installed you shouldn’t have to worry about the distinction again. A more “beginner friendly” distro would have them preinstalled for you.Software management does seem to be the biggest hurdle for new users though so you aren’t alone. Unless you’re trying to install some incredibly niche software, downloading a file in your browser is almost certainly going to be 100x harder than using the package manager. The package manager will keep track of all your programs and keep them updated for you, while self-installed programs it doesn’t know about it can’t keep updated for you.
Well that’s annoying.
Also don’t get used to using su like that, it puts you in an interactive root session. Sudo does the same but only for the command you are running. Safer to uze sudo on aper command basis to prevent accidentally making bad changes to your system. Sometimes su is needed but not usually.
Do 'sudo pacman -S --needed git base-devel yay ', let that run, then 'yay -S octopi ’
That will install the yay package manager, then uses yay to install stall octopi. Just co firmed on an Endeavor OS vm.
I tried to move the VLC media player window button to another spot on the panel at the bottom of my screen, resulting in the window button vanishing completely. The application kept running, though. I tried to access the application through Ctrl+Alt+Del, except that that does not bring up the task manager here. I deleted some crap on the panel hoping that that would fix something, but I only made things worse. I restarted my computer and it fixed absolutely nothing. Now my panel looks like this:
Oh my G-d, this is bad, bad, bad design. All because I wanted to move a window button to another spot. Please tell me how to reset this to default. This is intolerable.
ETA: my desktop is completely fucked up now… I’m getting Fedora.
XFCE is generally a pretty low spec requirement and hence less feature heavy desktop environment its good but i wouldnt use it on a machine with more than 4GB of RAM. I’ve never used endeavor OS tho. If you are looking for a windows like experience but without all the bullshit what id do is get Kubuntu, or Linux Mint Cinnamon. I find Cinnamon is a really good entry level desktop environment for people coming from windows (my elderly grandmother uses it and doesnt even know) so thats a good starter one for you probably, but KDE plasma is what Kubuntu has and itll be like the more feature rich customization heavy but still windowsy layout DE. Linux mint will also come with an app store you can use to install programs.
You can also try out just installing the DEs in your current OS but since your so new i hesitate to recommend that. I do think youll be much happier with something other than XFCE though.
Seconding Mint, or a beginner distro that supports KDE Plasma for a more feature complete experience
Wouldn’t bother with Mint, the ui is OK but I had package conflicts arise when I was running it in the past. Ubuntu or Debian if your hardware is old enough are both better choices.
Hey I have extensive experience and I think you need a basic tutorial are you willing to message me on matrix, discord, or telegram? I can get you up to speed, you did choose a terminal centric distro and I highly recommend as a beginner a switch to fedora kinoite, if you insist on staying on endeavor please send me a pm and I’ll troubleshoot anything with you all you want, I’m very free
i promise it’s not as confusing as this first experience makes it seem
xfce is kind of the linux equivalent of windows xp, it’s super not modern… on purpose! it’s designed to maximize performance
Hey, I am also recently learning to use Linux. I am definitely not a tech person at all. I went with Mint, as it’s one of the typical generic recommendations for beginners. So far the learning process has been manageable. I can see that in the long term, I will probably eventually switch to something other than Mint, but I would say it was a good choice for me to learn on and in the short term I am going to keep learning on it as I’ve gotten it to satisfyingly do all of the basic stuff I needed. When I change to something else it will be because I want to go beyond that and start doing things in new (to me) ways.
I ended up asking a lot of questions to chat bots which actually helped me out a lot. I found that when I tried to search up issues or questions I was having (which was already hard, because I often didn’t really even know what I am trying to ask or what words to use to ask it), a lot of the time I would find someone posting about the same issue, but a lot of the replies were just people telling them to just google it or calling OP lazy for asking. There’s definitely many patient and helpful people too (like many of the people replying in this thread), but initially I still struggled a lot with comprehension of their help because I was so unfamiliar with even very basic computing terms. A lot of the material I find that is intended for beginners would be a bit demoralizing because, for my (quite) low level of tech knowledge, it felt a bit like this:
This is where chat bots were pretty helpful for making things more comprehensible. In addition to asking chat bots my basic questions, I also did a short command line tutorial (in my case, this one: https://ubuntu.com/tutorials/command-line-for-beginners) and I started watching a YouTube channel called Veronica Explains. I can see I have a lot of stuff I still need to learn but I feel I am past the first hurdles now. It was difficult and kind of intimidating and frustrating at first and I still run into frustrations but now I am more and more excited about what I’ll eventually be able to do as I learn more.
waow (basedbasedbased)
I can’t do it comrade, at least not straight away. I’ve moved my server and my laptop over to Linux, but my main desktop PC is still running Windows because I still believe my brain is too smooth to daily drive Linux.
What are you frightened of?
OP’s experience is a bit of a microcosm of it. I have a lot of fun learning my way around Linux, but feel a lot of pressure when I need to do something specific that I’m having trouble with. So I’m having lots of fun running it on my server or my steam deck, stuff I consider a hobby, but a bit uncertain about moving to Linux for a daily driver, where I might have to get work done.
I am running Mint, which I’m understanding is a lot more user-friendly than OP’s distro. And to be honest, 90% of the user experience is the same as on Windows with Mint. I just feel like I need to understand more about Linux, it’s file system, and all of its very technical quirks before my main PC makes the switch.
I remember that feeling. And using a beginner friendly distro like Mint is a mixed bag, because while the simple stuff is easier, more complex things can be a bit more difficult than they might be on a system designed to be flexible, like Endeavour or Arch; it’s a compromise either way.
You nay have already done some of these, but the things that gave me the confidence to switch were:
- Learning how to use the terminal a bit, specifically, basic commands like
ls
,cd
,pwd
,cp
,mv
,cat
,touch
, andgrep
- even if you don’t need to use the terminal on whatever OS you’re on, this will give you confidence. - Reading the docs on my package manager and learning how to use it properly so that I wasn’t following ancient tutorials on the internet blindly and breaking things.
- Deciding to only change things about my OS when necessary or when the change I’m making is officially supported by the team behind the OS (like moving to dracut on Endeavour).
- Learning that “everything is a file.” Poking around
~/.config
and realizing that system config is all text files helped me feel empowered to fix issues that may arise. - Setting up failsafes: BTRFS system snapshots with Timeshift on Endeavour, configured to show snapshots on the GRUB screen so that I can revert to a known working system at boot if I break something. I also cloned my Windows install and turned it into a VM so that I could access it at any time if I needed to.
- Embracing FLOSS alternatives. Instead of trying to fit a square peg into a round hole and spending ages trying to get some specific piece of proprietary software working, realising that FLOSS projects are often designed on and for Linux and usually work much better there than they do on Windows or MacOS. I do design work professionally, so I figured out how to move my entire print design workflow to Scribus, Inkscape, and Krita, and although it took some learning, I’m much happier for it. Stick to software available in the package repos of your OS, or available as a Flatpak or AppImage, and find alternatives for everything else if at all possible. There is a near endless supply of high quality software for Linux and it’s a real shame to move to the OS and not take advantage of that.
At the end of the day I was still fairly petrified, but I found the experience much smoother than I had dared to hope. I think the deciding factor was that I used to really enjoy my computer way back in the Windows XP days through to Windows 7, but that joy had long since gone until I found it again with Linux. When using my computer began to feel like drudgery, I didn’t really have a choice but to switch.
Also, a hugely overlooked part of choosing a distro is the community around it. If your distro has good people filling its forums, you’ll never need to worry about getting something working when you need to.
- Learning how to use the terminal a bit, specifically, basic commands like