Go to file
Noah Masur d021baa1bb split nixos from darwin
required because they don't share all attributes
2022-12-21 17:07:58 -07:00
apps convert to proper module layout 2022-12-21 14:18:03 -07:00
colorscheme convert to proper module layout 2022-12-21 14:18:03 -07:00
darwin split nixos from darwin 2022-12-21 17:07:58 -07:00
hosts split nixos from darwin 2022-12-21 17:07:58 -07:00
legacy remove some legacy config files 2022-07-26 00:09:25 -04:00
modules split nixos from darwin 2022-12-21 17:07:58 -07:00
nixos split nixos from darwin 2022-12-21 17:07:58 -07:00
patches fixes for oracle when updating to latest 2022-12-06 17:56:29 +00:00
private put hashed pass in a separate file 2022-11-02 21:47:11 -04:00
templates fixes for python lsp 2022-12-11 09:52:32 -07:00
windows use shift+enter for completion in terminal 2022-10-31 20:47:33 -04:00
.envrc more flakiness 2022-04-27 09:23:26 -04:00
.gitignore put hashed pass in a separate file 2022-11-02 21:47:11 -04:00
.stylua.toml refactor colors and options 2022-11-02 21:29:14 -04:00
flake.lock update lockfile 2022-12-20 18:23:00 -07:00
flake.nix convert to proper module layout 2022-12-21 14:18:03 -07:00
LICENSE add MIT license 2022-07-27 19:03:31 -04:00
README.md add gum formatting for default app 2022-12-06 17:40:13 -07:00

This repository contains configuration files for my NixOS, macOS, and WSL hosts.

They are organized and managed by Nix, so some of the configuration may be difficult to translate to a non-Nix system.

However, some of the configurations are easier to lift directly:

Try out my Neovim config:

nix run github:nmasur/dotfiles#neovim

Or build it as a package:

nix build github:nmasur/dotfiles#neovim

If you already have a Neovim configuration, you may need to move it out of ~/.config/nvim or set XDG_CONFIG_HOME to another value; otherwise, both configs might conflict with each other.


Installation

NixOS - From Live Disk

Format drives and build system from any NixOS host, including the live installer disk:

This will erase your drives; use at your own risk!

lsblk # Choose the disk you want to wipe
nix-shell -p nixVersions.stable
nix run github:nmasur/dotfiles#installer -- nvme0n1 desktop

NixOS - From Existing System

If you're already running NixOS, you can switch to this configuration with the following command:

nix-shell -p nixVersions.stable
sudo nixos-rebuild switch --flake github:nmasur/dotfiles#desktop

Windows - From NixOS WSL

After installing NixOS on WSL, you can switch to the WSL configuration:

nix-shell -p nixVersions.stable
sudo nixos-rebuild switch --flake github:nmasur/dotfiles#wsl

You should also download the FiraCode font and install it on Windows. Install Alacritty and move the windows/alacritty.yml file to C:\Users\<user>\AppData\Roaming\alacritty.

macOS

To get started on a bare macOS installation, first install Nix:

sh -c "$(curl -L https://nixos.org/nix/install)"

Then use Nix to build nix-darwin:

nix-build https://github.com/LnL7/nix-darwin/archive/master.tar.gz -A installer
./result/bin/darwin-installer

Then switch to the macOS configuration:

darwin-rebuild switch --flake github:nmasur/dotfiles#macbook

Dealing with corporate MITM SSL certificates:

# Get the certificates
openssl s_client -showcerts -verify 5 -connect cache.nixos.org:443 < /dev/null

# Paste them in here
sudo nvim $NIX_SSL_CERT_FILE

Flake Templates

You can also use the templates as flakes for starting new projects:

nix flake init --template github:nmasur/dotfiles#poetry