Skip to content
jfulfoPublic
forked from 658060/.dotfiles

About

personal NixOS dotfiles.

Resources

Stars

1 star

Watchers

0 watching

Forks

 
 

Repository files navigation

jamie's dotfiles

this is a fork of charlotte's dotfiles.

Warning

don't use these dotfiles if you don't know what you're doing. they can brick your machine. charlotte is not responsible if you use them to brick your machine.

the content of these dotfiles started as a fork of ZaneyOS. however, much of the content has been completely overhauled, including:

and more. also, some code (especially that of the waybar) is directly taken/converted into nix from JaKooLit's dotfiles, which is a modified version of JaKooLit's catppuccin-mocha themed waybar. attributions are in comments in every file where code was copied, so one may search this repo for "JaKooLit" to find that code.

documentation

DOCUMENTATION.md documents the structure of this flake for human readers. CONTEXT.md and the architecture decision records under docs/adr/ are machine-readable documentation.

how to use

this repo should be cloned into ~/.dotfiles.

building this flake

  1. ensure NixOS is installed.
  2. ensure that the optional settings nix-command and flake are enabled:
nix.settings.experimental-features = [ "nix-command" "flakes" ];
  1. ensure there is a folder hosts/YOUR_HOSTNAME, where YOUR_HOSTNAME is the machine's actual hostname. the folder hosts/kamakiri can serve as a template. flake.nix auto-discovers every folder under hosts/ and builds one configuration per hostname, so flake.nix itself is never edited. the folder needs:
    • hardware.nix, which is exactly the same as the file hardware-configuration.nix obtained when the command nixos-generate-config is run.
    • variables.nix, in which:
      • the profile variable corresponds to the device's hardware. it should be set to one of the names of the folders in ~/.dotfiles/profiles. for example, a laptop with an nvidia gpu should have profile set to nvidia-laptop.
      • the user variable is set to your username.
    • default.nix, which can be left exactly as the template has it.
  2. ensure the host folder is tracked by git. the flake reads tracked files only, so a brand new host folder will be invisible to it until it is added with git add hosts/YOUR_HOSTNAME.
  3. run the following commands:
nix shell nixpkgs#nh
nh os switch ~/.dotfiles --hostname $(hostname)

if this flake has already been built and is currently running on the machine, run

fr

to rebuild after making changes. to update system packages, run

fu

instead.

creating an iso image

to build an iso image out of this flake, run

nix build .#nixosConfigurations.iso.config.system.build.isoImage

the output will be stored in ./result/iso/. to burn this to drive /dev/sdX, run

sudo dd if=~/.dotfiles/result/iso/ISO_NAME.iso bs=16M of=/dev/sdX status=progress oflag=sync

replacing ISO_NAME.iso with the actual name of the file located there. be warned, running the above command on the wrong drive will ruin a drive. use at your own risk.

About

personal NixOS dotfiles.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages