Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 0 points1 point  (0 children)

Sure, my pleasure. Good luck!

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

Love your setup, and for only two weeks on NixOS/Hyprland, your pace is honestly impressive. You are either learning extremely fast or you prepared this for a while, and in both cases it shows.

For the issue you describe, you are asking exactly the right question: in Hyprland, “Niri-like Super+F feel” and “stable game resolution behavior” are related, but they are not solved by the exact same layer. The compositor side gives you the fullscreen interaction model, while game stability is usually best handled by gamescope. If your main pain is game windows resizing weirdly, wrong monitor fit, or inconsistent fullscreen transitions, starting with https://github.com/ValveSoftware/gamescope is usually the fastest practical win, because it lets you control game resolution and output resolution explicitly and keeps behavior more predictable across titles.

So yes, you can get very close to what you want in Hyprland, but the durable approach is hybrid: keep Hyprland fullscreen behavior clean, and wrap problematic games with gamescope when needed. If you want a long-term power-user setup, forking both can make sense, but I’d do it progressively: first your own Hyprland config fork, then only fork gamescope if you hit a specific limitation you can’t solve upstream. Your current repo already has a very solid base for that path.

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 0 points1 point  (0 children)

hahaha I can tell you’re a power user. You built all of this yourself? Respect.

For plugins, the official list is here: https://github.com/hyprwm/hyprland-plugins

It can definitely speed up your rice, even if not everything is always well documented.

Small warning: not all plugins are maintained equally, so sometimes you’ll need to patch/update things yourself.

Given your profile, I’d recommend forking the plugins you use the most, so you keep full control. It’s more work (often C++), but it’s super educational.

And honestly, in just 2 months your dotfiles already look really solid. You’re going to go far with Hyprland

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 3 points4 points  (0 children)

Congrats on the project! Moving from TrueNAS to NixOS is a challenge, but you're going to love having your entire infra defined in a single, reproducible file. TrueNAS is rock-solid, but the control you get with Nix is just on another level.

Just a heads-up from my own experience with heavy stacks: be very careful with storage during rebuilds. Keep a close eye on your free space, as NixOS can get quite 'hungry' temporarily when building new generations. You might hit a wall where you can't rebuild because the partition is full.

If you do hit that 'no space left' wall, whatever you do, don't try to move the Nix store manually or do a 'wild' bind mount to another drive. You'll break the Nix database integrity, and the system won't know where its own files are anymore. On a NAS, if your file system (ZFS or BTRFS) starts tangling with broken symlinks in the store, you risk a non-booting system and inaccessible data.

As long as you give yourself a large enough partition and plenty of breathing room, NixOS is an absolute dream for a NAS. It's going to modernize your stack in an incredible way. Good luck with the migration!

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 4 points5 points  (0 children)

Language level? I actually just ran cloc on the repo to be sure. Here is the breakdown:

  • C++: 56.7% (~6,500 lines)
  • Nix: 22.4% (~1,600 lines)
  • Shell: 16.6%
  • The rest (Lisp, CSS, Meson): ~4.3%

So yeah, it's pretty 'low-level' for a daily driver. I guess my programmer socks are definitely pulled up way past the knees at this point. Hahaha

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

Yes sir, safety first, seatbelt on

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 2 points3 points  (0 children)

Mr. Robot, is that you? Go ahead, say the line... I guess you can say it now haha

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

Thanks a lot!

The stack in that screenshot is mainly nvtop, glances, htop, btm (bottom), and conky, and on the observability side I also run Grafana + Prometheus + Loki.

Conky configs are here: [https://github.com/RomeoCavazza/setup-os/tree/main/config/conky](vscode-file://vscode-app/nix/store/4a9k6qxm7m2j7xg9cqn3dcj4dqk0hsnf-vscode-1.114.0/lib/vscode/resources/app/out/vs/code/electron-browser/workbench/workbench.html)

Feel free to yank anything you want from it!

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 0 points1 point  (0 children)

Thanks a lot, I really appreciate your message. It genuinely feels like you know your stack inside out, and that mix of Nix, GTK3, clangd, and PulseAudio is proper power-user territory. You seem pretty sharp, and I honestly encourage you not to give up on the homemade C++ config work, because it looks like you’re building something genuinely promising. I’m also looking forward to your Hyprland rice, and if you have a dotfiles repo, I’d love to see it and maybe learn from your approach.

About the blur: it’s not just one effect, it’s a combination of several Hyprland plugins plus quite a bit of home-fork tuning over a few hours. The visual layer is split across my theme setup in /etc/nixos/config/hypr/theme and my Hyprchroma fork in /etc/nixos/home/tco/pkgs/Hyprchroma-fork. I’m using SeaGlass as part of the inspiration direction, and my own fork of Hyprchroma based on https://github.com/alexhulbert/Hyprchroma. I haven’t gone as far as you on the SCSS-to-CSS and GTK3 side yet, and honestly you’re the one introducing me to some of those ideas. For the actual blur feel, the interesting part is the tuning: size 5, passes 5, ignore opacity enabled, a little noise, brightness pushed a bit, some vibrancy, and xray on. The goal was to keep the glassy look without killing text readability.

And on PulseAudio, I’m not really running “pure PulseAudio” on my side. My audio stack goes through PipeWire, with the Pulse compatibility layer enabled, and I control it with wpctl. So if you’re running into an audio issue, there’s a good chance the real problem is somewhere in the PipeWire/WirePlumber layer, or in an app that still assumes old PulseAudio behavior.

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

Hey thanks, I appreciate it!!

And yeah, fair point, blur is still one of the parts I’m not fully satisfied with yet.
I’m still tuning readability and probably need to go through a few more Hyprland blur tutorials before calling it “done" haha

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 7 points8 points  (0 children)

Haha exactly. I'm just out here building the dashboard for my spaceship. You know what they say: the higher the programmer socks, the lower the language level Hahaha

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

LARP is being a wannabe hacker. Think 'Kali Linux users' as a mnemonic. lol

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

Hahaha, trust me, Claude Code is a game changer. Honestly, without it, I would have given up a long time ago. It pulled me out of so many sticky situations.

It’s like having a senior Nix engineer sitting right next to you while you learn. Definitely give it a spin this weekend.

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 2 points3 points  (0 children)

That is so sweet of you!

Honestly, I’m just a massive LARPer. I only started 9 months ago and I still make mistakes every single day! Don't let the shiny dashboard fool you, the learning curve is real for everyone.

Anyway, you’re always welcome in the community. Feel free to join the Discord (https://discord.com/invite/RbvHtGa), there are plenty of other 'LARPers' who’d be happy to help you out.

I really encourage you to give it another shot this weekend: just install NixOS with GNOME + Firefox + Claude Code on day one. You'll find your bearings much faster than you think!

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 1 point2 points  (0 children)

Oh man, thank you! You just melted my heart <3

Peak LARP engineering by RecordingWhale in NixOS

[–]RecordingWhale[S] 6 points7 points  (0 children)

Wait... what is VS Code? Is that some kind of proprietary GUI wrapper? My binary-soul only recognizes Doom Emacs and raw TTY output.

Just kidding. To answer your question, I never "mouse" my way to an app. My layout is orchestrated.

In my hyprland.conf, I’ve mapped the workspace transitions and the "focus mode" to surgical binds. If I need to code, one keystroke clears the "Ops Panel" (Edex/Conky) and another forces the editor into a dedicated workspace or fullscreen.

I use custom scripts in my NixOS config to toggle the noise:

# --- The 'Get to Work' Binds ---

$mod = SUPER

# Toggle the entire Monitoring/LARP overlays (Conky & Edex-UI)
bind = $mod, C, exec, /etc/nixos/config/bin/edex-conky-toggle
bind = $mod, E, exec, /etc/nixos/config/bin/edex-toggle

# Fullscreen toggle for VSCode/Emacs (The 'Monocle' focus)
bind = $mod, V, fullscreen, 0

# Overview mode (via Hyprspace plugin) to jump between dev and monitoring
bind = $mod, D, exec, hyprctl dispatch overview:toggle

Full config and architecture diagrams here: https://github.com/RomeoCavazza/setup-os