No description
Find a file
2026-08-24 09:46:50 +02:00
.codex/skills/install-anti-slop sable + omp 2026-08-17 00:15:15 +02:00
.config fixup outputs + dark mode 2026-08-24 09:46:50 +02:00
.vscode initial commit 2023-11-13 21:17:35 +01:00
analysis docs 2026-05-31 23:20:36 +02:00
modules matrix 2026-08-14 23:13:40 +02:00
pkgs matrix 2026-08-14 23:13:40 +02:00
python various updates 2025-06-20 14:52:11 +02:00
screenshots update 2025-04-06 22:21:09 +02:00
servers fixup outputs + dark mode 2026-08-24 09:46:50 +02:00
.default-python-packages dev environment setup 2024-07-16 14:46:05 +02:00
.gitignore basic metrics 2026-04-25 12:32:18 +02:00
.gitmodules update 2026-07-23 16:06:11 +02:00
.luarc.json hyprlua + disk 2026-07-31 14:18:13 +02:00
.oh-my-posh.nu update 2026-08-05 09:16:31 +02:00
cache-public-key.pem setup nix cache from fern 2026-05-14 00:42:38 +02:00
flake.lock update 2026-08-23 18:14:03 +02:00
flake.nix update 2026-08-23 18:14:03 +02:00
hwparam.json update 2026-07-11 17:25:48 +02:00
powersave.nix update to unstable 2025-09-18 09:21:19 +02:00
README.md move dotfiles into nix 2026-08-16 13:11:32 +02:00
remove-old-nix.sh update to unstable 2025-09-18 09:21:19 +02:00
steam-heroic-shortcuts.md docs 2026-05-31 23:20:36 +02:00
sync-nix.sh move dotfiles into nix 2026-08-16 13:11:32 +02:00
upgrade-nix.sh update 2024-12-03 21:12:15 +01:00
with-extra.sh tuwunel 2026-08-05 22:34:09 +02:00

Dotfiles

My dotfiles and Nix setup for Hyprland and some other goodies.

Please do edit configuration of at least hyprland and file systems - default configuration is very specific to my setup (involves monitor scaling).

Screenshots

Servers

This also includes configuration for some of my (home) servers. Those are managed by colmena, but can also be instantiated locally using flakes.

Used software

I'm using NixOS. For the full package list, see home.nix.

  • hyprland - wayland compositor and window manager (also adds blur and rounded corners). Really barebones, see below for shortcuts (read the config file for up to date shortcuts)
  • fish - shell (friendly, interactive, doesn't implement POSIX, I recommend reading it's docs first)
  • nushell - shell (very different)
  • fastfetch - everyone needs a fetch program
  • onefetch - fetch for git repos (fish is configured to show repo details when you cd into a repo)
  • kitty - terminal emulator (GPU accelerated, supports ligatures, unicode, etc)
  • nano - simple text editor. I recommend editing duplicating the file to root's home directory and changing the colors there, so you always see when you're sudo editing something.
  • rofi - application launcher, general "chooser" (used for power menu, notification actions, etc)
  • Dank Material Shell - desktop shell, status bar, launcher, and notifications
  • hyprlock - Fancy lock screen
  • spicetify - custom spotify theme
  • VSCode - code editor
  • dolphin - file browser
  • blueman - bluetooth app indicator
  • swaybg - for showing wallpaper
  • activity-watch and awatcher - for program usage statistics
  • nm-applet - network manager app indicator
  • swayidle - for automatic locking

General notes

Setting up

Run sync-nix.sh to switch the NixOS configuration. Home Manager installs the shared user configuration for both aura and fern as part of the switch, so no separate dotfile copy step is needed. If you don't want to build hyprland yourself and instead use cache, comment out programs.hyprland in configuration first, sync, then un-comment it and sync again.

upgrade-nix.sh updates lockfile (pacman -Syu / apt update && apt upgrade equivalent) and syncs.
remove-old-nix.sh removes old generations and runs nix gc to save disk space.

Lock screen

Lock screen doesn't show what you type, it just changes it's circle for each character. If you delete all the input, it will show "cleared". Escape clears input.
Click the crossed eye on the status bar (next to network connection status, on the right side) to disable automatic lock screen (for playing videos, etc, as idle detection is not perfect on hyprland). If it's purple and shows normal eye, automatic lockscreen is disabled.

Terminal

Kitty is a very basic terminal emulator, but it supports GPU acceleration, ligatures, unicode, etc.
See kitty under shortcuts for shortcuts. Note that even though it supports scrolling, it doesn't show a scrollbar.

Hyprland

Is a barebones wayland compositor and window manager. It's main features are blur and rounded corners.

By default, it can't do much, but it's very configurable. See the config file for more info.

For mouse controls, press super key and drag with left click to move the window. Use right click to resize. Super key and scroll switches desktops.
Hovered window has support, switching active window also moves the cursor.

Supports touchpad gestures (mainly swiping with 3 fingers to switch desktops).

Each monitor has it's own desktop and switches desktop independently.

Hyprland has groups - multiple programs can be grouped together and are then tabbed. The tabs are yellow as I couldn't find relevant working config :(.
super+g toggles group, super+shift+left/right switches tabs (also loops over).

Hyprland has hyprctl for viewing data about monitors and clients (windows). You can use it to find relevant IDs and classes.

Shortcuts

Set to roughly mirror KDE/Windows when possible, unless I either didn't know the shortcut or there was no such shortcut available.

Opening stuff

Shortcut Action
super + t Open terminal (kitty)
super + r Open application launcher (rofi)
super + e Open file browser (dolphin)
super + p Power menu (rofi)
super + b Open browser (vivaldi)

My current setup is set that power button turns off the computer without prompting, so maybe beware of that ;)

Windows

Shortcut Action
super + q Close window
super + g Toggle group
super + v Toggle floating of current window
super + f Toggle fullscreeen
super + a Swaps workspaces between monitors
super + alt + arrows Switch focus between windows (arrows indicate direction)
super + 1-9/0 Switch to workspace 1-10 (workspaces are numbered from 1, 0 = workspace 10)
super + left/right Move window between monitors (and their workspaces)
super + m Swaps master window, i.e. the window on the left, with the current window

Other

ctrl+alt 1/2 is passed on to OBS as a global shortcut. You may want to change this, but it can also serve as an example of a global shortcut. Of note, obs isn't installed - nixos tries to build it manually for some reason. I use comma to one-time-install obs (, obs).