• 0 Posts
  • 99 Comments
Joined 1 year ago
cake
Cake day: June 17th, 2023

help-circle

  • Except desktop environments - they are far from a simple loosely collection of simple stuff. They coordinate your whole desktop experience. Apps need to talk to them a lot and often in ways specific to a single DE. Theming applications is done differently for every toolkit there is, startup applications (before systemd) is configured differently, global shortcuts are configured differently by each one… If anything it is something you interact with far more than systemd and has far more inconsistencies between each one. Yet few people complain about this as much as they complain about systemd.

    Systemd is a giant mess of weirdly interdependent things that used to be simple things.

    They used to be simple things back when hardware and the way we use computers were much simpler. Nowadays hardware and computers are much more dynamic and hotplugable and handle a lot more state that needs to persist and be kept track of. https://www.youtube.com/watch?v=o_AIw9bGogo is a great talk on the subject and talks about why systemd does what it does.


  • What standards? The old init systems were a loose collection of shell scripts that were wildly different on every distro. Other tools like sudo also broke the established standards of the time, before it you had to login as root with the root password.

    Even gnome and KDE have their own themeing standards as well as other ways of doing things. Even network manager is its own standard not following things that came before it. Then there are flatpack, snaps and app images. Not to mention deb vs rpm vs pacman vs nix package formats. Loads of things in Linux userland have broken or evolved the standards of oldern times.


  • nous@programming.devtoLinux@lemmy.mlSystemd Looks to Replace sudo with run0
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    1
    ·
    2 months ago

    Systemd does a lot of things that could probably be separate projects,

    I dont get the hate for this - Linux is full of projects that do the same thing: coreutils, busybox, kde, gnome, different office suites, even the kernel itself. It is very common for different related projects to be maintained together under the same project/branding with various different levels of integration between them. But people really seem to only hate on systemd for this…


  • Not technically. unetbootin and some similar tools like rufus take the USB, partition it, and copy the contents of the disk to it after manually setting up a bootloader on it. This is not required for most Linux ISOs though where you can just cp or dd the image directly to the USB as they are already setup with all that on the image. But other ISOs, like I believe Windows ones have a filesystem on them that is not vfat so cannot be directly copied. Although these days for windows you just need to format the USB as vfat and copy the contents of the windows ISO (aka the files inside it, not the iso filesystem) to the filesystem.

    I tend to find unetbootin and rufus break more ISOs then they actually help with though. Personally I find ventoy is the better approach overall, just copy the ISO as a file to the USB filesystem (and you can copy multiple ones as well).


  • subvolumes are integral to btrfs. You cannot have a layer like luks between them. You can encrypt the whole partition with luks before btrfs or you can encrypt specific directories after btrfs with something like encfs or truecrypt, though doing so loses some of the benefits of btrfs as it can no longer see your individual files.

    If you wanted just /home encrypted with luks it would need to be a separate partition (which you could then have btrfs inside with subvolumns on that). Though IMO that gets a bit complicated - I would just opt for encrypting everything (except boot) on the root partition and have one btrfs fs on that partition with as many subvolumes inside that as you like.


  • The Linux directory system is a single tree from the root /. You can mount any filesystem to any directory inside it to extend it and have all writes to that location be handled by that FS. This is all irrespective of what filesystem the is present at that location in the tree. It does not matter if it is BTRFS, ext4 or anything else mounting a filesystem into the directory structure is handled by the kernel separately from the FS implementation. So, yes, you can mount any partition that contains a filesystem to /home/user no matter what you have done with / or even /home.

    But, any writes to that location will be handled by the filesystem driver for that partition. So any subvolumes or anything else the main filesystem/partition has wont be available inside that directory. You can have a BTRFS filesystem mounted there from a separate partition if you want. Though a big benefit of BTRFS is the ability to use subvolumes instead of full partitions so you are not segregating the space on the disk (ie, any subvolume can use what space it requires and you wont have one running out of space because you didn’t make it large enough). So if you are going for BTRFS subvolumes I would just have one main partition and use subvolumes to split up the space if you wish. Though really the only benefit to that is you can snapshot them separately and I think you can set different quotas and settings on each one.


  • Ubuntu is a fork of unstable Debian packages. You don’t want unstable on your server!

    Unstable does not mean crashes all the time. What makes them unstable on Debian is they can change and break API completely. But guess what, Ubuntu freezes the versions for their release and maintains their own security patches, completely mitigating that issue.

    There are other reasons you might not want to use Ubuntu on a server but package version stability is not one of them.



  • A system us bloated when I feel it is bloated. It is highly subjective and there is no real line to cross. It is just more of a sliding scale, at one end there is no code on your system that you never use and at the other there is nothing on it that you ever want to use.

    The former can likely on be reached on small microcontrollers where you have written everything exactly how you want it, and you would never even consider using the latter.

    Realistically every system has things younever use, even the kernel has modules you will never load. And every non tiny program has features you never use. All of that is technically bloat but each instance I don’t think makes your system or even an application feel bloated.

    So really the question is when does the bloat bother you or get in your way. If you are trying to install an OS on a tiny embedded device where space is a premiumthenn you are going to draw that line at a different point to on the latest desktop with multi terabytes of storages and oodles of ram.

    Anyone that claims there system has no bloat is technically lying to themselves. But if it makes them happy who cares? If your system has every package installed and it does not bother you at all thenitt does not matter at all.



  • The core is immutable, but it comes with flatpak which writes to a writeable location so you can install and update applications independently of OS updates without having them wiped after an upgrade. You can also install and use tools like distrobox to give you container environments that you can install and change as much as you like as well.


  • It seems to be geared toward people who want to constantly maintain there system

    That is where your assumptions are wrong. It is for people that know how and want control over their setup. But after the initial setup maintenance is no worst that any other distro - simpler even in the longer term. Just update your packages and very occasionally manually update a config somewhere or run an extra command before hand (I honestly cannot remember the last time I even needed to do that much…). Far easier than needing to reinstall or fix a whole bunch of broken things after a major system upgrade that happens every few years on other distros.

    People that like to tinker and break their system can do that on any distro. That does not mean it is high maintenance, quite the opposite in fact as it is easier to fix as Arch is generally easier to fix when you do break something (so does attract people that do like to tinker). But leave it alone and it wont just randomly break every week like so many people seem to think it does.


  • You dont even need a separate partition, just delete the non-home directories and reinstall. pacstrap might even do that for you 🤔 it has been a while since i last needed to reinstall. And most of the time you dont even need a full reinstall, Arch is trivial to fix most things from a live cd by partially following the install process - most often get a chroot and start reinstalling select packages/configs in some of the worst case scenarios.


  • Unfortunately, I’ve never been able to really daily-drive Linux (and this Arch experiment is no exception). Don’t get me wrong: I love linux and the idea of having independent open-source and infinitely customizable OS. But unfortunately I professionally rely on some of the apps, that have no viable alternatives for Linux (PowerPoint, Photoshop, Illustrator, Proton Drive).

    There are viable alternatives for Linux as you mentioned. But non are going to just be drop-in replacements for those tools. There are a lot of graphics design tools out there now that are just as powerful as Photoshop for what most people need. But the big issue is they are different in just enough ways that it can be a challenge to switch to them once you are used to the way Photoshop and the other windows only tools work. This is just something you are going to have to get over if you want to try Linux longer term.

    But it can be far too much to switch all at once and with a completely new OS as well. So don’t. Instead start using these tools and alternative on your Windows install now. Start trying out different ones (there are a lot, both open and closed source), and giving each a decent attempt to use. Start out with smaller side projects so you don’t interrupt your main workflows and slowly over time start learning and getting used to the different way these other tools work. If you make some effort to do that while on Windows then the next time you try out Linux they wont seem as bad. But if you keep sticking with Windows only software on Windows you are going to find the same issue every time you try to switch.



  • Oh, just invest in adobe and get it developed for Linux - easy, why didnt anyone think of this before. And better yet, if they do invest they could make it a PopOS exclusive!!?!?!! \s

    It wont work because Adobe does not care and there is not enough market share in Linux for them to bother with it. No amount of money that PopOS has will be able to convince Adobe to develop it for Linux and there is no way in hell Adobe will give them access to their source to develop it for Linux. That whole argument is just a non-starter.



  • Applications needs some coordination between each other in order to act like you would expect - things like one window at a time having focus and thus getting all keyboard and mouse inputs. As well as things like positioning on the screen and which screen to render to, the clipboard, and various others things.

    X is a server and set of protocols that applications can implement to allow all this behaviour. X11 is the 11th version of the server and protocols. But X was also first created in 1984, and X11 since around 1987. Small changes have been made to X11 over the years but the last was in 2012.

    Which makes it a very old protocol - and one which is showing its age. Advances in hardware since then and the way we use devices have left a lot to be desired in the protocol and while it has adapted a bit to keep up with modern tech it has not done so in the best of ways. I also believe its codebase is quite complex and hard to work with so changes are hard to do.

    Thus is has quite a lot of limitations that modern systems are rubbing up against - for instance it does not really support multi cursors or input that is not a mouse and keyboard. So things like touch screens or pen/tablets tend to emulate a mouse and thus affect the only pointer X has. It is also not great at touchpads and things like touch pad gestures - while they do work, they are often clunky or not as flexible as some applications need.

    It is also very insecure and has no real security measures in place - any GUI application has far more access to the system and input then it really requires. For instance; any application can screen grab the screen at any point in time - not something you really want when you have a banking web page open.

    Wayland is basically a new set of protocols that takes more modern hardware and security practices in mind. It does the same fundamental job as X11, but without the same limitations X11 has and to fix a lot of the security issues with X.

    One big difference with X though is that Wayland is just a protocol, and not a protocol and server like X. Instead it shifts the responsibilities of the X server into the window manager/compositor (which used to manage window placement and window borders as well as global effects such as any animations or transparency). It also has better controls over things like screen grabs so not every application can just grab a screen shot at once or register global shortcut keys or various things like that. Which for a while was a problem as screen sharing applications or even screenshot tools did not work - but over time these limitations have been added back in more secure ways than how X11 did them.


  • Have you tried updating and rebooting your system? I have had this happen a few times and almost always that is what fixes it for me (more so the rebooting but it is generally good to have your system up to date). Other times it is typically something missing on your host system (like properly installed drivers), though if the game was running before then this is less likely to be the issue and a reboot is typically enough - so start with that.