she/they
If your privileged user doesn't have a password, in some cases this could lead to any program being able to elevate their privilege quietly, unlike UAC.
I think this is the most important part. There really isn't any protection against random processes trying to do some version of
exec sudo $0except for the fact that it requires a password.The FSF says this is the case but the actual legal situation is less clear, especially in the EU. Linking does not necessarily constitute a derivative work. Even decompilation of a (proprietary) library in order to link to it might be acceptable depending on the circumstance.
This isn't something that can be fixed with a license, it's a direct result of EU copyright law. Historically companies have tended to err on the side of the FSF interpretation, but it is on somewhat shaky grounds.
Sure it's a problem when that happens. It's not the only problem, and honestly in the case of coreutils it's not really the most relevant one.
Do you think it's likely that corporations will take over UNIX-likes with proprietary coreutils extensions forked from uutils? Because that's the one thing that is legal to do with an MIT/BSD licensed coreutils but not with GPL licensed ones.
GPL has been battle tested in court
Well... parts of it have been. Others have not. Notably the FSFs view on whether or not linking to a GPL-licensed library constitutes a derivative work (and triggers the GPLs virality) is not universally shared by legal scholars. In the EU in particular linking does not necessarily create derivative works, despite what the FSF says. This has not been tested in court.
Some other parts like the v3 anti-tivoization hasn't gone to court either, but that has lesser ramifications (assuming you're not TiVo).
THAT'S how we have corporations profiting from GPL. Not because GPL allows anyone to use it.
What distinction are you trying to draw here exactly? They can do it precisely because the GPL (v2) allows it. The GPLv3 has some extra restrictions but doesn't do anything about closed source drivers (beyond the linking thing) or the Google Play Services type of proprietary extensions.
Funny you say that because OS X shipped (and probably still ships) plenty of copyleft licensed software such as Bash. The Linux kernel is used in Android and ChromeOS.
If you want to stop corporations from profiting off your work, putting a GPL on it isn't gonna do it. In fact no free software license will do it, because by definition they allow anyone to use and ship your software.
All of the 5 people who use (non-ESR) Firefox on their 2002 Pentium 4s will certainly be very unhappy about this.
I have this in my config:
fish
function lastcmd echo $history[1] end abbr --add "!!" --position anywhere --function lastcmdI believe I originally got this implementation from the GitHub issues. The key is that abbreviations can also call functions, which can in turn index into the
historylist. We also need to specify that we want the expansion even if we're in an argument to another command, such as insudo !!.This is by no means complete, but the features that I value would be:
<Tab>cycles though completions as it should instead of duplicating the prompt.- Completions also show help text (if there's a provider for one). For example on
git <Tab>it shows a short message describing what the command does. JJ goes further:jj diff -r <Tab>shows part of the commit message for the offered commits. - There are just more completions than in any other shell I know. Aside from JJ the new Nix CLI also has great Fish completions and can dynamically complete flake outputs like package names.
- Entire commands can be history completed with
<C-E>or<Right>. This completion is also directory-aware and can usually avoid suggesting commands with paths to files that don't exist. In practice I find that it's really good at suggesting the command I actually want to run, to the point that I rarely invoke FZF anymore. - Abbreviations are in most cases better aliases since they do the same thing but don't obscure what you're actually running.
- No word splitting when expanding variables, because it's never what you intended.
- Globs that fail to match anything are errors instead of silently doing the wrong thing.
- Control structures are a bit nicer (but that is subjective).
You can get most of these with liberal use of shell options, installing blesh, or alternatively installing zsh with a bunch of plugins, but Fish just has all of them out of the box. You don't even need
bash-completions.how hard is it to transition?
It has a reputation of being very difficult from the past when it didn't have
&&/||but I think today plenty of Linux users would not even notice. The most notable remaining differences are setting variables (requires thesetbuiltin unless used to modify the environment for a single command), control structures (irrelevant in interactive use) and lack of!!(but you can make an abbreviation to bring it back).I hear a lot of people talk about the CachyOS kernel, but from this benchmark it seems like the optimizations used for the packages is as relevant (or even more so). It's also interesting that while distro-wide -O3 is basically useless, x86_64-v3 actually makes a significant difference. Unless openSUSE is doing other things that Phoronix doesn't highlight?
The term used is "Solução final", and it's a pretty literal translation. It's absolutely possible to make the connection between the terms, but it does require bot ha somewhat in-depth education on the Holocaust and some linguistic sense. Now it's entirely possible that LGFaé's history teachers really dropped the ball on the first part, but it's not clear to me that this is what must've happened here.
Speaking for myself I would be embarrassed but not especially surprised if some phrase that I use frequently has a similarly unfortunate meaning, especially regarding an African or Asian genocide. As bad as all genocides are, you just can't be well educated on all of them, especially with just a regular K-12/A-level/equivalent history education which also has to do things like teaching people how to read (something most of the world is currently failing at).
I think Matugen is the closest (maintained) thing to what you're asking for.
If you use a standalone Wayland compositor you might also be interested in the newest generation of "shells" (or more accurately, Quickshell dotfiles) like DMS or Noctalia. These usually also use Matugen under the hood to make their theme settings work.
I don't have deep knowledge on the topic but you might want to look into EDID, which is how your system knows what resolutions the monitor supports. Incorrect detection of maximum resolutions and refresh rates is a semi-common problem on Linux and the fix for that is a custom modeline; setting one will be compositor dependent on Wayland (on X11 xrandr will do).
However it's also possible that all the cables you have are bad and/or don't support 8K.
Hardware development is just extremely difficult. The smallest company that I'm aware of that has their own laptop design is Framework, but their laptops are also about twice as expensive as equivalent models from other brands.
In addition, since basically all modern computer manufacturing has to go through Taiwan due to TSMC's near-monopoly on competitive semiconductors, it makes sense to outsource design to Taiwan too. They already have the industry for it, and there's no reason to have a random American company add their own profit margin to the price for no reason.
They do develop Linux drivers for the laptops they sell, so they're not adding literally zero value. Though they also tried to prevent upstreaming with an incompatible (illegal) license so there's that...
They are rebranded (and expensive) Clevos, but they are manufactured (or configured, or integrated - those all amount to the same thing) in Germany.
To be fair to them this applies to many, many other Laptop brands. Including pretty big ones like MSI.
In defense of the author and their education... They're Brazilian so English probably isn't their native language, and their history education was almost certainly in Portuguese. I don't think it's necessarily an indictment of their education that they weren't taught about the English translation of a German phrase, and I don't think it's reasonable to apply the same standards of subtext awareness to native and non-native speakers either.
But that still leaves the question: How to install Nix in the first place? Without just running the script.
You can download tarballs with the precompiled Nix, though you'll still need to run an install script (but you can at least read it to convince yourself it's not malicious), see the relevant documentation for that.
Something that slipped my mind is that since OpenSUSE uses SELinux now, that means the recommended multi-user mode won't work. Single-user mode should be fine afaik, but it's a bit less convenient.
This command just runs the software once without actually installing it right?
The
nix-env -iAdoes actually install the software locally, not completely unlike how azypper inwould. For running a program without installing you would use something likenix-shell -p yazi --command yazi. Of course that still downloads and "installs" the program, it just won't add it to yourPATHor create a GC root, which means the next time Nix does "garbage collection" it will be removed again.And yeah I would recommend just trying OpenSUSE out and then if you realize you actually really do need stuff from third party package managers, then you can worry about whether getting into Nix is a good idea or not. Or fall back to the Arch/AUR in distrobox idea which is probably simpler to do overall, especially since from what I understand that's what you're supposed to do on the immutable spins like Aeon.
Late edit: I'll also note that there are several OpenSUSE specific third party repos too. Packman has some proprietary codecs that OpenSUSE doesn't want to ship (in case you really don't want your browser to be a Flatpak), and the Open Build Service (OBS) which is basically the AUR for OpenSUSE. They're not as useful because they're nowhere near the size of the AUR, but if you just need one specific package (perhaps one with questionable legality like yt-dlp or something) they might just have it. And of course you can also build stuff from source and put it in your
~/.local/bin, which has been common practice since before Linux was able to run on real hardware.That's true from a technical perspective. But in reality devs (especially ones who aren't making "Linux apps" but are doing things like porting a previously Windows-only game to Linux) will occasionally ship a broken Wayland client. The compositor could then still give that a basic titlebar with window buttons like KDE and Cosmic do, or alternatively it can refuse to do it and make the novice user annoyed at the system as a whole.
I'm not really convinced that requiring all Wayland clients to draw their own decorations was the correct decision in the first place, but even if we accept it, I think there's still a convincing case for fallback SSDs.
Theoretically you could download the .rpm file which quite a few developers provide on and install it on Tumbleweed too? But I am not 100% sure about that so please correct me about that if I'm wrong.
Yeah that's not going to work in the general case. A trivial RPM package might be fine but every additional dependency increases the chance that it depends on some package that OpenSUSE doesn't know. There's a reason OpenSUSE is usually considered an independent distro and not a "Fedora-based" one despite some shared components.
I don't think security wise there's much of a difference between running random software directly or via distrobox. Note that distrobox mounts your entire home directory into its containers, which removes any security benefit that containers could theoretically bring. In both cases you either need to audit the software yourself or you need to trust whoever you're downloading the software from.
Out of the third party repositories you mentioned, I would personally consider Nixpkgs the most trustworthy because package specs are actually code reviewed, unlike the AUR into which anyone can publish packages with zero oversight. That doesn't mean it's impossible for Nixpkgs to end up with malware in it, but the AUR sets a low bar. Using Nix (not NixOS) is also not actually that hard, you can just run
nix-env -iA nixpkgs.yaziand it does exactly what you would expect, even if NixOS users would scoff at the "imperativity".That being said, the OpenSUSE repositories really aren't that bad. Especially if you combine them with Flatpak, and especially if you install Firefox and VLC (or equivalents of your choice) from Flatpak so you don't need proprietary codecs in your base system. I used OpenSUSE Tumbleweed for years and got by just fine without Nix, homebrew or distrobox.
My understanding is that most of this is down to ARM's (relative) lack of standardization. Consumer ARM SoCs don't even have ACPI, so you aren't even guaranteed to be able to do things like powering off the system. Qualcomm pretty much has to add some minimum support for their SoCs to the kernel because most of their consumers will want to get Android working on them, but that doesn't mean they'll do more than they have to for that.
There's a reason you can install Linux on any x86 PC and it will mostly work, but you can't install an ARM Linux on a phone. Even Android forks like Lineage don't support all Android phones, even though they're shipping basically the same thing the manufacturers are.