20 changed files with 211 additions and 29 deletions
@ -0,0 +1,9 @@ |
|||
[submodule "external/nixos-hardware"] |
|||
path = external/nixos-hardware |
|||
url = git@github.com:NixOS/nixos-hardware.git |
|||
[submodule "external/nixpkgs"] |
|||
path = external/nixpkgs |
|||
url = git@github.com:NixOS/nixpkgs.git |
|||
[submodule "external/home-manager"] |
|||
path = external/home-manager |
|||
url = git@github.com:nix-community/home-manager.git |
@ -0,0 +1 @@ |
|||
external/ |
@ -0,0 +1,28 @@ |
|||
# Common options for all hosts. |
|||
|
|||
{ config, pkgs, ... }: |
|||
{ |
|||
imports = [ |
|||
./users |
|||
]; |
|||
|
|||
boot.cleanTmpDir = true; |
|||
|
|||
nix.autoOptimiseStore = true; |
|||
|
|||
nixpkgs.config.allowUnfree = true; |
|||
|
|||
services.journald.extraConfig = '' |
|||
SystemMaxUse=100M |
|||
MaxFileSec=7day |
|||
''; |
|||
|
|||
fonts.fonts = with pkgs; [ |
|||
noto-fonts |
|||
noto-fonts-cjk |
|||
noto-fonts-emoji |
|||
(nerdfonts.override { fonts = ["FiraCode" "DroidSansMono"]; }) |
|||
]; |
|||
|
|||
i18n.defaultLocale = "en_US.UTF-8"; |
|||
} |
@ -0,0 +1,20 @@ |
|||
{ pkgs, ... }: |
|||
{ |
|||
home-manager.useGlobalPkgs = true; |
|||
home-manager.users.nora = { |
|||
home.username = "nora"; |
|||
home.homeDirectory = "/home/nora"; |
|||
home.stateVersion = "22.05"; |
|||
|
|||
programs = { |
|||
home-manager.enable = true; |
|||
git = { |
|||
enable = true; |
|||
userName = "Leonora Tindall"; |
|||
userEmail = "nora@nora.codes"; |
|||
}; |
|||
}; |
|||
|
|||
services = {}; |
|||
}; |
|||
} |
@ -0,0 +1,15 @@ |
|||
{ pkgs, ...}: |
|||
{ |
|||
home-manager.users.nora = { |
|||
home.packages = with pkgs; [ |
|||
element-desktop |
|||
discord |
|||
tdesktop |
|||
mumble |
|||
|
|||
# TTS for mumble |
|||
speechd |
|||
arcan.espeak |
|||
]; |
|||
}; |
|||
} |
@ -0,0 +1,10 @@ |
|||
# Packages that make sense only for desktop-class machines |
|||
|
|||
{ pkgs, ...}: |
|||
{ |
|||
home-manager.users.nora = { |
|||
home.packages = with pkgs; [ |
|||
wally-cli # flash my ergodox |
|||
]; |
|||
}; |
|||
} |
@ -0,0 +1,16 @@ |
|||
{ pkgs, ...}: |
|||
{ |
|||
home-manager.users.nora = { |
|||
home.packages = with pkgs; [ |
|||
firefox |
|||
vlc |
|||
pavucontrol |
|||
kcharselect |
|||
glimpse |
|||
libreoffice |
|||
qrencode |
|||
xorg.xkill |
|||
xorg.xev |
|||
]; |
|||
}; |
|||
} |
@ -0,0 +1,8 @@ |
|||
{pkgs, ...}: |
|||
{ |
|||
home-manager.users.nora = { |
|||
home.packages = with pkgs; [ |
|||
(python39.withPackages (ps: with ps; [ pylint pyflakes flake8 pygments ])) |
|||
]; |
|||
}; |
|||
} |
@ -0,0 +1,9 @@ |
|||
{pkgs, ...}: |
|||
{ |
|||
home-manager.users.nora = { |
|||
home.packages = with pkgs; [ |
|||
rustup |
|||
evcxr |
|||
]; |
|||
}; |
|||
} |
@ -0,0 +1,20 @@ |
|||
{ pkgs, ...}: |
|||
{ |
|||
home-manager.users.nora = { |
|||
home.packages = with pkgs; [ |
|||
vim |
|||
curl |
|||
wget |
|||
dfc |
|||
htop |
|||
ripgrep |
|||
ncdu # disk usage analyzer |
|||
tldr # community man pages |
|||
jq |
|||
fd # replace find |
|||
rcm # manage dotfiles |
|||
killall |
|||
tree |
|||
]; |
|||
}; |
|||
} |
@ -0,0 +1,6 @@ |
|||
{ pkgs, ...}: |
|||
{ |
|||
users.nora.packages = with pkgs; [ |
|||
wally-cli # flash my ergodox |
|||
]; |
|||
} |
@ -0,0 +1,44 @@ |
|||
{ pkgs, ...}: |
|||
{ |
|||
packageOverrides = pkgs: with pkgs; rec { |
|||
|
|||
# Machines |
|||
Calembel = pkgs.buildEnv { |
|||
name = "calembel"; |
|||
paths = [ Terminal X Graphical Audio Rust ]; |
|||
}; |
|||
|
|||
X = pkgs.buildEnv { |
|||
name = "x-tools"; |
|||
paths = [ |
|||
xorg.xkill |
|||
xorg.xev |
|||
]; |
|||
}; |
|||
|
|||
Graphical = pkgs.buildEnv { |
|||
name = "graphical"; |
|||
paths = [ |
|||
element-desktop |
|||
discord |
|||
tdesktop |
|||
mumble |
|||
]; |
|||
}; |
|||
|
|||
Audio = pkgs.buildEnv { |
|||
name = "audio"; |
|||
paths = [ pulseeffects-pw pulsemixer audacity picard ]; |
|||
}; |
|||
|
|||
Rust = pkgs.buildEnv { |
|||
name = "rust"; |
|||
paths = [ evcxr rustup ]; |
|||
}; |
|||
|
|||
# Bugged; "found a set where a list was expected", whatever that means. |
|||
Python = pkgs.buildEnv { |
|||
name = "python"; |
|||
paths = (python39.withPackages (ps: with ps; [ pylint pyflakes flake8 pygments ])); |
|||
}; |
|||
};} |
@ -0,0 +1,12 @@ |
|||
{ pkgs, ...}: |
|||
{ |
|||
imports = [ |
|||
../../common/home_manager/common.nix |
|||
../../common/home_manager/desktop.nix |
|||
../../common/home_manager/terminal.nix |
|||
../../common/home_manager/graphical.nix |
|||
../../common/home_manager/communication.nix |
|||
../../common/home_manager/rust.nix |
|||
../../common/home_manager/python.nix |
|||
]; |
|||
} |
Loading…
Reference in new issue