Skip to content

🌸 Catppuccin themed nixos configuration

License

Notifications You must be signed in to change notification settings

YisuiDenghua/dotfiles

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


sioodmy's dotfiles


Disclaimer: This is not a community framework or distribution. It's a private configuration and an ongoing experiment to feel out NixOS. I make no guarantees that it will work out of the box for anyone but myself. It may also change drastically and without warning.

Until I can bend spoons with my nix-fu, please don't treat me like an authority or expert in the NixOS space. Seek help on the NixOS discourse instead.

Shell: zsh
WM: Hyprland + Waybar
Editor: neovim 0.8
Terminal: kitty
Launcher: rofi
Browser: Firefox ESR 102
Channel: nixos-unstable
Theme: Catppuccin

Installation

Here are the installation instructions for my configuration. I wrote this so you don't forget it in the future, please don't install it "as is". Make your own configuration.

How to get started?

Use google and find out for yourself, you'll get used to it.

🔥 Welcome to the undocumented hell of NixOS.

Good luck and have fun

  1. Read the disclaimer (tldr: use your own configuration or I will have ssh keys for your machine)

  2. Download iso

    # Yoink nixos-unstable
    wget -O nixos.iso https://channels.nixos.org/nixos-unstable/latest-nixos-minimal-x86_64-linux.iso
    
    # Write it to a flash drive
    cp nixos.iso /dev/sdX
  3. Boot into the installer.

  4. Switch to root user: sudo su -

  5. Partitioning

    We create a 512MB EFI boot partition (/dev/sda1) and the rest will be our LUKS encrypted physical volume for LVM (/dev/sda2).

    $ gdisk /dev/sda
    
    • o (create new empty partition table)
    • n (add partition, 512M, type ef00 EFI)
    • n (add partition, remaining space, type 8300 Linux LVM)
    • w (write partition table and exit)

    Setup the encrypted LUKS partition and open it:

    $ cryptsetup luksFormat /dev/sda2
    $ cryptsetup config /dev/sda2 --label cryptroot
    $ cryptsetup luksOpen /dev/sda2 enc-pv
    

    We create two logical volumes, a 16GB swap parition and the rest will be our root filesystem

    $ pvcreate /dev/mapper/enc-pv
    $ vgcreate vg /dev/mapper/enc-pv
    $ lvcreate -L 16G -n swap vg
    $ lvcreate -l '100%FREE' -n root vg
    

    Format paritions

    $ mkfs.fat /dev/sda1 -n boot
    $ mkfs.ext4 -L root /dev/vg/root
    $ mkswap -L swap /dev/vg/swap
    

    Mount paritions

    $ mount /dev/vg/root /mnt
    $ mkdir /mnt/boot
    $ mount /dev/sda1 /mnt/boot
    $ swapon /dev/vg/swap
    
  6. Fix "too many files open"

    $ ulimit -n 500000
    
  7. Enable flakes

    $ nix-shell -p nixFlakes
    
  8. Install nixos from flake

    $ nixos-install --flake github:sioodmy/dotfiles#graphene --impure
    


ETH: 0x430de39c494E40808F9d8A50958Eec622C3B5577

Copyright © 2021-present sioodmy

About

🌸 Catppuccin themed nixos configuration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Nix 82.0%
  • Lua 8.8%
  • CSS 5.1%
  • Python 2.5%
  • Other 1.6%