Compare commits

..

4 Commits

Author SHA1 Message Date
Noah Masur
450118d234 remove dead code with deadnix 2023-02-20 20:45:56 -05:00
Noah Masur
cc84f1d37a move nixos and darwin back into modules dir 2023-02-20 20:37:37 -05:00
Noah Masur
ded498f4c9 switch from uuid to label disks 2023-02-20 20:30:45 -05:00
Noah Masur
0d0ee1fc5a improve readme clarity 2023-02-20 20:26:14 -05:00
172 changed files with 70 additions and 68 deletions

View File

@ -1,3 +1,5 @@
# System Configurations
This repository contains configuration files for my NixOS, macOS, and WSL This repository contains configuration files for my NixOS, macOS, and WSL
hosts. hosts.
@ -6,31 +8,31 @@ configuration may be difficult to translate to a non-Nix system.
However, some of the configurations are easier to lift directly: However, some of the configurations are easier to lift directly:
- [Neovim](https://github.com/nmasur/dotfiles/tree/master/modules/neovim/config) - [Neovim](https://github.com/nmasur/dotfiles/tree/master/modules/common/neovim/config)
- [Fish functions](https://github.com/nmasur/dotfiles/tree/master/modules/shell/fish/functions) - [Fish functions](https://github.com/nmasur/dotfiles/tree/master/modules/common/shell/fish/functions)
- [More fish aliases](https://github.com/nmasur/dotfiles/blob/master/modules/shell/fish/default.nix) - [More fish aliases](https://github.com/nmasur/dotfiles/blob/master/modules/common/shell/fish/default.nix)
- [Git aliases](https://github.com/nmasur/dotfiles/blob/master/modules/shell/git.nix) - [Git aliases](https://github.com/nmasur/dotfiles/blob/master/modules/common/shell/git.nix)
- [Hammerspoon](https://github.com/nmasur/dotfiles/tree/master/modules/darwin/hammerspoon) - [Hammerspoon](https://github.com/nmasur/dotfiles/tree/master/modules/darwin/hammerspoon)
Try out my Neovim config: Try out my Neovim config (requires [nix](https://nixos.org/download.html)):
```bash ```bash
nix run github:nmasur/dotfiles#neovim nix run github:nmasur/dotfiles#neovim
``` ```
Or build it as a package: Or build it as a package (requires [nix](https://nixos.org/download.html)):
```bash ```bash
nix build github:nmasur/dotfiles#neovim nix build github:nmasur/dotfiles#neovim
``` ```
If you already have a Neovim configuration, you may need to move it out of 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 `~/.config/nvim` or set `XDG_CONFIG_HOME` to another value; otherwise both
configs might conflict with each other. configs might conflict with each other.
--- ---
# Installation # Full Installation
## NixOS - From Live Disk ## NixOS - From Live Disk
@ -42,7 +44,7 @@ installer disk:
```bash ```bash
lsblk # Choose the disk you want to wipe lsblk # Choose the disk you want to wipe
nix-shell -p nixVersions.stable nix-shell -p nixVersions.stable
nix run github:nmasur/dotfiles#installer -- nvme0n1 desktop nix run github:nmasur/dotfiles#installer -- nvme0n1 tempest
``` ```
## NixOS - From Existing System ## NixOS - From Existing System
@ -63,7 +65,7 @@ the WSL configuration:
``` ```
nix-shell -p nixVersions.stable nix-shell -p nixVersions.stable
sudo nixos-rebuild switch --flake github:nmasur/dotfiles#flame sudo nixos-rebuild switch --flake github:nmasur/dotfiles#hydra
``` ```
You should also download the You should also download the

View File

@ -57,7 +57,7 @@
neovim = { neovim = {
type = "app"; type = "app";
program = "${ program = "${
(import ../modules/neovim/package { (import ../modules/common/neovim/package {
inherit pkgs; inherit pkgs;
colors = colors =
import ../colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; }; import ../colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; };

View File

@ -94,7 +94,7 @@
}; };
outputs = { self, nixpkgs, ... }@inputs: outputs = { nixpkgs, ... }@inputs:
let let
@ -161,7 +161,7 @@
}; };
neovim = let pkgs = import nixpkgs { inherit system overlays; }; neovim = let pkgs = import nixpkgs { inherit system overlays; };
in import ./modules/neovim/package { in import ./modules/common/neovim/package {
inherit pkgs; inherit pkgs;
colors = colors =
import ./colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; }; import ./colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; };

View File

@ -15,16 +15,16 @@ nixos-generators.nixosGenerate {
gitEmail = globals.gitEmail; gitEmail = globals.gitEmail;
networking.hostName = "sheep"; networking.hostName = "sheep";
gui.enable = false; gui.enable = false;
colorscheme = (import ../modules/colorscheme/gruvbox); colorscheme = (import ../colorscheme/gruvbox);
passwordHash = null; passwordHash = null;
publicKey = publicKey =
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s"; "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s";
# AWS settings require this # AWS settings require this
permitRootLogin = "prohibit-password"; permitRootLogin = "prohibit-password";
} }
../../hosts/common.nix ../../modules/common
../../modules/nixos ../../modules/nixos
../../modules/services/sshd.nix ../../modules/common/services/sshd.nix
] ++ [ ] ++ [
# Required to fix diskSize errors during build # Required to fix diskSize errors during build
({ ... }: { amazonImage.sizeMB = 16 * 1024; }) ({ ... }: { amazonImage.sizeMB = 16 * 1024; })

View File

@ -1,7 +1,7 @@
# The Staff # The Staff
# ISO configuration for my USB drive # ISO configuration for my USB drive
{ inputs, globals, system, overlays, ... }: { inputs, system, ... }:
with inputs; with inputs;

View File

@ -13,8 +13,8 @@ nixpkgs.lib.nixosSystem {
specialArgs = { }; specialArgs = { };
modules = [ modules = [
./hardware-configuration.nix ./hardware-configuration.nix
../../modules ../../modules/common
../../nixos ../../modules/nixos
(removeAttrs globals [ "mail.server" ]) (removeAttrs globals [ "mail.server" ])
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager

View File

@ -1,7 +1,7 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: { lib, modulesPath, ... }:
{ {
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ]; imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];

View File

@ -9,8 +9,8 @@ nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { }; specialArgs = { };
modules = [ modules = [
../../modules ../../modules/common
../../nixos ../../modules/nixos
globals globals
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager

View File

@ -9,8 +9,8 @@ darwin.lib.darwinSystem {
system = "x86_64-darwin"; system = "x86_64-darwin";
specialArgs = { }; specialArgs = { };
modules = [ modules = [
../../modules ../../modules/common
../../darwin ../../modules/darwin
(globals // { (globals // {
user = "Noah.Masur"; user = "Noah.Masur";
gitName = "Noah-Masur_1701"; gitName = "Noah-Masur_1701";

View File

@ -10,8 +10,8 @@ nixpkgs.lib.nixosSystem {
specialArgs = { }; specialArgs = { };
modules = [ modules = [
./hardware-configuration.nix ./hardware-configuration.nix
../../modules ../../modules/common
../../nixos ../../modules/nixos
(removeAttrs globals [ "mail.server" ]) (removeAttrs globals [ "mail.server" ])
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager

View File

@ -10,8 +10,8 @@ nixpkgs.lib.nixosSystem {
specialArgs = { }; specialArgs = { };
modules = [ modules = [
./hardware-configuration.nix ./hardware-configuration.nix
../../modules ../../modules/common
../../nixos ../../modules/nixos
globals globals
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager

View File

@ -1,7 +1,7 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: { config, lib, modulesPath, ... }:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
@ -15,12 +15,12 @@
services.xserver.videoDrivers = [ "amdgpu" ]; services.xserver.videoDrivers = [ "amdgpu" ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/f0313f58-971a-46e3-9191-909fe5eb7f7e"; device = "/dev/disk/by-label/nixos";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/FB26-799C"; device = "/dev/disk/by-label/boot";
fsType = "vfat"; fsType = "vfat";
}; };
@ -34,7 +34,7 @@
# networking.interfaces.enp5s0.useDHCP = lib.mkDefault true; # networking.interfaces.enp5s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
hardware.cpu.amd.updateMicrocode = hardware.cpu.amd.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware; lib.mkDefault config.hardware.enableRedistributableFirmware;
} }

View File

@ -1,7 +1,7 @@
{ pkgs, ... }: { { pkgs, ... }: {
plugins = [ plugins = [
(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins: (pkgs.vimPlugins.nvim-treesitter.withPlugins (_plugins:
with pkgs.tree-sitter-grammars; [ with pkgs.tree-sitter-grammars; [
tree-sitter-hcl tree-sitter-hcl
tree-sitter-python tree-sitter-python

View File

@ -13,16 +13,16 @@
# in pkgs.neovimBuilder { # in pkgs.neovimBuilder {
# package = pkgs.neovim-unwrapped; # package = pkgs.neovim-unwrapped;
# imports = [ # imports = [
# ./modules/neovim/plugins/bufferline.nix # ./modules/common/neovim/plugins/bufferline.nix
# ./modules/neovim/plugins/completion.nix # ./modules/common/neovim/plugins/completion.nix
# ./modules/neovim/plugins/gitsigns.nix # ./modules/common/neovim/plugins/gitsigns.nix
# ./modules/neovim/plugins/lsp.nix # ./modules/common/neovim/plugins/lsp.nix
# ./modules/neovim/plugins/misc.nix # ./modules/common/neovim/plugins/misc.nix
# ./modules/neovim/plugins/statusline.nix # ./modules/common/neovim/plugins/statusline.nix
# ./modules/neovim/plugins/syntax.nix # ./modules/common/neovim/plugins/syntax.nix
# ./modules/neovim/plugins/telescope.nix # ./modules/common/neovim/plugins/telescope.nix
# ./modules/neovim/plugins/toggleterm.nix # ./modules/common/neovim/plugins/toggleterm.nix
# ./modules/neovim/plugins/tree.nix # ./modules/common/neovim/plugins/tree.nix
# ] ++ extraConfig; # ] ++ extraConfig;
# } # }

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { ... }: {
imports = [ imports = [
./haskell.nix ./haskell.nix

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { config, lib, ... }: {
options.haskell.enable = lib.mkEnableOption "Haskell programming language."; options.haskell.enable = lib.mkEnableOption "Haskell programming language.";

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { config, pkgs, ... }: {
users.users.${config.user}.shell = pkgs.fish; users.users.${config.user}.shell = pkgs.fish;
programs.fish.enable = programs.fish.enable =

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { config, pkgs, ... }: {
home-manager.users.${config.user} = { home-manager.users.${config.user} = {
programs.fish = { programs.fish = {

View File

@ -19,8 +19,8 @@ in {
# Fix: age won't build # Fix: age won't build
nixpkgs.overlays = [ nixpkgs.overlays = [
(final: prev: { (_final: prev: {
age = prev.age.overrideAttrs (old: { age = prev.age.overrideAttrs (_old: {
src = prev.fetchFromGitHub { src = prev.fetchFromGitHub {
owner = "FiloSottile"; owner = "FiloSottile";
repo = "age"; repo = "age";

View File

@ -1,4 +1,4 @@
{ config, ... }: { { ... }: {
imports = [ imports = [
./alacritty.nix ./alacritty.nix

Some files were not shown because too many files have changed in this diff Show More