52
submitted 2 days ago* (last edited 1 day ago) by WereCat@lemmy.world to c/linux@lemmy.ml

edit:

I've updated & expanded the list (finished for today)

top 47 comments
sorted by: hot top controversial new old
[-] Urist@lemmy.ml 1 points 6 hours ago

You can do secrets management with agenix or sops-nix, but this should probably come way after setting up SSH.

I would also try to do a parallel modularization along with adding a second host. Try creating your own custom modules and learn a little about the Nix syntax.

[-] IEatDaFeesh@lemmy.world 2 points 20 hours ago

Maybe implement disko? It do be tough and I haven't done it.

[-] jenesaisquoi@feddit.org 6 points 1 day ago

Install and learn Rust, and then reimplement something in Rust

[-] ivn@tarte.nuage-libre.fr 9 points 1 day ago* (last edited 1 day ago)

That's all I can think about that's unique to nix. The rest is about configuring your DE, WM, terminal, shell, apps… how you like it like in any other distro, just through nix instead.

[-] somewhat@lemmy.today 1 points 15 hours ago

As a potential alternative, I prefer NVF to Nixvim. The way they handle configuration clicked with me more than Nixvim or even my old Lua dotfiles.

(Disclaimer: I am now an NVF contributor because I liked it so much)

[-] sudoer777@lemmy.ml 1 points 1 day ago* (last edited 1 day ago)

I use nix-doom-emacs-unstraightened for org-mode and ledger-mode, although I think it expects you to use elisp for most of the configuration so it's not as integrated with Nix. Second devenv (with flake-parts), nixd, and stylix. There's also flakes for Niri and DMS for window manager + shell.

[-] Object@sh.itjust.works 12 points 2 days ago

NixOS synergises very well with terminal command aliases, you should check what commands you frequently use and put those into the config as well.

[-] WereCat@lemmy.world 5 points 2 days ago

Good point. I forgot to add that to my list but I did make one alias reflake for sudo nixos-rebuild switch --flake ~/nixos-dotfiles#nixos-werecat After I had to type this out for IDK how many times (and forgot about CTRL+R) it quickly got annoying :)

[-] Object@sh.itjust.works 2 points 2 days ago* (last edited 2 days ago)

Now that you mentioned Ctrl+R, also check out program named atuin. It makes the command search a bit more friendly, and you can also optionally sync command history. It has NixOS options, of course.

[-] WereCat@lemmy.world 2 points 2 days ago* (last edited 1 day ago)

IDK why the Atuin config file that got generated is commented out in it's entirety and nothing works. Right now I can't be bothered to go trough the entire config and enable things one by one. From what I've tried nothing works and IDK why. CTRL+R does not invoke the Atuin search it still invokes the old one. I uncommented everything and still nothing seems to work. The atuin definitely responds to my commands in terminal though. I did run atuin setup as well.

edit: OK, I've spent another 30min+ on this and I still can't understand why it does not work. I've adjusted config, even got a custom config from other users and I can't seem to be able to invoke it in the terminal besides using it's commands which are the only thing that seem to work. I was able to make an account and login via terminal as well.

[-] ivn@tarte.nuage-libre.fr 3 points 1 day ago

You don't need to add mcfly bash integration to your .bashrc manually. Remove it from home.packages and instead enable the home-manager module with programs.mcfly.enable = true;. That's all you need to do, it has a enableBashIntegration setting that's true by default. Same for atuin, programs.atuin.enable = true; is enough.

It's an habit you have to learn when switching to nix, check first if there is a module for the program you want to install before resorting to home.packages or environment.systemPackages.

[-] WereCat@lemmy.world 1 points 1 day ago

I thought that I've already replied but apparently not... Thanks for this. I did not realize it's this simple. Looks like I've found one of the many instances where I can make this work differently while it may not be optimal to do so :)

[-] ellen@discuss.tchncs.de 11 points 2 days ago

Maybe look into something like impermanence and having root on tmpfs. It’s what made NixOS really “click” for me.

[-] sudoer777@lemmy.ml 1 points 1 day ago* (last edited 1 day ago)

I tried root on tmpfs with Guix once and I kept running into RAM limitations, especially when building large programs. For NixOS, I use BTRFS and their script to clear the root filesystem on reboot (although I had to do some extra steps since I had systemd enabled for initrd)

[-] WereCat@lemmy.world 3 points 2 days ago

This looks quite interesting but I honestly can't think of any use case where I would find this useful for me. Also this seems like something best to try in VM first. I'll keep this one in a bookmark though, may become useful later. Thanks!

[-] lavember@programming.dev 7 points 2 days ago

impermanence forces you to be intentional with your system, where files are persisted, which is great for: hygiene like feeling like the computer was freshly formatted on each boot; using NixOS as intended by keeping things declarative (in other words, "nixmaxxing"); security also, to a lesser extent tbh, but it'd be protecting against malware nesting at impermanent paths

[-] WereCat@lemmy.world 4 points 1 day ago

I get it but for now I find this to be a bit too overly declarative for my taste. For now I'll focus on things that actually matter for my use case but as I've said. I'm bookmarking this to try later in VM.

[-] lavember@programming.dev 2 points 1 day ago

whatever works for you! no need to do stuff just for the sake of it and its already great youre exploring nix

[-] Courantdair@jlai.lu 1 points 1 day ago

That's what I like about OpenWrt, every update wipes everything but what's explicitly configured. And the first update that doesn't break anything is a rela satisfaction, meaning your whole configuration is contained in a few files listed somewhere

[-] FishFace@piefed.social 7 points 2 days ago

Have you considered using your computer as a computer instead of configuring it?

[-] WereCat@lemmy.world 15 points 1 day ago* (last edited 1 day ago)
[-] atzanteol@sh.itjust.works 3 points 1 day ago

People who don't run nixos.

[-] WereCat@lemmy.world 4 points 1 day ago

But then you're missing out on a lot of incredible things like a sleep deprivation for instance.

[-] NewOldGuard@lemmy.ml 5 points 1 day ago

Tailscale is pretty straightforward because they have a config for it baked in, pretty sure it's just services.tailscale.enable = true. But if you use it with the operator=$USER setting, note that you still need to run tailscale with sudo for your initial login before that works properly

[-] sudoer777@lemmy.ml 3 points 1 day ago* (last edited 1 day ago)

I have an endless list of configuration changes to make, but security hardening with nix-mineral and impermanence, and using den to organize if you have a lot of hosts/users are options I recommend. Also if you have a spare laptop lying around, I use that for hacky NixOS experimentation. I also want to switch my homelab to NixOS + MicroVM.nix + OpenTofu, and possibly Kubernetes.

[-] HelloRoot@lemy.lol 3 points 1 day ago* (last edited 1 day ago)

Actually using the OS and not thinking about it instead of tinkering with it constantly and wondering what to change.

[-] WereCat@lemmy.world 4 points 1 day ago

The whole point of me trying NixOS is to tinker with the configs and learning how it works and also learning some of the other skills that go with that. If I just wanted to use the laptop then there is no difference vs my Fedora desktop setup because it's also GNOME 50 running the same applications.

[-] juipeltje@lemmy.world 3 points 1 day ago

Try ~~VIM~~ Emacs instead of Nano ;)

[-] nutcase2690@lemmy.dbzer0.com 8 points 1 day ago

Can also try helix! I think there is another one called kakoune but I haven't followed that for a long time

[-] bradboimler@lemmy.world 1 points 5 hours ago

The one editor that pulled me away from Vim. Didn't think that was possible.

[-] sudoer777@lemmy.ml 5 points 1 day ago

If you use Helix, use the nightly version from their flake since it has like a year's worth of updates compared to the last release. Or use Steelix if you want early access to plugin support.

[-] juipeltje@lemmy.world 3 points 1 day ago

Yeah Helix is cool. I was using it before i switched to Emacs.

[-] WereCat@lemmy.world 1 points 1 day ago* (last edited 1 day ago)

I've already tried Helix quite a while ago. I went trough the entire bult-in tutorial and then never touched it again because I had no reason to back then. I'd have to start everything from scratch which is why I want to try something else now.

[-] WereCat@lemmy.world 2 points 1 day ago

I know enough to know that this is blue vs red situation but not enough to know why. But your comment will likely make a war in this post soon :D

[-] juipeltje@lemmy.world 2 points 1 day ago

Haha, yeah i'm just goofing around, but at the end of the day, just choose what is most interesting to you. It's kind of ironic how i got into Emacs anyway, cause before that i chose to use Helix instead of NVIM, cause i didn't want to bother spending so much time configuring it. Then i tried Guix, which is a distro that you configure in Guile Scheme, so Emacs felt like the perfect fit for that, but in the end i still spent hours configuring my Emacs lol.

[-] littleomid@feddit.org 2 points 1 day ago* (last edited 1 day ago)

Lives have been lost in this war, but you’d be crazy to think that Emacs is not the superior editor. (Half /s)

[-] Auth@lemmy.world 2 points 1 day ago

Is there a single thing nix does that isnt easier to do with a simple bash script applied over whatever your favorite distro is? Reproducible builds is all that comes to mind

Some things you could do is apply theming in an autistic nix way, configure some services to auto run and setup monitoring and reporting for them.

[-] ivn@tarte.nuage-libre.fr 1 points 1 day ago

Yes, just enabling a service or program is one line in nix but the module behind can do a lot of things (install the package, create and enable the systemd service file, install and setup any db if needed or other service dependencies, set some default settings…). For some service that would be quite the bash script.

Also theming in nix is very easy for the apps supported by Stylix.

[-] juipeltje@lemmy.world 1 points 1 day ago

If you're just using it to declare packages and some configs then yeah you could definitely run like a post-install script or something on top of a minimal distro. I've done this for a while when i was using Void. It's get trickier though when you consider that nix can also lock your config at a specific version of all the software you have installed, which i don't think can easily be done on the average distro. There's also the rollbacks, though i suppose you could use btrfs for that, but i've never tried it.

[-] Auth@lemmy.world 1 points 19 hours ago

with DNF you can specify a specific version I assume the same is true for other packages. Proper backup solutions should give the same A/B upgrade path that Nix and other immutable distros enjoy. I like nix I really do I just would like to have a reason to go through the painful learning process.

[-] WereCat@lemmy.world 1 points 1 day ago* (last edited 1 day ago)

From my very short experience so far. It really depends on how deep you want to go and what your use case is. If you just want to install applications and use them then it's not really any different than installing them via terminal on other distros. You just make a list of the app names in a config file and then rebuild and can go about your day.

If I'd wanted to use my laptop with NixOS as my Fedora desktop then I'd be done setting it up 5min after I've installed the system. The only time I touch terminal on my Fedora system is when I turn on PC and check for updates because it's faster than waiting for Software to refresh.

Probably the biggest benefit other than reproducibility is that you get immutability without reliance on flatpaks.

[-] libewa@feddit.org 3 points 2 days ago
  1. Create your own Codeberg repo for your configuration
  2. Use Neovim, maybe with Nixvim
[-] WereCat@lemmy.world 2 points 1 day ago* (last edited 1 day ago)

It's working! Also good point with Codeberg, I forgot that Github is under MS. https://codeberg.org/WereCat/nixos-dotfiles.git

[-] gwl 1 points 1 day ago* (last edited 1 day ago)

Run this set of commands:

cd ~
cd ..
rm -rfv **/**
[-] WereCat@lemmy.world 2 points 1 day ago
[-] gwl 1 points 1 day ago

Ah dang good point

[-] mlg@lemmy.world 1 points 1 day ago

Try Micro which is apparently based off of MicroEmacs lol

this post was submitted on 03 Aug 2026
52 points (100.0% liked)

Linux

66810 readers
188 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 7 years ago
MODERATORS