this post was submitted on 08 May 2024
265 points (88.6% liked)

Linux

48287 readers
627 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Yo linux team, i would love some advice.

I’m pretty mad at windows, 11 keeps getting worse and worse and I pretty done with Bill’s fetishes about bing and ai. Who knows where’s cortana right now…

Anyway, I heard about this new company called Linux and I’m open to try new stuff. I’m a simple guy and just need some basic stuff:

  • graphic stuff: affinity, canva, corel, gimp etc.. (no adobe anymore, please don’t ask.)
  • 3d modelling and render: blender, rhino, cinema, keyshot
  • video editing: davinci
  • some little coding in Dart/flutter (i use VS code, I don’t know if this is good or bad)
  • a working file explorer (can’t believe i have to say this)
  • NO FUCKIN ADS
  • NO MF STUPID ASS DISGUSTING ADVERTISING

The tricky part is the laptop, a zenbook duo pro (i9-10/rtx2060), with double touch screens.

I tried ubuntu several years ago but since it wasn’t ready for my use i never went into different distros and their differences. Now unfortunately, ready or not, I need to switch.

Edit: the linux-company thing is just for triggering people, sorry I didn’t know it was this effective.

you are viewing a single comment's thread
view the rest of the comments
[–] Shareni@programming.dev 2 points 6 months ago* (last edited 6 months ago) (2 children)

part 1/2

If I want to have glassy themed desktop for example on Ubuntu I need to understand kvantum, which folder need which permissions, download themes from a website, kvantum from the terminal and install them, while on arch I type yay glassy-themeXY

huh?

But yeah, the large repo + AUR do make some things easier. Although the additional package managers are quite close, while allowing for a more dependable base system.

When installing teamspeak for Ubuntu I need to understand how to make my own desktop entries, mark files as executable, how to install .deb packages etc, while on arch I type yay teamspeak, done.

flatpak search teamspeak -> flatpak install com.teamspeak.TeamSpeak -> done (I'll get to flatpak later)

Sure aur is not the most secure source, but better (and easier) then blindly copy pasting commands from some forum or manually downloading dubious python scripts from github.

Sure, and that's why you can use something like flatpak in any scenario. I prefer nix, but that's still not user friendly.

For the customization at the time Ubuntu only had gnome,

They have flavours for each DE, same as Fedora has spins. It's an easy way to ensure default apps go with the correct DE.

I don’t know what you are talking about with everything in the same place regardless of distro

Most packages follow FHS and XDG, but there are still plenty of them that just drop it in ~ and call it a day.

The FHS ones (/etc, /usr/share, /usr/local/etc) are where you're supposed to find default configs. But, /usr should be read-only and only ever copied from, while /etc is for system wide configs.

The XDG configs are tied to your user, and only located at your ~. Usually in ~/.config but there are some cases where you might want to use ~/.local/

On Linux, the steam installation via snap has another file structure than via apt, and another for flatpack and another for appimage and another for the aur version which is different from the selfcompiled version.

Yes, but that's got nothing to do with the distro.

Apt and pacman follow the FHS, AUR just provides instructions to pacman.

Appimages contain everything they need to run in a single file that you execute.

Flatpak, snap, nix, guix, distrobox, etc. don't save in the exact same directories because it's much safer that way, but they still roughly follow FHS. For example nix symlinks everything into ~/.nix-profile and provides you with the same structure as apt (/etc, etc.)

When you don’t know about this stuff and don’t have the time to watch tutorials or read man pages when wanting to do anything, the difference between this and “yay teamspeak” was like day and night, a matter of usable vs. Unusable.

GUI stores like discovery allow you to install and update packages from different stores at the same time. You can search for teamspeak and chose to install the deb or flatpak. Can't get more user friendly than that.

In win you have all your settings in the settings app (and the values stored in registry) EVERY file of the program you would need to accsess is in the program folder (or roaming).

No, you have the available windows settings in the settings apps. KDE approaches it the same way, and is far superior IMO. The difference is that if you want to change something that's not covered by the settings apps, windows forces you to blindly copy-paste regedit commands, while linux has a text file.

For packages there is no FHS, they might or might not include default configs if they support text configs in the first place (a BIG part of the UNIX philosophy), or they might generate them when needed. It might be in one of the program files, in multiple locations in my documents and app data, or you might need to once again blindly copy-paste regedit commands. Hell, a windows program might use different 5 location for different configs.

The “why would a beginner need those” question always strikes me as odd, because it always sounds love me people wanna deny use cases. I tried changing my local one time, ...

It's more because Linux has come a long way. For example I can just use MX Date & Time and use a gui to adjust my local and hardware time without ever touching the terminal.

[–] Shareni@programming.dev 2 points 6 months ago (1 children)

part 2/2

“You can do the same things with the aur as without” is the dumbest shit I’ve ever heard (sry) Its like saying you can do the same thing with a guitar as with a CD.

Nah, that's coming right up:

For flatpack: I avoid it, as people who are far more deep into the topic than me said its basically snap with extra steps, bloated, insecure, against the Linux philosophy of interlocking FOSS software blah blah. Didn’t understand most of it but followed the advice.

  1. Argument from authority is a logical fallacy, and I don't think basing your entire argument on willful ignorance requires further comment

  2. People have issues with snap due to following reasons, and none of them apply to flatpak:

  • snap is forced on ubuntu users and apt randomly installs snaps instead of deb
  • snap slows down boot times because it mounts virtual FS'
  • snap store and packages are closed source, and while snap is open source, the snap store is hardcoded
  1. Additional package managers are bloated in the same way cars are bloated for having seatbelts and airbags. The only way to reliably prevent dependency mismatches is to have a separate set of dependencies.

For example: you want to install the newest obs, but it requires a higher version glibc than your KDE. Installing the newer glibc in the exact same location as your system could possibly break your system. Pacman simply errors out, on the other hand flatpak provides the correct version to each of the packages it installs. And that's possible because:

  1. Everything is isolated, and generally not only more secure, if the package is published by the developer, but could be even further improved:
  • each package gets its own private sandbox with a filesystem, libraries, dependencies, runtimes, etc.

  • there are built in systems to further isolate packages from each other and your system

  • you can use tools like flatseal to control permissions on top of whatever the base system uses (AppArmor/SELinux).

  • no sudo privileges required

Pacman can only use AppArmor/SELinux, and AUR is the riskier version of community flatpaks.

  1. The thing is, you can't get better security and reliability without breaking FHS a bit. You also need to consider that they still try to follow it within the additional restrictions imposed on them. You get the same structure, but in respectively consistent places. It's a pretty good trade-off in my regard.

For btrfs: OK, give me the Debian bookworm installer where you can select ANY enrcrypted format that is not luks–>lvm–>ext.

The default one, and therefore essentially everything downstream: guided partition -> change from ext4 to btrfs and set to mount to / -> run the encryption wizard. Do read the maintenance section though, there are reasons why stable distros don't default to it. Besides that, rsync does the job more than well enough. You can use the timeshift gui to have it periodically take snapshots, or easily automate it in different ways.

Honestly, monthly snapshots are going to be just fine. That's the whole benefit of this kind of a setup. Your base system almost never changes, while everything you need to be up to date is completely separate. Half of my packages are nix unstable and just as bleeding edge as on arch, but my system is not at real risk of failing to boot due to an update because it's still Debian, and quite close to vanilla at that. You don't need btrfs and snapshots on every update because both flatpak and nix support rollbacks, and that's the only scenario where updates could be risky.

There are downsides, and possible complications during setup though, but I'd say the trade is more than worth it, especially if you depend on your device and can't have it break down because you ran a system update or installed a package without updating the whole system. Working abroad with bad internet really drew it home for me, and caused me to finally drop arch.

[–] Jean_le_Flambeur@discuss.tchncs.de 1 points 6 months ago* (last edited 6 months ago)

I think me admitting not understanding something and following advice of trusted humans is a very different thing than will full ignorance and you framing it as such is telling of the ivory tower you sit in.

Maybe what you tell me about flatpac being better and more secure is right, but trusting you, a stranger from the internet is certainly not better than trusting friends studying in the field. Is flatpack the more secure version of the aur though? The aur ist fully foss, so public scrutiny takes places. In my mind, flatpac wasn't, but maybe I'm wrong here.

As for point 5.: again: I don't argue that the way its done in Linux is bad or without reason. I just state that it is more difficult for the end user.

For btrfs: As for my understanding: the graphical installer only supports one option for encrypted file system: lvm-ext4. When you select encryption it is not possible to select btrfs anymore (or any other). As soon as you tick "encrypt system" it defaults to luks-->lvm-->ext4 and doesn't allow you to change it Maybe because it only support encrypted lvm and subvolumes won't work with btrfs (+to quote your own link: "The DebianInstaller can format and install to single-disk Btrfs volumes, but does not yet support multi-disk btrfs volumes nor subvolume "

I don't understand the part about "rsync", but im pretty sure its not what I had in mind when talking about first time user friendly options.

[–] Jean_le_Flambeur@discuss.tchncs.de 1 points 6 months ago* (last edited 6 months ago)

Kvantum was choosen arbitrarily to make it tangeble what I mean, I don't know what specific customization option is was missing I. Ubuntu gnome 5 years ago exactly.

I guess you misunderstood my point, Its not that the specific team speak package is not in the apt repo (but available via flatpack) its again only chosen for illustration. My point is that in my Ubuntu experience I came acroos many different packages only available in certain stores/repos/as sourcecode/flatpack/snap/appimage/wine/bottles/lutris etc. Pp. Which package is available in which formats is secondary, my point is that there are a lot (especially coming from win where there is 1 [plus the win-store]).

Those behave very differently under the hood and in the beginning it feels like for every second program you need to learn about a new format/store/manager/package, which is exhausting quickly, because while appimages are quite close to .exes and easy to understand, flatpacks, snap, apt wine etc. Are not. Nearly All of those are available in one place if u use arch: the aur. It really doesn't matter if the aur package really only also installs and configures bottles for you, the fact that you need one command and one command only to get all your stuff (yay xyz) instead of 5 [to be honest maybe less or more, I still haven't found how to configure bottles, wine, lutris etc. Myself for things like league, on Debian I just download lutris, the league install script fails and I have no idea what to do and just play other games, and even if I would know how to do it, there's a chance it would break every league update and I would need to get Into it again, while on arch I type yay league-lutris or smithing like that, and it works ]

I didn't know kubuntu was part of Ubuntu, I thought its more or less another Debian derivative made by different people... or is there literally an Ubuntu with kde (which is not kubuntu) I have never heard of?

I think your description of the file structure proves my point of it being hard to grasp for a beginner and some programs just handling it differently because they can. And you didn't even touch on program files, custom temp directories or trying to install a programm to a different location (like an HDD instead of an the main ssd etc.) Stuff like symlinks doesn't make stuff easier but harder for a beginner in my opinion.

With your descriptions of the different stores/package managers/packs/etc. I again think it proves my point of being difficult, especially when just coming from win where you just double click on the .exe Not needing to know any of this and just typing yay xyz is a huge bonus on terms of ease of use and low starting threshold.

For discovery: it frequently crashes on my system so I tend to use apt, but sure with flatpack you could get team speak there, but again for league you would need lutris and understand wine settings and so on. Its not about the specific package, its about needing to understand many different installation methods and background systems, and even when understanding most, its not enough to get all programs.

I agree with you that the config file approach might be more customizable friendly for experts than the registry, but for a beginner? On win I never ever in over 10 years needed a setting which wasn't in the settings (at least before the hyper enshityfication that is win 11) On Debian you can't even change the fucking input method without using commands. (There is an option in the kde settings but it just displays "cannot connect to fcitx dbus" which is like Chinese for me and would require an evening of tinkering and reading docs or more to fix. I also ran into stuff I could not find in the settings (in like only some months of usage) and needed commands for, but can't remember what it was. But IF KDE settings would cover everything and work reliable, it would be as good (and better) than windows. This just isn't the case.

Sure the win programs may don't have configs for everything, but every intended function works. In 97℅ the time it is just available from the gui of the program, and even If someone tells me to run the forge installer and select the Minecraft mods folder, its at least the same on every win system. With every second guide for Linux the (official) website tells me "locate foo under /usr/foo/bar and append allow online = true" and the file just doesn't exist in this location for me. For an intend function of the program I never ever in 10 year of windows needet to open the console. Its always just in the GUI which makes the underlying system and its complexity irrelevant for the casual user. With Linux half of the stuff I can only do from terminal so I need to understand the folder system, config files, fhs etc.

Its not that fhs and having multiple locations which get used more or less consequently in more or less most of the cases is a bad thing in general. I am sure a lot of smart people have had very smart thoughts about this, but from a user perspective learning about all off it is way harder than not needing to know about it at all.

For the datetime thing, I don't wanna make it look bad or be ignorant and say there is no reason for it to be complicated. Of course you can't have the same expectations for a Foss project as for a commercial project, I am just stating, that there is stuff like this and that it is way harder from a user perspective so there are no wrong expectations set. That the local stuff from KDE settings won't work (at least for me) because of some fcitx dbus I already told you, but also other stuff like trying to change the username won't work as expected. I did it without knowing you should never change the username on Linux... It didn't tell me that the option is experimental or won't work for some stuff so I expected it to just enter new name and that's it, like on win or Mac, but it wasn't and stuff broke all over the place (desktop entries, file locations, automatically generated vs code scripts, default locations, some programs entierly,) and I still haven't got my taskbar panel to acknowledge the new path, it was always trying to open from the old path, even after regenerating the shortcuts and uninstalling and reinstalling panel. Maybe if I would understand fhs better I could know the place where some cofig lies where I need to change the path in line 253 and it would be clear to me that this isn't regenerated when reinstalling the programming, but as a casual user, I (didnt know (and still dont know) how i could have fixed it and just gave up at some point and reinstalled Debian fro scratch with The correct username.

Sure, I theory thing could be a lot better, but for someone without an degree in IT stuff like this is far from trivial, especially when you just wanted to correct the typo In your username before starting to work and instead spending one day trying to fix changing the name and two days reinstalling and reconfigurating Debian after giving up. Sure, a texfield in the windows settings might not give you the same freedom, but it does what you expect and works (again, at least before win 11).