For me, I really want to get into niri, but the lack of XWayland support scares me (I know there’s solutions, but I don’t understand them yet).
Also, I stopped using Emacs (even though I love its design and philosophy with my whole heart) because it’s very slow, even as a daemon.
NixOS
I just started yesterday in a VM. It’s no stress and you can easily put your configuration on metal after. Pretty fun stuff.
I have my garuda installation just where and how i want it to be. NixOS just always seemed very interesting, but i don’t want to run it on my daily machine.
Agreed, but I found getting NixOS the way I want it, to be super overwhelming, and documentation simply sucks. I’ve been thinking of forking ZaneyOS (Link: https://gitlab.com/Zaney/zaneyos) and basing my NixOS config on it. Otherwise, it’s just too much.
I tried it a while back, thought it would be good for my servers, but at the end of the day I found that it was a lot of learning for a very small benefit that could be achieved differently. Instead I focused on learning Ansible which also allowed me to write configs to deploy lots of services to my servers. I still want to learn Nix at some point, but I feel it’s a lot less important if you have an Ansible playbook that does the same thing and even more for any distro you might care to install.
I think the problem is that most people dive right in and go to NixOS which has its quirks as a linux OS (see FHS). The Nix language is great at building and moving source code between computers, really any big collection of binaries. If you don’t do that, try just using the nix-shell command to instantly run a piece of software without installing it. You can write a shell.nix file to hop into and out of an environment with whatever software you need. Once you can write a couple .nix files then move onto NixOS; which after all is just a big collection of binaries.
My drive to nix was so I could simply manage what packages I had installed with a text file. If I removed something from the file, I expect it to be uninstalled. I never found a tool/wrapper for apt to do this.
If you want to start with nixos, I would take whatever distro you are on and install nix and then home manager. Then, you can slowly migrate your user configuration over without starting from scratch. That worked really well for me going from ubuntu to nixos.
Estroge- oh, I’m in the Linux community whoops
I’d just like to interject for a moment. What you’re refering to as Estrogen, is in fact, GNU/Estrogen, or as I’ve recently taken to calling it, GNU plus Estrogen. Estrogen is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is often called Estrogen, and many of its users are not aware that it is basically the GNU system, developed by the GNU Project.
There really is a Estrogen, and these people are using it, but it is just a part of the system they use. Estrogen is the kernel: the program in the system that allocates the machine’s resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Estrogen is normally used in combination with the GNU operating system: the whole system is basically GNU with Estrogen added, or GNU/Estrogen. All the so-called Estrogen distributions are really distributions of GNU/Estrogen!
“I use Estrogen as my operating system,” I state proudly to the unkempt, bearded man. He swivels around in his desk chair with a devilish gleam in his eyes, ready to mansplain with extreme precision. “Actually”, he says with a grin, "Estrogen is just the kernel. You use GNU+Estrogen!’ I don’t miss a beat and reply with a smirk, "I use Alpine, a distro that doesn’t include the GNU coreutils, or any other GNU code. It’s Estrogen, but it’s not GNU+Estrogen.
The smile quickly drops from the man’s face. His body begins convulsing and he foams at the mouth and drops to the floor with a sickly thud. As he writhes around he screams “I-IT WAS COMPILED WITH GCC! THAT MEANS IT’S STILL GNU!” Coolly, I reply “If Testosterone was compiled With gcc, would that make it GNU?” I interrupt his response with “-and work is being made on the kernel to make it more compiler-agnostic. Even you were correct, you wont be for long.”
With a sickly wheeze, the last of the man’s life is ejected from his body. He lies on the floor, cold and limp. I’ve womansplained him to death.
Whenever I see this spin, I just want to say: “No it wasn’t. It was compiled with Clang.”
docker I guess, I still don’t know how it works, create them, etc
You don’t have to know how it works in order to use it. I don’t know either but I could host services using docker. trust me it’s way easier than it seems.
How to docker-compose in thirty seconds.
Simply make a file called
compose.yaml
Then paste in the text from your application’s docker-compose instructions.
Often the timezone needs to be set, along with the volume
Example:
volume: /mnt/hdd/data:/data
This means the application’s data directory will be mounted at /mnt/hdd/data
Then
docker compose up -d
You’re done, that’s all there is.
docker-compose is fantastic because in a single compose.yaml file you can list multiple services.
For example, my compose.yaml file contains my sonarr/radarr/bazarr/lidarr/prowlarr/qbittorrent/deemix/jellyfish/jellyseerr
And I can update them all by running a shell script made of three lines.
Bcachefs, and bcachefs on root. Need something with filesystem level encryption instead of LUKS, and *ubuntu’s and derivatives have all abandoned ZFS on root installs now.
Bcachefs has filesystem encryption without LUKS? Did this have an audit? I use BTRFS and it is fine, but boot is unencrypted (using TPM would be cool)
https://en.wikipedia.org/wiki/Bcachefs
Bcachefs is a copy-on-write (COW) file system for Linux-based operating systems.[3] Features include caching,[4] full file-system encryption using the ChaCha20 and Poly1305 algorithms,[5] native compression[4] via LZ4, gzip[6] and Zstandard,[7] snapshots,[4] CRC-32C and 64-bit checksumming.[3] It can span block devices, including in RAID configurations.[5]
I see it has an audit back in 2017, but I’ve yet to find anything newer. The finding was good, but suggested further audit be done.
I dont see the difference to BTRFS apart from encryption and maybe caching? I was always confused why people hype it so much.
Interesting, yes I wouldnt not use LUKS if the alternative is less known, not used by enterprise distros
Bachefs is in the kernel now so trying it on a spare drive or partition is super trivial these days depending on distro. You only need a few minutes of time.
Getting it on root is a bit harder as almost no installers support it yet. The only distro I can think of is CachyOS.
Neovim. I tried to use it a year ago, but I felt like I was fighting it every time I just wanted to make progress on my project. VSCode doesn’t get in my way. I’m going to give it another shot in a few years.
Haven’t used neovim, but I had to try vim way too many times. I can’t use anything else now.
Try kickstart.nvim. I was skeptical until I tried it. It’s a very good starting point for Neovim. Pretty much eberything else I’ve ever tried is either too bloated, too complicated, too outdated, too overwhelming, or a mix of the above. Link: https://github.com/nvim-lua/kickstart.nvim
If you aren’t already, you could get familiar with the vim motions within VSCode via a plugin. Moving over to a vim setup can be overwhelming, setting up your lsp,linters, other packages. Adding on the need to still learn key bindings makes it extra difficult. I started with VSCode using vim motions, went to doom emacs and used evil mode and then my mentor got me hooked on vim. Do it in steps and you’ll get to a config that lets you code without much fussing, good luck!