Compare commits

..

No commits in common. "0c1b65bb2ac7a4eeb8be2dc23e52e86163a1c149" and "f95018e7f62b765ce846360891170158361b31db" have entirely different histories.

56 changed files with 410 additions and 674 deletions

View File

@ -1,2 +0,0 @@
# nixfmt all
90ccaa07bd0dc2235af7fdd37909e17f637e9cab

View File

@ -21,14 +21,13 @@
}; };
outputs = outputs =
{ { self
self, , nixpkgs
nixpkgs, , nixpkgs-stable
nixpkgs-stable, , sops-nix
sops-nix, , ghettoptt
ghettoptt, , huecli
huecli, , ...
...
}@inputs: }@inputs:
let let
system = "x86_64-linux"; system = "x86_64-linux";
@ -45,69 +44,54 @@
"x86_64-darwin" "x86_64-darwin"
"aarch64-darwin" "aarch64-darwin"
]; ];
forAllSystems = forAllSystems = f: nixpkgs.lib.genAttrs allSystems (system: f {
f: nixpkgs.lib.genAttrs allSystems (system: f { pkgs = import nixpkgs { inherit system; }; }); pkgs = import nixpkgs { inherit system; };
});
in in
{ {
nixosConfigurations = { nixosConfigurations = {
prismo = nixpkgs.lib.nixosSystem { prismo = nixpkgs.lib.nixosSystem {
inherit system; inherit system;
specialArgs = { specialArgs = { inherit inputs self user; };
inherit inputs self user;
};
modules = [ ./hosts/prismo ]; modules = [ ./hosts/prismo ];
}; };
magicman = nixpkgs.lib.nixosSystem { magicman = nixpkgs.lib.nixosSystem {
inherit system; inherit system;
specialArgs = { specialArgs = { inherit inputs self user; };
inherit inputs self user;
};
modules = [ modules = [
( ({ config, pkgs, ... }: {
{ config, pkgs, ... }: nixpkgs.overlays = [
{ overlay-stable
nixpkgs.overlays = [ ghettoptt.overlays.default
overlay-stable huecli.overlays.default
ghettoptt.overlays.default ];
huecli.overlays.default })
];
}
)
./hosts/magicman ./hosts/magicman
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
]; ];
}; };
gunter = nixpkgs.lib.nixosSystem { gunter = nixpkgs.lib.nixosSystem {
inherit system; inherit system;
specialArgs = { specialArgs = { inherit inputs self user sops-nix; };
inherit
inputs
self
user
sops-nix
;
};
modules = [ modules = [
( ({ config, pkgs, ... }: {
{ config, pkgs, ... }: nixpkgs.overlays = [
{ overlay-stable
nixpkgs.overlays = [ ghettoptt.overlays.default
overlay-stable huecli.overlays.default
ghettoptt.overlays.default ];
huecli.overlays.default })
];
}
)
./hosts/gunter ./hosts/gunter
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
]; ];
}; };
}; };
devShells = forAllSystems ( devShells = forAllSystems ({ pkgs }: {
{ pkgs }: default = pkgs.mkShell {
{ packages = with pkgs; [
default = pkgs.mkShell { packages = with pkgs; [ pre-commit ]; }; pre-commit
} ];
); };
});
}; };
} }

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
programs = { programs = {
neovim = { neovim = {
enable = true; enable = true;
@ -46,7 +45,7 @@
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
# nix stuff # nix stuff
nixfmt-rfc-style nixpkgs-fmt
statix statix
# LSPs # LSPs

View File

@ -62,7 +62,7 @@ lspconfig.nil_ls.setup({
settings = { settings = {
['nil'] = { ['nil'] = {
formatting = { formatting = {
command = { "nixfmt" }, command = { "nixpkgs-fmt" },
}, },
}, },
}, },

View File

@ -1,48 +1,38 @@
{ { pkgs, inputs, user, ... }: {
pkgs,
inputs,
user,
...
}:
{
imports = [ inputs.home-manager.nixosModules.home-manager ]; imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager = { home-manager = {
useUserPackages = true; useUserPackages = true;
useGlobalPkgs = true; useGlobalPkgs = true;
extraSpecialArgs = { extraSpecialArgs = { inherit pkgs inputs user; };
inherit pkgs inputs user; users.${user} = { pkgs, ... }: {
}; imports = [
users.${user} = inputs.sops-nix.homeManagerModules.sops
{ pkgs, ... }: ./sops
{ ./editor/neovim
imports = [ ./programs/firefox
inputs.sops-nix.homeManagerModules.sops ./programs/tmux
./sops ./programs/dunst
./editor/neovim ./programs/kitty
./programs/firefox ./programs/rofi
./programs/tmux ./programs/obs-studio
./programs/dunst ./programs/vscode
./programs/kitty ./scripts
./programs/rofi ./zsh
./programs/obs-studio ./packages
./programs/vscode ./hyprland/gunter.nix
./scripts ./ssh
./zsh ./services/backup-home.nix
./packages ./services/ghettoptt.nix
./hyprland/gunter.nix ];
./ssh firefox.enable = true;
./services/backup-home.nix tmux.enable = true;
./services/ghettoptt.nix hyprland.enable = true;
]; home = {
firefox.enable = true; username = "${user}";
tmux.enable = true; homeDirectory = "/home/${user}";
hyprland.enable = true; stateVersion = "23.11";
home = {
username = "${user}";
homeDirectory = "/home/${user}";
stateVersion = "23.11";
};
programs.home-manager.enable = true;
}; };
programs.home-manager.enable = true;
};
}; };
} }

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
home.pointerCursor = { home.pointerCursor = {
gtk.enable = true; gtk.enable = true;
# x11.enable = true; # x11.enable = true;

View File

@ -1,8 +1 @@
{ { imports = [ ./hyprland_gunter.nix ./waybar ./xdg.nix ./cursor.nix ]; }
imports = [
./hyprland_gunter.nix
./waybar
./xdg.nix
./cursor.nix
];
}

View File

@ -1,12 +1,8 @@
{ { config, osConfig, pkgs, ... }: {
config,
osConfig,
pkgs,
...
}:
{
home.packages = with pkgs; [ hypridle ]; home.packages = with pkgs; [
hypridle
];
xdg.configFile = { xdg.configFile = {
"hypr/hypridle.conf" = { "hypr/hypridle.conf" = {
source = config.lib.file.mkOutOfStoreSymlink ./. + "/hypridle_${osConfig.system.name}.conf"; source = config.lib.file.mkOutOfStoreSymlink ./. + "/hypridle_${osConfig.system.name}.conf";

View File

@ -1,11 +1,4 @@
{ { inputs, pkgs, lib, config, ... }: {
inputs,
pkgs,
lib,
config,
...
}:
{
imports = [ imports = [
./hyprlock.nix ./hyprlock.nix
./hypridle.nix ./hypridle.nix
@ -128,7 +121,9 @@
"special:special, on-created-empty:kitty, rounding:true, decorate:false, border:false" "special:special, on-created-empty:kitty, rounding:true, decorate:false, border:false"
]; ];
bindm = [ "ALT,mouse:272,movewindow" ]; bindm = [
"ALT,mouse:272,movewindow"
];
bindr = [ bindr = [
# mumble ptt release # mumble ptt release

View File

@ -1,11 +1,4 @@
{ { inputs, pkgs, lib, config, ... }: {
inputs,
pkgs,
lib,
config,
...
}:
{
imports = [ imports = [
./hyprlock.nix ./hyprlock.nix
./hypridle.nix ./hypridle.nix
@ -37,13 +30,17 @@
"$shiftMainMod" = "SUPER_SHIFT"; "$shiftMainMod" = "SUPER_SHIFT";
"$term" = "kitty"; "$term" = "kitty";
monitor = [ "eDP-1,1920x1080@60,0x0,1" ]; monitor = [
"eDP-1,1920x1080@60,0x0,1"
];
input = { input = {
kb_layout = "no"; kb_layout = "no";
follow_mouse = 1; follow_mouse = 1;
}; };
env = [ "XDG_SESSION_TYPE,wayland" ]; env = [
"XDG_SESSION_TYPE,wayland"
];
decoration = { decoration = {
rounding = 10; rounding = 10;
@ -100,7 +97,9 @@
"special:special, on-created-empty:kitty, rounding:true, decorate:false, border:false" "special:special, on-created-empty:kitty, rounding:true, decorate:false, border:false"
]; ];
bindm = [ "ALT,mouse:272,movewindow" ]; bindm = [
"ALT,mouse:272,movewindow"
];
bindr = [ bindr = [
# mumble ptt release # mumble ptt release

View File

@ -1,11 +1,4 @@
{ { inputs, pkgs, lib, config, ... }: {
inputs,
pkgs,
lib,
config,
...
}:
{
options.hyprland.enable = lib.mkEnableOption "Hyprland"; options.hyprland.enable = lib.mkEnableOption "Hyprland";
config = { config = {
home.packages = with pkgs; [ home.packages = with pkgs; [
@ -33,13 +26,17 @@
"$shiftMainMod" = "SUPER_SHIFT"; "$shiftMainMod" = "SUPER_SHIFT";
"$term" = "kitty"; "$term" = "kitty";
monitor = [ ];
monitor = [
];
input = { input = {
kb_layout = "no"; kb_layout = "no";
follow_mouse = 1; follow_mouse = 1;
}; };
env = [ "XDG_SESSION_TYPE,wayland" ]; env = [
"XDG_SESSION_TYPE,wayland"
];
decoration = { decoration = {
rounding = 0; rounding = 0;
@ -95,7 +92,9 @@
"name:main 2, monitor:$mon_center, persistent:true, default:true" "name:main 2, monitor:$mon_center, persistent:true, default:true"
]; ];
bindm = [ "ALT,mouse:272,movewindow" ]; bindm = [
"ALT,mouse:272,movewindow"
];
bindr = [ bindr = [
# mumble ptt release # mumble ptt release

View File

@ -1,12 +1,8 @@
{ { config, osConfig, pkgs, ... }: {
config,
osConfig,
pkgs,
...
}:
{
home.packages = with pkgs; [ hyprlock ]; home.packages = with pkgs; [
hyprlock
];
xdg.configFile = { xdg.configFile = {
"hypr/hyprlock.conf" = { "hypr/hyprlock.conf" = {
source = config.lib.file.mkOutOfStoreSymlink ./. + "/hyprlock_${osConfig.system.name}.conf"; source = config.lib.file.mkOutOfStoreSymlink ./. + "/hyprlock_${osConfig.system.name}.conf";

View File

@ -1,8 +1 @@
{ { imports = [ ./hyprland_magicman.nix ./waybar ./xdg.nix ./cursor.nix ]; }
imports = [
./hyprland_magicman.nix
./waybar
./xdg.nix
./cursor.nix
];
}

View File

@ -1,8 +1 @@
{ { imports = [ ./hyprland_prismo.nix ./waybar ./xdg.nix ./cursor.nix ]; }
imports = [
./hyprland_prismo.nix
./waybar
./xdg.nix
./cursor.nix
];
}

View File

@ -1,9 +1,4 @@
{ { pkgs, lib, osConfig, ... }:
pkgs,
lib,
osConfig,
...
}:
let let
flakestat = pkgs.writeShellApplication { flakestat = pkgs.writeShellApplication {
name = "flakestat"; name = "flakestat";
@ -16,7 +11,9 @@ let
arrhist = pkgs.stdenv.mkDerivation { arrhist = pkgs.stdenv.mkDerivation {
name = "arrhist"; name = "arrhist";
propagatedBuildInputs = [ propagatedBuildInputs = [
(pkgs.python3.withPackages (pythonPackages: with pythonPackages; [ requests ])) (pkgs.python3.withPackages (pythonPackages: with pythonPackages; [
requests
]))
]; ];
src = ./arrhist.py; src = ./arrhist.py;
dontUnpack = true; dontUnpack = true;
@ -32,14 +29,13 @@ in
sops.secrets."radarr_api_key" = { }; sops.secrets."radarr_api_key" = { };
xdg.configFile."waybar/macchiato.css" = { xdg.configFile."waybar/macchiato.css" = {
source = source = pkgs.fetchFromGitHub
pkgs.fetchFromGitHub { {
owner = "catppuccin"; owner = "catppuccin";
repo = "waybar"; repo = "waybar";
rev = "f74ab1eecf2dcaf22569b396eed53b2b2fbe8aff"; rev = "f74ab1eecf2dcaf22569b396eed53b2b2fbe8aff";
sha256 = "WLJMA2X20E5PCPg0ZPtSop0bfmu+pLImP9t8A8V4QK8="; sha256 = "WLJMA2X20E5PCPg0ZPtSop0bfmu+pLImP9t8A8V4QK8=";
} } + "/themes/macchiato.css";
+ "/themes/macchiato.css";
}; };
programs.waybar = { programs.waybar = {
@ -169,16 +165,17 @@ in
"position" = "top"; "position" = "top";
modules-left = [ "custom/flakestat" ]; modules-left = [ "custom/flakestat" ];
modules-center = [ "hyprland/workspaces" ]; modules-center = [ "hyprland/workspaces" ];
modules-right = [ modules-right =
(lib.mkIf (withArrhist) "custom/arrhist") [
"pulseaudio" (lib.mkIf (withArrhist) "custom/arrhist")
"pulseaudio#microphone" "pulseaudio"
"memory" "pulseaudio#microphone"
"cpu" "memory"
(lib.mkIf (withBattery) "battery") "cpu"
"clock" (lib.mkIf (withBattery) "battery")
"tray" "clock"
]; "tray"
];
"hyprland/workspaces" = { "hyprland/workspaces" = {
"format" = "{name}"; "format" = "{name}";
"on-click" = "activate"; "on-click" = "activate";
@ -189,13 +186,7 @@ in
"scroll-step" = 5; "scroll-step" = 5;
"format" = "{icon} {volume}%"; "format" = "{icon} {volume}%";
"format-muted" = ""; "format-muted" = "";
"format-icons" = { "format-icons" = { "default" = [ "" "" "" ]; };
"default" = [
""
""
""
];
};
"on-scroll-up" = "pamixer -i ${volInterval}"; "on-scroll-up" = "pamixer -i ${volInterval}";
"on-scroll-down" = "pamixer -d ${volInterval}"; "on-scroll-down" = "pamixer -d ${volInterval}";
"on-click" = "pamixer -t"; "on-click" = "pamixer -t";
@ -218,9 +209,7 @@ in
"memory" = { "memory" = {
"interval" = 3; "interval" = 3;
"format" = " {percentage}%"; "format" = " {percentage}%";
"states" = { "states" = { "warning" = 85; };
"warning" = 85;
};
}; };
"cpu" = { "cpu" = {
"interval" = 3; "interval" = 3;
@ -251,8 +240,7 @@ in
"return-type" = "json"; "return-type" = "json";
"interval" = 600; "interval" = 600;
}; };
} } // lib.optionalAttrs (withArrhist) {
// lib.optionalAttrs (withArrhist) {
"custom/arrhist" = { "custom/arrhist" = {
"exec" = "${arrhist}/bin/arrhist"; "exec" = "${arrhist}/bin/arrhist";
"return-type" = "json"; "return-type" = "json";

View File

@ -1,5 +1,4 @@
{ config, ... }: { config, ... }: {
{
xdg.configFile = { xdg.configFile = {
"hypr/hyprpaper.conf" = { "hypr/hyprpaper.conf" = {
source = config.lib.file.mkOutOfStoreSymlink ./. + "/hyprpaper.conf"; source = config.lib.file.mkOutOfStoreSymlink ./. + "/hyprpaper.conf";

View File

@ -1,9 +1,4 @@
{ { config, lib, pkgs, ... }:
config,
lib,
pkgs,
...
}:
let let
mod = "Mod4"; mod = "Mod4";
in in

View File

@ -1,49 +1,39 @@
{ { pkgs, inputs, user, ... }: {
pkgs,
inputs,
user,
...
}:
{
imports = [ inputs.home-manager.nixosModules.home-manager ]; imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager = { home-manager = {
useUserPackages = true; useUserPackages = true;
useGlobalPkgs = true; useGlobalPkgs = true;
extraSpecialArgs = { extraSpecialArgs = { inherit pkgs inputs user; };
inherit pkgs inputs user; users.${user} = { pkgs, ... }: {
}; imports = [
users.${user} = inputs.sops-nix.homeManagerModules.sops
{ pkgs, ... }: ./sops
{ ./editor/neovim
imports = [ ./programs/firefox
inputs.sops-nix.homeManagerModules.sops ./programs/tmux
./sops ./programs/dunst
./editor/neovim ./programs/kitty
./programs/firefox ./programs/rofi
./programs/tmux ./programs/obs-studio
./programs/dunst ./programs/vscode
./programs/kitty ./programs/pywal
./programs/rofi ./programs/zellij
./programs/obs-studio ./scripts
./programs/vscode ./scripts/batlvl.nix
./programs/pywal ./zsh
./programs/zellij ./packages
./scripts ./hyprland/magicman.nix
./scripts/batlvl.nix ./ssh
./zsh ];
./packages firefox.enable = true;
./hyprland/magicman.nix tmux.enable = true;
./ssh hyprland.enable = true;
]; home = {
firefox.enable = true; username = "${user}";
tmux.enable = true; homeDirectory = "/home/${user}";
hyprland.enable = true; stateVersion = "23.11";
home = {
username = "${user}";
homeDirectory = "/home/${user}";
stateVersion = "23.11";
};
programs.home-manager.enable = true;
}; };
programs.home-manager.enable = true;
};
}; };
} }

View File

@ -79,12 +79,10 @@ in
typescript typescript
# Py stuff # Py stuff
(python312.withPackages ( (python312.withPackages (p: with p; [
p: with p; [ requests
requests ipython
ipython ]))
]
))
poetry poetry
ruff ruff
@ -99,10 +97,16 @@ in
# Stuff with overrides # Stuff with overrides
# Blender # Blender
(blender.override { cudaSupport = withCuda; }) (blender.override {
cudaSupport = withCuda;
})
# Btop # Btop
(btop.override { cudaSupport = withCuda; }) (btop.override {
cudaSupport = withCuda;
})
# PrismLauncher # PrismLauncher
(prismlauncher.override { withWaylandGLFW = true; }) (prismlauncher.override {
withWaylandGLFW = true;
})
]; ];
} }

View File

@ -1,48 +1,38 @@
{ { pkgs, inputs, user, ... }: {
pkgs,
inputs,
user,
...
}:
{
imports = [ inputs.home-manager.nixosModules.home-manager ]; imports = [ inputs.home-manager.nixosModules.home-manager ];
home-manager = { home-manager = {
useUserPackages = true; useUserPackages = true;
useGlobalPkgs = true; useGlobalPkgs = true;
extraSpecialArgs = { extraSpecialArgs = { inherit pkgs inputs user; };
inherit pkgs inputs user; users.${user} = { pkgs, ... }: {
}; imports = [
users.${user} = inputs.sops-nix.homeManagerModules.sops
{ pkgs, ... }: ./sops
{ ./editor/neovim
imports = [ ./programs/firefox
inputs.sops-nix.homeManagerModules.sops ./programs/tmux
./sops ./programs/dunst
./editor/neovim ./programs/kitty
./programs/firefox ./programs/rofi
./programs/tmux ./programs/obs-studio
./programs/dunst ./programs/vscode
./programs/kitty ./scripts
./programs/rofi ./zsh
./programs/obs-studio ./packages
./programs/vscode ./hyprland
./scripts ./ssh
./zsh ./services/backup-home.nix
./packages ./services/ghettoptt.nix
./hyprland ];
./ssh firefox.enable = true;
./services/backup-home.nix tmux.enable = true;
./services/ghettoptt.nix hyprland.enable = true;
]; home = {
firefox.enable = true; username = "${user}";
tmux.enable = true; homeDirectory = "/home/${user}";
hyprland.enable = true; stateVersion = "23.11";
home = {
username = "${user}";
homeDirectory = "/home/${user}";
stateVersion = "23.11";
};
programs.home-manager.enable = true;
}; };
programs.home-manager.enable = true;
};
}; };
} }

View File

@ -1,9 +1,4 @@
{ { config, lib, pkgs, ... }:
config,
lib,
pkgs,
...
}:
{ {
services.dunst = { services.dunst = {
@ -41,7 +36,7 @@
corner_radius = 10; corner_radius = 10;
# follow = "mouse"; # follow = "mouse";
font = "Source Sans Pro 10"; font = "Source Sans Pro 10";
format = "<b>%s</b>\\n%b"; # format = "<span foreground='#f3f4f5'><b>%s %p</b></span>\n%b" format = "<b>%s</b>\\n%b"; #format = "<span foreground='#f3f4f5'><b>%s %p</b></span>\n%b"
frame_color = "#232323"; frame_color = "#232323";
frame_width = 1; frame_width = 1;
offset = "15x15"; offset = "15x15";
@ -62,9 +57,7 @@
browser = "/usr/bin/env firefox -new-tab"; browser = "/usr/bin/env firefox -new-tab";
}; };
fullscreen_delay_everything = { fullscreen_delay_everything = { fullscreen = "delay"; };
fullscreen = "delay";
};
urgency_critical = { urgency_critical = {
background = "#d64e4e"; background = "#d64e4e";

View File

@ -1,17 +1,6 @@
{ { pkgs, config, lib, inputs, user, ... }: {
pkgs,
config,
lib,
inputs,
user,
...
}:
{
options.firefox.enable = lib.mkEnableOption "Firefox"; options.firefox.enable = lib.mkEnableOption "Firefox";
config = lib.mkIf config.firefox.enable { config =
programs.firefox = { lib.mkIf config.firefox.enable { programs.firefox = { enable = true; }; };
enable = true;
};
};
} }

View File

@ -1,27 +1,24 @@
{ config, pkgs, ... }: { config, pkgs, ... }: {
{
xdg.configFile."kitty/kitty.conf" = { xdg.configFile."kitty/kitty.conf" = {
source = config.lib.file.mkOutOfStoreSymlink ./. + "/kitty.conf"; source = config.lib.file.mkOutOfStoreSymlink ./. + "/kitty.conf";
target = "kitty/kitty.conf"; target = "kitty/kitty.conf";
}; };
xdg.configFile."kitty/themes/macchiato.conf" = { xdg.configFile."kitty/themes/macchiato.conf" = {
source = source = pkgs.fetchFromGitHub
pkgs.fetchFromGitHub { {
owner = "catppuccin"; owner = "catppuccin";
repo = "kitty"; repo = "kitty";
rev = "d7d61716a83cd135344cbb353af9d197c5d7cec1"; rev = "d7d61716a83cd135344cbb353af9d197c5d7cec1";
sha256 = "mRFa+40fuJCUrR1o4zMi7AlgjRtFmii4fNsQyD8hIjM="; sha256 = "mRFa+40fuJCUrR1o4zMi7AlgjRtFmii4fNsQyD8hIjM=";
} } + "/themes/macchiato.conf";
+ "/themes/macchiato.conf";
}; };
xdg.configFile."kitty/themes/latte.conf" = { xdg.configFile."kitty/themes/latte.conf" = {
source = source = pkgs.fetchFromGitHub
pkgs.fetchFromGitHub { {
owner = "catppuccin"; owner = "catppuccin";
repo = "kitty"; repo = "kitty";
rev = "d7d61716a83cd135344cbb353af9d197c5d7cec1"; rev = "d7d61716a83cd135344cbb353af9d197c5d7cec1";
sha256 = "mRFa+40fuJCUrR1o4zMi7AlgjRtFmii4fNsQyD8hIjM="; sha256 = "mRFa+40fuJCUrR1o4zMi7AlgjRtFmii4fNsQyD8hIjM=";
} } + "/themes/latte.conf";
+ "/themes/latte.conf";
}; };
} }

View File

@ -1,46 +1,40 @@
{ { pkgs, lib, osConfig, ... }:
pkgs,
lib,
osConfig,
...
}:
let let
withCuda = osConfig.system.name == "gunter"; withCuda = osConfig.system.name == "gunter";
onnxruntime-gpu = (pkgs.onnxruntime.override { cudaSupport = withCuda; }).overrideAttrs (old: { onnxruntime-gpu = (pkgs.onnxruntime.override {
# TODO: Remove when fixed in nixpkgs cudaSupport = withCuda;
# https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/development/libraries/onnxruntime/default.nix#L154 }).overrideAttrs
buildInputs = old.buildInputs ++ [ pkgs.cudaPackages.nccl ]; (old: {
}); # TODO: Remove when fixed in nixpkgs
# https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/development/libraries/onnxruntime/default.nix#L154
buildInputs = old.buildInputs ++ [ pkgs.cudaPackages.nccl ];
});
obs-backgrounremoval-gpu = ( obs-backgrounremoval-gpu = ((pkgs.obs-studio-plugins.obs-backgroundremoval.override {
(pkgs.obs-studio-plugins.obs-backgroundremoval.override { onnxruntime = onnxruntime-gpu; }) onnxruntime = onnxruntime-gpu;
.overrideAttrs }).overrideAttrs (old: {
(old: { version = "1.1.14-beta";
version = "1.1.14-beta"; src = pkgs.fetchFromGitHub {
src = pkgs.fetchFromGitHub { owner = "occ-ai";
owner = "occ-ai"; repo = "obs-backgroundremoval";
repo = "obs-backgroundremoval"; rev = "94be8c35fe077be93a6f5ef347a802295a36dddd";
rev = "94be8c35fe077be93a6f5ef347a802295a36dddd"; hash = "sha256-qnxDNeTWQYiRMqT6jNp8GC8ef6aaAAY+OXAak54dVc8=";
hash = "sha256-qnxDNeTWQYiRMqT6jNp8GC8ef6aaAAY+OXAak54dVc8="; };
}; cmakeFlags =
cmakeFlags = if withCuda then
if withCuda then (lib.lists.remove "-DDISABLE_ONNXRUNTIME_GPU=ON" old.cmakeFlags)
(lib.lists.remove "-DDISABLE_ONNXRUNTIME_GPU=ON" old.cmakeFlags) else old.cmakeFlags;
else }));
old.cmakeFlags;
})
);
in in
{ {
programs.obs-studio = { programs.obs-studio = {
enable = true; enable = true;
plugins = plugins = with pkgs.obs-studio-plugins; [
with pkgs.obs-studio-plugins; obs-pipewire-audio-capture
[ obs-shaderfilter
obs-pipewire-audio-capture ] ++ lib.optionals withCuda [
obs-shaderfilter obs-backgrounremoval-gpu
] ];
++ lib.optionals withCuda [ obs-backgrounremoval-gpu ];
}; };
} }

View File

@ -1,28 +1,26 @@
{ config, pkgs, ... }: { config, pkgs, ... }: {
{
programs.pywal.enable = true; programs.pywal.enable = true;
xdg.configFile = { xdg.configFile = {
"wal/templates/colors-hyprland.conf" = { "wal/templates/colors-hyprland.conf" = {
text = '' text = ''$foreground = 0xff{foreground.strip}
$foreground = 0xff{foreground.strip} $background = 0xff{background.strip}
$background = 0xff{background.strip} $color0 = 0xff{color0.strip}
$color0 = 0xff{color0.strip} $color1 = 0xff{color1.strip}
$color1 = 0xff{color1.strip} $color2 = 0xff{color2.strip}
$color2 = 0xff{color2.strip} $color3 = 0xff{color3.strip}
$color3 = 0xff{color3.strip} $color4 = 0xff{color4.strip}
$color4 = 0xff{color4.strip} $color5 = 0xff{color5.strip}
$color5 = 0xff{color5.strip} $color6 = 0xff{color6.strip}
$color6 = 0xff{color6.strip} $color7 = 0xff{color7.strip}
$color7 = 0xff{color7.strip} $color8 = 0xff{color8.strip}
$color8 = 0xff{color8.strip} $color9 = 0xff{color9.strip}
$color9 = 0xff{color9.strip} $color10 = 0xff{color10.strip}
$color10 = 0xff{color10.strip} $color11 = 0xff{color11.strip}
$color11 = 0xff{color11.strip} $color12 = 0xff{color12.strip}
$color12 = 0xff{color12.strip} $color13 = 0xff{color13.strip}
$color13 = 0xff{color13.strip} $color14 = 0xff{color14.strip}
$color14 = 0xff{color14.strip} $color15 = 0xff{color15.strip}
$color15 = 0xff{color15.strip}
''; '';
}; };
}; };

View File

@ -1,27 +1,24 @@
{ config, pkgs, ... }: { config, pkgs, ... }: {
{
xdg.configFile."rofi/config.rasi" = { xdg.configFile."rofi/config.rasi" = {
source = ./config.rasi; source = ./config.rasi;
}; };
xdg.configFile."rofi/macchiato.rasi" = { xdg.configFile."rofi/macchiato.rasi" = {
source = source = pkgs.fetchFromGitHub
pkgs.fetchFromGitHub { {
owner = "catppuccin"; owner = "catppuccin";
repo = "rofi"; repo = "rofi";
rev = "5350da41a11814f950c3354f090b90d4674a95ce"; rev = "5350da41a11814f950c3354f090b90d4674a95ce";
sha256 = "DNorfyl3C4RBclF2KDgwvQQwixpTwSRu7fIvihPN8JY="; sha256 = "DNorfyl3C4RBclF2KDgwvQQwixpTwSRu7fIvihPN8JY=";
} } + "/basic/.local/share/rofi/themes/catppuccin-macchiato.rasi";
+ "/basic/.local/share/rofi/themes/catppuccin-macchiato.rasi";
}; };
xdg.configFile."rofi/latte.rasi" = { xdg.configFile."rofi/latte.rasi" = {
source = source = pkgs.fetchFromGitHub
pkgs.fetchFromGitHub { {
owner = "catppuccin"; owner = "catppuccin";
repo = "rofi"; repo = "rofi";
rev = "5350da41a11814f950c3354f090b90d4674a95ce"; rev = "5350da41a11814f950c3354f090b90d4674a95ce";
sha256 = "DNorfyl3C4RBclF2KDgwvQQwixpTwSRu7fIvihPN8JY="; sha256 = "DNorfyl3C4RBclF2KDgwvQQwixpTwSRu7fIvihPN8JY=";
} } + "/basic/.local/share/rofi/themes/catppuccin-latte.rasi";
+ "/basic/.local/share/rofi/themes/catppuccin-latte.rasi";
}; };
} }

View File

@ -1,14 +1,7 @@
{ { pkgs, lib, config, ... }:
pkgs,
lib,
config,
...
}:
with lib; with lib;
let let cfg = config.tmux.enable;
cfg = config.tmux.enable; in {
in
{
options.tmux.enable = mkEnableOption "tmux"; options.tmux.enable = mkEnableOption "tmux";
config = mkIf cfg { config = mkIf cfg {
programs.tmux = { programs.tmux = {

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
programs.vscode = { programs.vscode = {
enable = true; enable = true;
enableUpdateCheck = true; enableUpdateCheck = true;

View File

@ -1,5 +1,4 @@
{ ... }: { ... }: {
{
programs.zellij = { programs.zellij = {
enable = true; enable = true;
# enableZshIntegration = true; # enableZshIntegration = true;

View File

@ -2,10 +2,13 @@
let let
batlvl = pkgs.writeShellApplication { batlvl = pkgs.writeShellApplication {
name = "batlvl"; name = "batlvl";
runtimeInputs = [ ]; runtimeInputs = [
];
text = builtins.readFile ./batlvl.sh; text = builtins.readFile ./batlvl.sh;
}; };
in in
{ {
home.packages = [ batlvl ]; home.packages = [
batlvl
];
} }

View File

@ -1,6 +1,7 @@
{ pkgs, config, ... }: { pkgs, config, ... }: {
{ imports = [
imports = [ ./lockhelper.nix ]; ./lockhelper.nix
];
home.file.".local/bin/hl-no-opacity" = { home.file.".local/bin/hl-no-opacity" = {
source = ./hl-no-opacity.sh; source = ./hl-no-opacity.sh;
executable = true; executable = true;

View File

@ -10,5 +10,7 @@ let
}; };
in in
{ {
home.packages = [ lockhelper ]; home.packages = [
lockhelper
];
} }

View File

@ -95,10 +95,7 @@ in
systemd.user.services.backup-home = { systemd.user.services.backup-home = {
Unit = { Unit = {
Description = "Backup home directory"; Description = "Backup home directory";
After = [ After = [ "network.target" "sops-nix.service" ];
"network.target"
"sops-nix.service"
];
}; };
Service = { Service = {
Type = "oneshot"; Type = "oneshot";
@ -115,10 +112,7 @@ in
Persistent = true; Persistent = true;
}; };
Install = { Install = {
WantedBy = [ WantedBy = [ "timers.target" "graphical-session.target" ];
"timers.target"
"graphical-session.target"
];
}; };
}; };
} }

View File

@ -1,5 +1,4 @@
{ user, ... }: { user, ... }: {
{
sops = { sops = {
age.keyFile = "/home/${user}/.config/sops/age/keys.txt"; age.keyFile = "/home/${user}/.config/sops/age/keys.txt";
defaultSopsFile = ../../secrets/torjus/secret.yaml; defaultSopsFile = ../../secrets/torjus/secret.yaml;

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
programs.ssh = { programs.ssh = {
enable = true; enable = true;
controlMaster = "auto"; controlMaster = "auto";

View File

@ -1,5 +1,4 @@
{ user, pkgs, ... }: { user, pkgs, ... }: {
{
home.packages = with pkgs; [ fd ]; home.packages = with pkgs; [ fd ];
programs.direnv = { programs.direnv = {
enable = true; enable = true;
@ -39,14 +38,8 @@
zplug = { zplug = {
enable = true; enable = true;
plugins = [ plugins = [
({ ({ name = "plugins/git"; tags = [ "from:oh-my-zsh" ]; })
name = "plugins/git"; ({ name = "modules/prompt"; tags = [ "from:prezto" ]; })
tags = [ "from:oh-my-zsh" ];
})
({
name = "modules/prompt";
tags = [ "from:prezto" ];
})
]; ];
}; };
}; };

View File

@ -1,10 +1,4 @@
{ { config, lib, inputs, pkgs, ... }:
config,
lib,
inputs,
pkgs,
...
}:
{ {
imports = [ imports = [
@ -41,9 +35,7 @@
enable = true; enable = true;
configurationLimit = 10; configurationLimit = 10;
}; };
loader.efi = { loader.efi = { canTouchEfiVariables = true; };
canTouchEfiVariables = true;
};
supportedFilesystems = [ "nfs" ]; supportedFilesystems = [ "nfs" ];
}; };
@ -120,26 +112,19 @@
xdg.portal = { xdg.portal = {
enable = true; enable = true;
xdgOpenUsePortal = true; xdgOpenUsePortal = true;
extraPortals = ( extraPortals = (with pkgs; [
with pkgs; # unstable.xdg-desktop-portal-hyprland
[ xdg-desktop-portal-gtk
# unstable.xdg-desktop-portal-hyprland ]);
xdg-desktop-portal-gtk
]
);
}; };
# Enable flakes # Enable flakes
nix.settings = { nix.settings = {
experimental-features = [ experimental-features = [ "nix-command" "flakes" ];
"nix-command" trusted-users = [ "root" "torjus" ];
"flakes" substituters = [
"https://cuda-maintainers.cachix.org"
]; ];
trusted-users = [
"root"
"torjus"
];
substituters = [ "https://cuda-maintainers.cachix.org" ];
trusted-public-keys = [ trusted-public-keys = [
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E=" "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
]; ];

View File

@ -1,10 +1,4 @@
{ { inputs, self, pks, ... }: {
inputs,
self,
pks,
...
}:
{
imports = [ imports = [
./configuration.nix ./configuration.nix
./hardware-configuration.nix ./hardware-configuration.nix

View File

@ -1,45 +1,37 @@
# 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,
pkgs,
modulesPath,
...
}:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; imports =
[
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
"nvme"
"xhci_pci"
"ahci"
"usbhid"
"usb_storage"
"sd_mod"
];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ boot.kernelModules = [ "kvm-amd" "v4l2loopback" ];
"kvm-amd" boot.extraModulePackages = with config.boot.kernelPackages; [
"v4l2loopback" v4l2loopback
]; ];
boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
fileSystems."/" = { fileSystems."/" =
device = "/dev/disk/by-uuid/a7d4b697-fffa-4bcb-9dd7-cbbd6121a50c"; {
fsType = "xfs"; device = "/dev/disk/by-uuid/a7d4b697-fffa-4bcb-9dd7-cbbd6121a50c";
}; fsType = "xfs";
};
boot.initrd.luks.devices."root".device = "/dev/disk/by-uuid/be82b184-3cc7-483b-9069-f7797f51c853"; boot.initrd.luks.devices."root".device = "/dev/disk/by-uuid/be82b184-3cc7-483b-9069-f7797f51c853";
fileSystems."/boot" = { fileSystems."/boot" =
device = "/dev/disk/by-uuid/DC0C-AAB3"; {
fsType = "vfat"; device = "/dev/disk/by-uuid/DC0C-AAB3";
}; fsType = "vfat";
};
swapDevices = [ { device = "/dev/disk/by-uuid/2284e9c6-c168-4d4f-ba6a-d270f1ae245d"; } ]; swapDevices =
[{ device = "/dev/disk/by-uuid/2284e9c6-c168-4d4f-ba6a-d270f1ae245d"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View File

@ -1,25 +1,22 @@
{ pkgs, ... }: { pkgs, ... }: {
{ environment.systemPackages = with pkgs; [
environment.systemPackages = with pkgs; [ nfs-utils ]; nfs-utils
];
services.rpcbind.enable = true; services.rpcbind.enable = true;
systemd.mounts = [ systemd.mounts = [{
{ type = "nfs";
type = "nfs"; mountConfig = {
mountConfig = { Options = "rw,soft,noatime";
Options = "rw,soft,noatime"; };
}; what = "nas.home.2rjus.net:/mnt/hdd-pool/media";
what = "nas.home.2rjus.net:/mnt/hdd-pool/media"; where = "/mnt/nas/media";
where = "/mnt/nas/media"; }];
}
];
systemd.automounts = [ systemd.automounts = [{
{ wantedBy = [ "multi-user.target" ];
wantedBy = [ "multi-user.target" ]; automountConfig = {
automountConfig = { TimeoutIdleSec = "5min";
TimeoutIdleSec = "5min"; };
}; where = "/mnt/nas/media";
where = "/mnt/nas/media"; }];
}
];
} }

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
services.ollama = { services.ollama = {
enable = true; enable = true;
acceleration = "cuda"; acceleration = "cuda";

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
environment.shells = with pkgs; [ zsh ]; environment.shells = with pkgs; [ zsh ];
services.xserver.desktopManager.xfce.enable = true; services.xserver.desktopManager.xfce.enable = true;

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
programs.streamdeck-ui = { programs.streamdeck-ui = {
enable = true; enable = true;
}; };

View File

@ -1,9 +1,4 @@
{ { config, lib, pkgs, ... }:
config,
lib,
pkgs,
...
}:
{ {
imports = [ ./hardware-configuration.nix ]; imports = [ ./hardware-configuration.nix ];
@ -24,14 +19,14 @@
enable = true; enable = true;
configurationLimit = 3; configurationLimit = 3;
}; };
boot.loader.efi = { boot.loader.efi = { canTouchEfiVariables = true; };
canTouchEfiVariables = true;
};
boot.initrd.systemd.enable = true; boot.initrd.systemd.enable = true;
boot.plymouth = { boot.plymouth = {
enable = true; enable = true;
themePackages = with pkgs; [ catppuccin-plymouth ]; themePackages = with pkgs; [
catppuccin-plymouth
];
theme = "catppuccin-macchiato"; theme = "catppuccin-macchiato";
extraConfig = '' extraConfig = ''
UseFirmwareBackground=false UseFirmwareBackground=false
@ -67,15 +62,11 @@
"bluez5.enable-sbc-xq" = true; "bluez5.enable-sbc-xq" = true;
"bluez5.enable-msbc" = true; "bluez5.enable-msbc" = true;
"bluez5.enable-hw-volume" = true; "bluez5.enable-hw-volume" = true;
"bluez5.roles" = [ "bluez5.roles" = [ "hsp_hs" "hsp_ag" "hfp_hf" "hfp_ag" ];
"hsp_hs"
"hsp_ag"
"hfp_hf"
"hfp_ag"
];
}; };
}; };
# Setup hyprland # Setup hyprland
services.xserver.enable = true; services.xserver.enable = true;
services.xserver.displayManager = { services.xserver.displayManager = {
@ -111,26 +102,17 @@
xdg.portal = { xdg.portal = {
enable = true; enable = true;
xdgOpenUsePortal = true; xdgOpenUsePortal = true;
extraPortals = ( extraPortals = (with pkgs; [
with pkgs; # xdg-desktop-portal-hyprland
[ xdg-desktop-portal-gtk
# xdg-desktop-portal-hyprland ]);
xdg-desktop-portal-gtk
]
);
}; };
programs.steam.enable = true; programs.steam.enable = true;
# Enable flakes # Enable flakes
nix.settings.experimental-features = [ nix.settings.experimental-features = [ "nix-command" "flakes" ];
"nix-command" nix.settings.trusted-users = [ "root" "torjus" ];
"flakes"
];
nix.settings.trusted-users = [
"root"
"torjus"
];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
# Install system-wide packages # Install system-wide packages

View File

@ -1,10 +1,4 @@
{ { inputs, self, pks, ... }: {
inputs,
self,
pks,
...
}:
{
imports = [ imports = [
./configuration.nix ./configuration.nix
./hardware-configuration.nix ./hardware-configuration.nix

View File

@ -1,42 +1,35 @@
# 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,
pkgs,
modulesPath,
...
}:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; imports =
[
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ];
"xhci_pci"
"thunderbolt"
"nvme"
"usb_storage"
"sd_mod"
"sdhci_pci"
];
boot.initrd.kernelModules = [ "i915" ]; boot.initrd.kernelModules = [ "i915" ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" =
device = "/dev/disk/by-uuid/31b20f4c-24bb-4fd1-9a3e-8ccc19fe3d64"; {
fsType = "xfs"; device = "/dev/disk/by-uuid/31b20f4c-24bb-4fd1-9a3e-8ccc19fe3d64";
}; fsType = "xfs";
};
boot.initrd.luks.devices."root".device = "/dev/disk/by-uuid/4bbadd2c-94dd-4d80-94bf-9332d24b57bd"; boot.initrd.luks.devices."root".device = "/dev/disk/by-uuid/4bbadd2c-94dd-4d80-94bf-9332d24b57bd";
fileSystems."/boot" = { fileSystems."/boot" =
device = "/dev/disk/by-uuid/7FF3-B061"; {
fsType = "vfat"; device = "/dev/disk/by-uuid/7FF3-B061";
}; fsType = "vfat";
};
swapDevices = [ { device = "/dev/disk/by-uuid/6f2c4906-ad88-4d7e-88ec-61cdda41ce28"; } ]; swapDevices =
[{ device = "/dev/disk/by-uuid/6f2c4906-ad88-4d7e-88ec-61cdda41ce28"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View File

@ -1,9 +1,4 @@
{ { config, lib, pkgs, ... }:
config,
lib,
pkgs,
...
}:
{ {
imports = [ ./hardware-configuration.nix ]; imports = [ ./hardware-configuration.nix ];
@ -14,6 +9,7 @@
sops.age.generateKey = true; sops.age.generateKey = true;
sops.secrets."gotify_tokens/backup-home" = { }; sops.secrets."gotify_tokens/backup-home" = { };
# Bootloader stuff # Bootloader stuff
boot.kernelParams = [ boot.kernelParams = [
"quiet" "quiet"
@ -24,9 +20,7 @@
enable = true; enable = true;
configurationLimit = 10; configurationLimit = 10;
}; };
boot.loader.efi = { boot.loader.efi = { canTouchEfiVariables = true; };
canTouchEfiVariables = true;
};
# Networking stuff # Networking stuff
networking.hostName = "prismo"; # Define your hostname. networking.hostName = "prismo"; # Define your hostname.
@ -71,20 +65,14 @@
xdg.portal = { xdg.portal = {
enable = true; enable = true;
xdgOpenUsePortal = true; xdgOpenUsePortal = true;
extraPortals = ( extraPortals = (with pkgs; [
with pkgs; xdg-desktop-portal-hyprland
[ xdg-desktop-portal-gtk
xdg-desktop-portal-hyprland ]);
xdg-desktop-portal-gtk
]
);
}; };
# Enable flakes # Enable flakes
nix.settings.experimental-features = [ nix.settings.experimental-features = [ "nix-command" "flakes" ];
"nix-command"
"flakes"
];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
# Install system-wide packages # Install system-wide packages

View File

@ -1,10 +1,4 @@
{ { inputs, self, pks, ... }: {
inputs,
self,
pks,
...
}:
{
imports = [ imports = [
./configuration.nix ./configuration.nix
./hardware-configuration.nix ./hardware-configuration.nix

View File

@ -1,29 +1,19 @@
# 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,
pkgs,
modulesPath,
...
}:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot = { boot = {
initrd = { initrd = {
availableKernelModules = [ availableKernelModules =
"xhci_pci" [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
"ahci"
"usb_storage"
"sd_mod"
"rtsx_pci_sdmmc"
];
kernelModules = [ ]; kernelModules = [ ];
luks.devices."cryptroot".device = "/dev/disk/by-uuid/f71b0ace-f38f-435f-a07a-007f9cfe4919"; luks.devices."cryptroot".device =
"/dev/disk/by-uuid/f71b0ace-f38f-435f-a07a-007f9cfe4919";
}; };
kernelModules = [ "kvm-intel" ]; kernelModules = [ "kvm-intel" ];
extraModulePackages = [ ]; extraModulePackages = [ ];
@ -39,7 +29,8 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = [ { device = "/dev/disk/by-uuid/67da36a8-69df-4541-88cd-cba7cbc40b4c"; } ]; swapDevices =
[{ device = "/dev/disk/by-uuid/67da36a8-69df-4541-88cd-cba7cbc40b4c"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's
@ -50,5 +41,6 @@
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
} }

View File

@ -1,9 +1,4 @@
{ { lib, buildGoModule, fetchFromGitHub, installShellFiles }:
lib,
buildGoModule,
fetchFromGitHub,
installShellFiles,
}:
buildGoModule rec { buildGoModule rec {
pname = "openpomodoro-cli"; pname = "openpomodoro-cli";
@ -18,10 +13,7 @@ buildGoModule rec {
vendorHash = "sha256-BR9d/PMQ1ZUYWSDO5ID2bkTN+A+VbaLTlz5t0vbkO60="; vendorHash = "sha256-BR9d/PMQ1ZUYWSDO5ID2bkTN+A+VbaLTlz5t0vbkO60=";
ldflags = [ ldflags = [ "-s" "-w" ];
"-s"
"-w"
];
GOWORK = "off"; GOWORK = "off";

View File

@ -1,18 +1,10 @@
{ pkgs, ... }: { pkgs, ... }: {
{
environment.systemPackages = with pkgs; [ twemoji-color-font ]; environment.systemPackages = with pkgs; [ twemoji-color-font ];
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
fira-code fira-code
fira-code-symbols fira-code-symbols
font-awesome font-awesome
(nerdfonts.override { (nerdfonts.override { fonts = [ "JetBrainsMono" "FiraCode" "DroidSansMono" "DejaVuSansMono" ]; })
fonts = [
"JetBrainsMono"
"FiraCode"
"DroidSansMono"
"DejaVuSansMono"
];
})
noto-fonts noto-fonts
noto-fonts-cjk noto-fonts-cjk
noto-fonts-emoji noto-fonts-emoji

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
services.fwupd = { services.fwupd = {
enable = true; enable = true;
}; };

View File

@ -29,9 +29,5 @@
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
}; };
networking.firewall.allowedTCPPorts = [ networking.firewall.allowedTCPPorts = [ 9100 9558 8989 ];
9100
9558
8989
];
} }

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
# Enable sudo # Enable sudo
security.sudo = { security.sudo = {
enable = true; enable = true;

View File

@ -1,5 +1,4 @@
{ pkgs, ... }: { pkgs, ... }: {
{
services = { services = {
dbus.enable = true; dbus.enable = true;
pipewire = { pipewire = {

View File

@ -21,6 +21,7 @@
"libvirtd" "libvirtd"
]; ];
# Install some user packages # Install some user packages
packages = with pkgs; [ ]; packages = with pkgs; [
];
}; };
} }