Reduce the number of files

This commit is contained in:
Dave Gallant
2024-02-26 16:10:32 -05:00
parent 574c8febc5
commit 0290229761
13 changed files with 337 additions and 380 deletions

View File

@@ -1,3 +0,0 @@
{pkgs, ...}: {
nix.extraOptions = "experimental-features = nix-command flakes";
}

View File

@@ -1,101 +0,0 @@
{pkgs, ...}: {
boot.kernelPackages = pkgs.linuxPackages;
boot.supportedFilesystems = ["ntfs"];
system = {
autoUpgrade.enable = true;
stateVersion = "23.11";
};
nix = {
extraOptions = "experimental-features = nix-command flakes";
package = pkgs.nixUnstable;
};
users.users.dave = {
isNormalUser = true;
extraGroups = ["docker" "wheel" "libvirtd" "corectrl"];
shell = pkgs.zsh;
};
i18n.defaultLocale = "en_US.UTF-8";
console = {
font = "Lat2-Terminus16";
keyMap = "us";
};
time.timeZone = "America/Toronto";
hardware.pulseaudio.enable = true;
# Enable Vulkan
hardware.opengl.driSupport = true;
hardware.opengl.driSupport32Bit = true;
# Enable Steam
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [libva];
hardware.pulseaudio.support32Bit = true;
programs.steam = {
enable = true;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
virtualisation = {
docker.enable = true;
libvirtd.enable = true;
podman.enable = true;
};
programs = {
corectrl.enable = true;
gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
zsh.enable = true;
};
services = {
avahi = {
enable = true;
nssmdns = true;
publish = {
enable = true;
addresses = true;
domain = true;
hinfo = true;
userServices = true;
workstation = true;
};
};
gnome.gnome-keyring.enable = true;
mullvad-vpn.enable = false;
printing.enable = true;
resolved.enable = true;
xserver = {
enable = true;
displayManager = {
gdm = {
enable = true;
wayland = false;
};
};
desktopManager = {
gnome = {
enable = true;
};
};
};
};
networking = {
iproute2.enable = true;
firewall = {
allowPing = false;
enable = true;
checkReversePath = "loose";
trustedInterfaces = ["tailscale0"];
};
};
}

View File

@@ -1,8 +1,17 @@
{
config,
lib,
pkgs,
...
}: {
}: let
checkBrew = "command -v brew > /dev/null";
in {
users.users."dave.gallant".home = "/Users/dave.gallant";
environment = {
extraInit = ''
${checkBrew} || >&2 echo "brew is not installed (install it via https://brew.sh)"
'';
};
system.defaults = {
loginwindow = {
GuestEnabled = false;
@@ -54,4 +63,47 @@
AppleShowScrollBars = "Automatic";
};
};
homebrew = {
enable = true;
onActivation.autoUpdate = false;
onActivation.upgrade = false;
global = {
brewfile = true;
};
brews = [
"coreutils"
"gnu-sed"
"gnu-tar"
"netdata"
"node"
"podman"
"podman-compose"
];
casks = [
"dbeaver-community"
"font-fira-code-nerd-font"
"font-hack-nerd-font"
"karabiner-elements"
"logseq"
"lulu"
"notunes"
"obsidian"
"podman-desktop"
"postman"
"raycast"
"rectangle"
"stats"
"warp"
];
taps = [
"homebrew/bundle"
"homebrew/cask-fonts"
"homebrew/cask-versions"
"homebrew/services"
];
};
}

View File

@@ -1,57 +0,0 @@
{
config,
lib,
pkgs,
...
}: let
checkBrew = "command -v brew > /dev/null";
in {
environment = {
extraInit = ''
${checkBrew} || >&2 echo "brew is not installed (install it via https://brew.sh)"
'';
};
homebrew = {
enable = true;
onActivation.autoUpdate = false;
onActivation.upgrade = false;
global = {
brewfile = true;
};
brews = [
"coreutils"
"gnu-sed"
"gnu-tar"
"netdata"
"node"
"podman"
"podman-compose"
];
casks = [
"dbeaver-community"
"font-fira-code-nerd-font"
"font-hack-nerd-font"
"karabiner-elements"
"logseq"
"lulu"
"notunes"
"obsidian"
"podman-desktop"
"postman"
"raycast"
"rectangle"
"stats"
"warp"
];
taps = [
"homebrew/bundle"
"homebrew/cask-fonts"
"homebrew/cask-versions"
"homebrew/services"
];
};
}

View File

@@ -1,7 +0,0 @@
{pkgs, ...}: {
users.users."dave.gallant".home = "/Users/dave.gallant";
imports = [
./brew.nix
./preferences.nix
];
}

View File

@@ -1,6 +1,7 @@
{
config,
pkgs,
unstable,
...
}: {
imports = [./hardware.nix];
@@ -10,6 +11,7 @@
nixpkgs.config.allowUnfree = true;
networking = {
iproute2.enable = true;
hostName = "hephaestus";
interfaces.enp34s0 = {
useDHCP = true;
@@ -19,13 +21,163 @@
41641 # tailscale
];
};
firewall = {
allowPing = false;
enable = true;
checkReversePath = "loose";
trustedInterfaces = ["tailscale0"];
};
};
systemd.services.NetworkManager-wait-online.enable = false;
boot.kernelPackages = pkgs.linuxPackages;
boot.supportedFilesystems = ["ntfs"];
system = {
autoUpgrade.enable = true;
stateVersion = "23.11";
};
nix = {
extraOptions = "experimental-features = nix-command flakes";
package = pkgs.nixUnstable;
};
users.users.dave = {
isNormalUser = true;
extraGroups = ["docker" "wheel" "libvirtd" "corectrl"];
shell = pkgs.zsh;
};
i18n.defaultLocale = "en_US.UTF-8";
console = {
font = "Lat2-Terminus16";
keyMap = "us";
};
time.timeZone = "America/Toronto";
hardware.pulseaudio.enable = true;
# Vulkan
hardware.opengl.driSupport = true;
hardware.opengl.driSupport32Bit = true;
# Steam
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [libva];
hardware.pulseaudio.support32Bit = true;
programs.steam = {
enable = true;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
virtualisation = {
docker.enable = true;
libvirtd.enable = true;
podman.enable = true;
};
programs = {
corectrl.enable = true;
gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
zsh.enable = true;
};
services = {
avahi = {
enable = true;
nssmdns = true;
publish = {
enable = true;
addresses = true;
domain = true;
hinfo = true;
userServices = true;
workstation = true;
};
};
gnome.gnome-keyring.enable = true;
mullvad-vpn.enable = false;
printing.enable = true;
resolved.enable = true;
sshd.enable = true;
tailscale.enable = true;
xserver.videoDrivers = ["amdgpu"];
xserver = {
enable = true;
displayManager = {
gdm = {
enable = true;
wayland = false;
};
};
desktopManager = {
gnome = {
enable = true;
};
};
};
};
environment.systemPackages = with pkgs; [
android-tools
bitwarden
cryptsetup
deja-dup
discord
docker
docker-compose
foliate
ghostscript
gimp-with-plugins
glibcLocales
gnome.gnome-tweaks
gnomeExtensions.appindicator
gnomeExtensions.bluetooth-quick-connect
gnomeExtensions.blur-my-shell
gnomeExtensions.caffeine
gnomeExtensions.clipboard-indicator
gnomeExtensions.dash-to-dock
gnomeExtensions.grand-theft-focus
gnomeExtensions.notification-banner-reloaded
gnomeExtensions.quick-settings-tweaker
gnomeExtensions.tailscale-status
gnomeExtensions.tray-icons-reloaded
iputils
kazam
legendary-gl
lm_sensors
mullvad-vpn
netdata
nfs-utils
pavucontrol
pinentry-curses
podman
podman-compose
psst
qemu
rustup
ryujinx
signal-desktop
strace
tailscale
traceroute
ungoogled-chromium
unstable.logseq
unstable.obsidian
unstable.yuzu
unstable.zoom-us
usbutils
virt-manager
vlc
whois
wine
wine64
wireshark-qt
];
}

View File

@@ -5,8 +5,9 @@
networking = {hostName = "zelus";};
# Auto upgrade nix package and the daemon service.
services.nix-daemon.enable = true;
nix.extraOptions = "experimental-features = nix-command flakes";
nix.package = pkgs.nixVersions.stable;
programs.zsh = {

View File

@@ -1,5 +1,4 @@
final: prev: {
rfd = prev.callPackage ./rfd {};
tmux-sessionizer = prev.callPackage ./tmux-sessionizer {};
vpngate = prev.callPackage ./vpngate {};
}

126
modules/packages.nix Normal file
View File

@@ -0,0 +1,126 @@
{
config,
lib,
pkgs,
unstable,
...
}: let
inherit (pkgs) stdenv;
in {
environment.systemPackages = with pkgs; [
# essentials
curl
gcc
gnumake
gnupg
imagemagick
jq
unzip
viddy
wget
xclip
xdg-utils
zip
# modern cli
bat
eza
fd
hadolint
nodePackages.eslint
oha
pre-commit
progress
ripgrep
shellcheck
shfmt
starship
tldr
tmux-sessionizer
unstable.atuin
unstable.github-cli
yq-go
# containers
krew
kubecolor
kubectl
kubectx
minikube
stern
unstable.helm-docs
unstable.kubernetes-helm
unstable.k9s
unstable.skaffold
# cloud
unstable.awscli2
unstable.azure-cli
unstable.google-cloud-sdk
# LSP
nodePackages.bash-language-server
nodePackages.pyright
nodePackages.yaml-language-server
sumneko-lua-language-server
terraform-ls
# monitoring
ctop
glances
grafana-loki
htop
procs
# lua
lua53Packages.luacheck
stylua
# golang
gofumpt
golangci-lint
gopls
# rust
rustup
# js
nodejs
nodePackages.prettier
nodePackages.yarn
# networking
arp-scan
dnsutils
iperf
nmap
openssl
openvpn
sshfs # mac requires https://osxfuse.github.io/
vpngate
# rice
neofetch
pfetch
# nix
alejandra
cachix
nix-diff
nix-tree
nixfmt
nixpkgs-fmt
nixpkgs-review
rnix-lsp
# python
poetry
python310
python310Packages.black
python310Packages.ipython
python310Packages.pip
python310Packages.poetry-core
python310Packages.setuptools
python310Packages.virtualenv
];
}

View File

@@ -1,131 +0,0 @@
{
config,
lib,
pkgs,
unstable,
...
}: let
inherit (pkgs) stdenv;
in {
environment.systemPackages = with pkgs; let
common = [
# essentials
curl
gcc
gnumake
gnupg
imagemagick
jq
unzip
viddy
wget
xclip
xdg-utils
zip
# modern cli
bat
eza
fd
hadolint
nodePackages.eslint
oha
pre-commit
progress
ripgrep
shellcheck
shfmt
starship
tldr
tmux-sessionizer
unstable.atuin
unstable.github-cli
yq-go
# containers
krew
kubecolor
kubectl
kubectx
minikube
stern
unstable.helm-docs
unstable.kubernetes-helm
unstable.k9s
unstable.skaffold
# cloud
unstable.awscli2
unstable.azure-cli
unstable.google-cloud-sdk
# LSP
nodePackages.bash-language-server
nodePackages.pyright
nodePackages.yaml-language-server
sumneko-lua-language-server
terraform-ls
# monitoring
ctop
glances
grafana-loki
htop
procs
# lua
lua53Packages.luacheck
stylua
# golang
gofumpt
golangci-lint
gopls
# rust
rustup
# js
nodejs
nodePackages.prettier
nodePackages.yarn
# networking
arp-scan
dnsutils
iperf
nmap
openssl
openvpn
sshfs # mac requires https://osxfuse.github.io/
vpngate
# rice
neofetch
pfetch
# nix
alejandra
cachix
nix-diff
nix-tree
nixfmt
nixpkgs-fmt
nixpkgs-review
rnix-lsp
# python
poetry
python310
python310Packages.black
python310Packages.ipython
python310Packages.pip
python310Packages.poetry-core
python310Packages.setuptools
python310Packages.virtualenv
];
in
common;
programs.gnupg.agent.enable = true;
}

View File

@@ -1,71 +0,0 @@
{
config,
lib,
pkgs,
unstable,
...
}: let
inherit (pkgs) stdenv;
in {
environment.systemPackages = with pkgs; let
linux = [
android-tools
bitwarden
cryptsetup
deja-dup
discord
docker
docker-compose
foliate
ghostscript
gimp-with-plugins
glibcLocales
gnome.gnome-tweaks
gnomeExtensions.appindicator
gnomeExtensions.bluetooth-quick-connect
gnomeExtensions.blur-my-shell
gnomeExtensions.caffeine
gnomeExtensions.clipboard-indicator
gnomeExtensions.dash-to-dock
gnomeExtensions.grand-theft-focus
gnomeExtensions.notification-banner-reloaded
gnomeExtensions.quick-settings-tweaker
gnomeExtensions.tailscale-status
gnomeExtensions.tray-icons-reloaded
iputils
kazam
legendary-gl
lm_sensors
mullvad-vpn
netdata
nfs-utils
pavucontrol
pinentry-curses
podman
podman-compose
psst
qemu
rustup
ryujinx
signal-desktop
strace
tailscale
traceroute
ungoogled-chromium
unstable.logseq
unstable.obsidian
unstable.yuzu
unstable.zoom-us
usbutils
virt-manager
vlc
whois
wine
wine64
wireshark-qt
];
in
linux;
programs.gnupg.agent.enable = true;
}

View File

@@ -19,8 +19,8 @@
};
defaultModules = [
home-manager.nixosModules.home-manager
./modules/common/fonts.nix
./modules/packages/common.nix
./modules/fonts.nix
./modules/packages.nix
./modules/upgrade-diff.nix
({
@@ -71,8 +71,6 @@
})
];
desktopLinuxModules = [
./modules/common/linux.nix
./modules/packages/linux.nix
./modules/services/netdata/default.nix
];
in {
@@ -100,10 +98,9 @@
modules = [
home-manager.darwinModules.home-manager
./modules/common/darwin.nix
./modules/packages/common.nix
./modules/darwin.nix
./modules/machines/zelus/configuration.nix
./modules/darwin/default.nix
./modules/packages.nix
./modules/upgrade-diff.nix
({config, ...}: {