yet another mirror
Find a file
2025-08-07 13:29:26 +02:00
.config/nvim lsp: disable virtual lines by default 2025-08-04 12:27:19 +02:00
nix xmobar: update tomorrow date 2025-08-07 13:29:26 +02:00
npins npins: update sources 2025-08-07 13:29:22 +02:00
scripts add script to handle live photo 2025-02-08 18:41:23 +01:00
.envrc Revert "shell: remove .envrc" 2025-07-09 10:54:18 +02:00
.git-blame-ignore-revs ignore stylua format in blame 2025-07-08 13:39:35 +02:00
.gitattributes add wallpaper 2024-10-30 20:19:43 +01:00
.gitignore vanadium: move xmonad config 2025-05-20 11:05:05 +02:00
.gitmodules meta: remove unused submodules 2024-11-15 19:06:39 +01:00
.stow-local-ignore stow: don't link env 2025-05-05 23:46:35 +02:00
.stylua.toml nvim: run stylua 2025-07-08 13:39:02 +02:00
default.nix nix: make sources available in repl sessions 2025-08-07 13:29:22 +02:00
Justfile remove niv residue 2025-07-03 08:39:28 +02:00
LICENSE please don't AI me 2024-10-30 20:19:48 +01:00
README.md nixos: delete my custom layout 2025-08-07 13:29:22 +02:00
shell.nix nix/shell: remove redundant overlay 2025-07-08 10:39:33 +02:00

This repo is managed with Nix + GNU stow

Installation Guide (for myself & those who are interested)

  • Generate image & boot We do this because the default one doesn't have all the utilities we want (e.g. disko).

    • generate image nom-build --attr nixosConfigurations.installer.config.system.build.isoImage
    • dd the image to a flash drive (remember to sync)
    • boot off that flash drive
  • Format disk (DANGER)

    • modify the disko file to point to the disk to be formatted
  • Installation (iirc the disko auto install has some issues)

    # Are you sure the disko config has the right drive path?
    disko -m disko ./disko.nix # format the drive
    
    # optional for unknown hard ware
    nixos-generate-config --no-filesystems --root /mnt --dir . # disko will take care of the file system configuration
    # put the generated config in the right path and import it
    
    nixos-install --flake .dotfiles#<hostname>
    # profit
    

Hosts

  • vanadium: Framework 13 (AMD 7040 Series)
  • tungsten: MacBook Air 2014 (because it gets really hot)

Linux

  • Window Manager : XMonad, flipped master/slave1 layout, 8 workspaces
  • Status Bar : xmobar, minimal configuration with a clock
  • Compositor : picom, for rendering transparency
  • Input Method : fcitx, "Cangjie" input method with a customized table
  • Font : Customized iosevka (thicker regular2 and fun stuff)
  • Terminal : kitty + tmux + fish

Editors and Shell

  • nvim Mainly used for Haskell, Nix, Rust, Typst / Markdown. (in order of frequency of use)
  • tmux with scripts that make it fast to use
  • fish the friendly interactive shell
  • starship for the prompt

Wallpapers

For the sake of not having a huge repo, the images are built and managed by nix using typst. The source can be found here.

Nix

Packages

This repository exports my custom packages under attribute packages. Because it's a monorepo and I have 0 reason to make things stable, pin it if you use any packages.

Binary Cache

You should use my binary cache if you're building my fonts, they take a while (20 minutes on my M1 Max MacBook Pro).

https://leana8959.cachix.org
leana8959.cachix.org-1:CxQSAp8lcgMv8Me459of0jdXRW2tcyeYRKTiiUq8z0M=

Theme

I have made a theme (a fork of Atom's one-light) where all my tools are visually unified. It's neovim part can be found here.

Notable shell scripts

  • tmux-sessionizer: a bash script inspired by ThePrimeagen, allows jumping between different tmux sessions using fzf
  • tmux-last: toggle the last tmux session
  • c2r: clone repository to ~/repo/owner/name, where I can then attach to using sessionizer The sessionizer primitives starts with two underscores and are reused. They are packaged together.

Have fun :)


  1. I dislike this nomenclature, if you know a better one let me know. ↩︎

  2. I don't know how people live with the default weight, it's too thin. ↩︎