Thanks to visit codestin.com
Credit goes to github.com

Skip to content

hmajid2301/nixicle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation


Nixicle

Screenshot updated: 2024-07-15

⚠️ This config repo is constantly changing, Let me know if you see something that can be improved or done better πŸ˜„ .

πŸ’½ Usage

Install

To install NixOS on any of my devices I now use nixos-anywhere. You will need to be able to SSH to the target machine from where this command will be run. Load nix installer ISO if no OS on the device. You need to copy ssh keys onto the target machine mkdir -p ~/.ssh && curl https://github.com/hmajid2301.keys > ~/.ssh/authorized_keys in my case I can copy them from GitHub.

git clone [email protected]:hmajid2301/nixicle.git ~/nixicle/
cd nixcile

nix develop

nixos-anywhere --flake '.#workstation' [email protected] # Replace with your IP

After building it you can copy the ISO from the result folder to your USB. Then run nix_installer, which will then ask you which host you would like to install.

Building

To build my config for a specific host you can do something like:

git clone [email protected]:hmajid2301/nixicle.git ~/nixicle/
cd nixicle

nix develop

# To build system configuration (uses hostname to build flake)
nh os switch

# To build user configuration (uses hostname and username to build flake)
nh home switch

# Build ISO in result/ folder
nix build .#iso-graphical

# Deploy my to remote server i.e. Home Lab (using SSH)
deploy .#ms01 --hostname ms01 --ssh-user nixos --skip-checks

# Build Home Lab diagram using nix-topology
nix build .#topology.config.output

# Build docker image used in ci
nix build .#containers-ci

# Run neovim
nix run .#homeConfigurations."haseeb@workstation".config.nixCats.out.packages.nixCats

# Build docker image used in ci
nix build .#containers-ci

πŸš€ Features

Some features of my config:

  • Structured to allow multiple NixOS configurations, including desktop, laptop and homelab
  • Custom live ISO for installing NixOS
  • Styling with stylix
  • Opt-in persistance through impermanence + blank snapshot
  • Encrypted BTRFS partition
  • Secure Boot with lanzaboote
  • sops-nix for secrets management
  • Different environments like niri, hyprland and gnome
  • Custom Neovim setup declaratively using NixCats
  • Homelab all configured in nix.

πŸ–ΌοΈ Showcase

Desktop

terminal notifications wallpaper monkeytype

Neovim

Telescope Editor Go Code CMP

Appendix

Inspired By

About

My dotfiles always changing πŸ™ˆ

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •