Configuration files for NixOS + Home Manager.
Find a file
2023-10-02 10:15:40 +08:00
assets did not like vertical 2023-07-25 06:09:48 +08:00
home-manager fix path 2023-07-29 09:01:39 +08:00
modules nix flake template 2023-04-03 22:41:22 +08:00
nixos update public ssh keys 2023-10-02 10:15:40 +08:00
overlays nix flake template 2023-04-03 22:41:22 +08:00
pkgs setup shell.nix + direnv 2023-07-25 11:12:02 +08:00
.gitignore remove bitwarden container 2023-06-09 23:16:42 +08:00
flake.lock update lock 2023-07-29 08:29:34 +08:00
flake.nix update flake 2023-07-23 08:26:19 +08:00
LICENSE Create LICENSE 2023-07-07 23:52:30 +00:00
nixpkgs.nix nix flake template 2023-04-03 22:41:22 +08:00
README.md update README.md 2023-07-07 22:44:36 +08:00
shell.nix nix flake template 2023-04-03 22:41:22 +08:00

NixOS & Home-Manager Configuration

nixos-logo

My NixOS and Home-Manager config files. Based upon Misterio77's starter configs.

This repo is often neglected and doesn't necesarrily follow best practices.
I recommend only using this repo for inspiration and instead use this boilerplate

Installation

# Clone the configuration files
git clone https://github.com/sajenim/dotfiles.nix.git

# We must be in the repo to access the flake
cd ~/dotfiles.nix

# Apply the system configuration
sudo nixos-rebuild switch --flake .#hostname

# Apply the user configuration
home-manager switch --flake .#user@hostname

Applications

Main programs that create my desktop experience.

  • neovim
  • wezterm
  • xmonad
  • xmobar

Self hosted services

Services are hosted on a Raspberry Pi 4 Model B with podman containers.
Volume backups are performed with BorgBackup.

Networking:

  • pihole
  • traefik

Media stack:

  • plex
  • sonarr
  • radarr
  • prowlarr
  • recyclarr

Miscellaneous:

  • homepage
  • qbittorrent
  • minecraft

FAQ

  • What is nix?
    Nix is a tool that takes a unique approach to package management and system configuration.
  • Nix benefits
    Nix is reproducible, declarative and reliable.
  • Why flakes?
    Flakes allow you to specify your code's dependencies (e.g. remote Git repositories) in a declarative way, simply by listing them inside a flake.nix file.

Credit

Boilerplate

Other Configs