This commit is contained in:
Vivian 2024-10-17 17:30:48 +02:00
parent a1cec54ec8
commit ccbbb7f26e
18 changed files with 441 additions and 248 deletions

View file

@ -14,7 +14,9 @@
sharedModules = [ sharedModules = [
./hm-modules ./hm-modules
inputs.nixvim.homeManagerModules.nixvim inputs.nixvim.homeManagerModules.nixvim
inputs.autostart.homeManagerModules.xdg-autostart
inputs.catppuccin.homeManagerModules.catppuccin inputs.catppuccin.homeManagerModules.catppuccin
inputs.autostart.homeManagerModules.xdg-autostart
]; ];
}; };

View file

@ -38,6 +38,8 @@
# Enable my config for the gnome desktop environment # Enable my config for the gnome desktop environment
v.gnome.enable = lib.mkDefault true; v.gnome.enable = lib.mkDefault true;
flatpak.enable = true;
# Enable CUPS to print documents. # Enable CUPS to print documents.
printing.enable = true; printing.enable = true;
pipewire = { pipewire = {
@ -120,6 +122,8 @@
adb.enable = true; adb.enable = true;
}; };
networking = { networking = {
# Networking # Networking
networkmanager.enable = true; networkmanager.enable = true;

View file

@ -53,7 +53,22 @@ in
unzip unzip
yt-dlp yt-dlp
# z3 # z3
obsidian
(lib.hiPrio (pkgs.writeShellScriptBin "obsidian" ''
unset WAYLAND_DISPLAY
${pkgs.obsidian}/bin/obsidian
''))
]; ];
#
# xdg.desktopEntries = {
# obsidian = {
# name = "Obsidian";
# genericName = "Markdown Editor";
# exec = "obsidian";
# terminal = false;
# };
# };
# Enable my own hm modules # Enable my own hm modules
themes.v.catppuccin.enable = true; themes.v.catppuccin.enable = true;
@ -97,6 +112,17 @@ in
shellIntegration.enableZshIntegration = true; shellIntegration.enableZshIntegration = true;
}; };
}; };
xdg.autoStart = {
packages = with pkgs; [
obsidian
element-desktop
firefox
discord
];
};
# Syncthing # Syncthing
services.syncthing.enable = true; services.syncthing.enable = true;
xdg.userDirs = xdg.userDirs =

View file

@ -203,6 +203,7 @@ with lib;
image = { image = {
enable = true; enable = true;
}; };
web-devicons.enable = true;
bufferline.enable = true; bufferline.enable = true;
nix.enable = true; nix.enable = true;
luasnip.enable = true; luasnip.enable = true;
@ -217,7 +218,7 @@ with lib;
new_notes_location = "notes_subdir"; new_notes_location = "notes_subdir";
notes_subdir = "Unsorted"; notes_subdir = "Unsorted";
daily_notes = { daily_notes = {
folder = "Periodics/Daily"; folder = "Diary/Daily";
}; };
workspaces = [ workspaces = [
{ {

View file

@ -1,8 +1,17 @@
{ config, pkgs, lib, ... }: {
config,
pkgs,
lib,
...
}:
with lib; with lib;
let cfg = config.programs.v.vscode; let
in { cfg = config.programs.v.vscode;
options.programs.v.vscode = { enable = mkEnableOption "vscode"; }; in
{
options.programs.v.vscode = {
enable = mkEnableOption "vscode";
};
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.vscode = { programs.vscode = {
enable = true; enable = true;
@ -12,23 +21,42 @@ in {
"latex-workshop.linting.chktex.enabled" = true; "latex-workshop.linting.chktex.enabled" = true;
"latex-workshop.latex.clean.subfolder.enabled" = true; "latex-workshop.latex.clean.subfolder.enabled" = true;
"latex-workshop.latex.outDir" = "%TMPDIR%/%RELATIVE_DOC%"; "latex-workshop.latex.outDir" = "%TMPDIR%/%RELATIVE_DOC%";
"editor.fontFamily" = "editor.fontFamily" = "'DejaVuSansMono Nerd Font', 'monospace', monospace";
"'DejaVuSansMono Nerd Font', 'monospace', monospace";
"keyboard.dispatch" = "keyCode"; "keyboard.dispatch" = "keyCode";
"rust-analyzer.server.path" = "${pkgs.rust-analyzer}/bin/rust-analyzer"; "rust-analyzer.server.path" = "${pkgs.rust-analyzer}/bin/rust-analyzer";
"rust-analyzer.check.extraArgs" = ["--profile" "rust-analyzer"]; "rust-analyzer.check.extraArgs" = [
"--profile"
"rust-analyzer"
];
"rust-analyzer.check.command" = "clippy"; "rust-analyzer.check.command" = "clippy";
"terminal.integrated.defaultProfile.linux" = "zsh"; "terminal.integrated.defaultProfile.linux" = "zsh";
"nix.enableLanguageServer" = true; # Enable LSP. "nix.enableLanguageServer" = true; # Enable LSP.
"nix.serverPath" = "${pkgs.nil}/bin/nil"; "nix.serverPath" = "${pkgs.nil}/bin/nil";
"[nix]" = { "editor.defaultFormatter" = "brettm12345.nixfmt-vscode"; }; "[nix]" = {
"[python]" = { "editor.formatOnType" = true; }; "editor.defaultFormatter" = "brettm12345.nixfmt-vscode";
};
"[python]" = {
"editor.formatOnType" = true;
};
"debug.allowBreakpointsEverywhere" = true; "debug.allowBreakpointsEverywhere" = true;
"C_Cpp.clang_format_fallbackStyle" = "C_Cpp.clang_format_fallbackStyle" = "{ BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 0}";
"{ BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 0}"; # "crates.compatibleDecorator" = "✓";
"crates.compatibleDecorator" = ""; # "crates.errorDecorator" = "✗";
"crates.errorDecorator" = ""; # "crates.incompatibleDecorator" = "🛇";
"crates.incompatibleDecorator" = "🛇";
# Verilog
"verilog.formatting.verilogHDL.formatter" = "verible-verilog-format";
"verilog.languageServer.svls.enabled" = true;
"verilog.languageServer.svls.path" = "${pkgs.svls}/bin/svls";
"verilog.languageServer.veribleVerilogLs.enabled" = true;
"verilog.languageServer.veribleVerilogLs.path" = "${pkgs.verible}/bin/verible-verilog-ls";
"verilog.formatting.veribleVerilogFormatter.path" = "${pkgs.verible}/bin/verible-verilog-format";
"verilog.linting.linter" = "verilator";
"verilog.linting.path" = "${pkgs.verilator}/bin/verilator";
"[verilog]" = {
"editor.defaultFormatter" = "mshr-h.veriloghdl";
};
# Don't index unecessary things # Don't index unecessary things
"files.exclude" = { "files.exclude" = {
"**/.vscode" = true; "**/.vscode" = true;
@ -47,33 +75,42 @@ in {
"/nix" = true; "/nix" = true;
}; };
}; };
extensions = with pkgs.vscode-extensions; extensions =
with pkgs.v.vscode-extensions; [ with pkgs.vscode-extensions;
with pkgs.v.vscode-extensions;
[
brettm12345.nixfmt-vscode brettm12345.nixfmt-vscode
catppuccin.catppuccin-vsc
codezombiech.gitignore codezombiech.gitignore
codezombiech.gitignore
davidlday.languagetool-linter
editorconfig.editorconfig editorconfig.editorconfig
foxundermoon.shell-format foxundermoon.shell-format
github.copilot
github.copilot-chat
github.vscode-github-actions
james-yu.latex-workshop james-yu.latex-workshop
jnoortheen.nix-ide jnoortheen.nix-ide
rust-lang.rust-analyzer
mkhl.direnv mkhl.direnv
ms-vscode-remote.remote-ssh ms-vscode-remote.remote-ssh
ms-vscode.cpptools ms-vscode.cpptools
ms-vsliveshare.vsliveshare
mshr-h.veriloghdl
platformio.platformio-ide platformio.platformio-ide
redhat.vscode-yaml
redhat.vscode-xml redhat.vscode-xml
redhat.vscode-yaml
rust-lang.rust-analyzer
skellock.just
sumneko.lua
tamasfe.even-better-toml tamasfe.even-better-toml
vadimcn.vscode-lldb
vadimcn.vscode-lldb
valentjn.vscode-ltex valentjn.vscode-ltex
vscodevim.vim vscodevim.vim
vadimcn.vscode-lldb
xaver.clang-format xaver.clang-format
sumneko.lua continue.continue
davidlday.languagetool-linter
serayuzgur.crates
skellock.just
]; ];
}; };
}; };
} }

View file

@ -55,6 +55,7 @@ in
# Add Home-manager dconf stuff # Add Home-manager dconf stuff
home-manager.sharedModules = mkIf cfg.hm [ ./hm.nix ]; home-manager.sharedModules = mkIf cfg.hm [ ./hm.nix ];
environment.gnome.excludePackages = environment.gnome.excludePackages =
(with pkgs; [ (with pkgs; [
gnome-photos gnome-photos
@ -82,6 +83,8 @@ in
# Services required for gnome # Services required for gnome
programs.dconf.enable = true; programs.dconf.enable = true;
# Extra gnome packages # Extra gnome packages
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
gnome-tweaks gnome-tweaks

View file

@ -4,18 +4,20 @@ with lib.hm.gvariant;
let let
inherit (builtins) attrNames map; inherit (builtins) attrNames map;
inherit (lib.attrsets) mapAttrs' nameValuePair; inherit (lib.attrsets) mapAttrs' nameValuePair;
generate_custom_keybindings = binds: generate_custom_keybindings =
binds:
{ {
"org/gnome/settings-daemon/plugins/media-keys" = { "org/gnome/settings-daemon/plugins/media-keys" = {
custom-keybindings = map (name: custom-keybindings = map (
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/${name}/") name: "/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/${name}/"
(attrNames binds); ) (attrNames binds);
}; };
} // mapAttrs' (name: }
nameValuePair // mapAttrs' (
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/${name}") name: nameValuePair "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/${name}"
binds; ) binds;
in { in
{
xdg.mimeApps.enable = true; xdg.mimeApps.enable = true;
xdg.mimeApps.defaultApplications = { xdg.mimeApps.defaultApplications = {
"text/plain" = "org.gnome.TextEditor.desktop"; "text/plain" = "org.gnome.TextEditor.desktop";
@ -59,74 +61,106 @@ in {
"image/x-icns" = "org.gnome.Loupe.desktop"; "image/x-icns" = "org.gnome.Loupe.desktop";
}; };
dconf.settings = { dconf.settings =
"org/gnome/desktop/input-sources" = { {
sources = [ (mkTuple [ "xkb" "us+altgr-intl" ]) ];
xkb-options = [ "terminate:ctrl_alt_bksp" ]; "org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = with pkgs.gnomeExtensions; [
auto-move-windows.extensionUuid
];
};
"org/gnome/shell/extensions/auto-move-windows" = {
application-list = [
"element-desktop.desktop:1"
"discord.desktop:1"
"firefox.desktop:2"
"obsidian.desktop:3"
];
};
"org/gnome/desktop/input-sources" = {
sources = [
(mkTuple [
"xkb"
"us+altgr-intl"
])
];
xkb-options = [ "terminate:ctrl_alt_bksp" ];
};
"org/gnome/desktop/peripherals/touchpad" = {
tap-to-click = true;
two-finger-scrolling-enabled = true;
};
"org/gnome/mutter" = {
attach-modal-dialogs = true;
dynamic-workspaces = false;
edge-tiling = true;
focus-change-on-pointer-rest = true;
workspaces-only-on-primary = true;
};
"org/gnome/mutter/keybindings" = {
toggle-tiled-left = [ "<Super>bracketleft" ];
toggle-tiled-right = [ "<Super>bracketright" ];
};
"org/gnome/shell/keybindings" = {
toggle-overview = [ "<Super>d" ];
};
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
"org/gnome/desktop/wm/preferences" = {
auto-raise = false;
num-workspaces = 6;
focus-mode = "sloppy";
};
"org/gnome/desktop/wm/keybindings" = {
raise-or-lower = [ "<Super>s" ];
switch-applications = [ "<Super>Tab" ];
switch-applications-backward = [ "<Super>Tab" ];
move-to-workspace-1 = [ "<Shift><Super>1" ];
move-to-workspace-2 = [ "<Shift><Super>2" ];
move-to-workspace-3 = [ "<Shift><Super>3" ];
move-to-workspace-4 = [ "<Shift><Super>4" ];
move-to-workspace-5 = [ "<Shift><Super>5" ];
move-to-workspace-6 = [ "<Shift><Super>6" ];
switch-to-workspace-1 = [ "<Super>1" ];
switch-to-workspace-2 = [ "<Super>2" ];
switch-to-workspace-3 = [ "<Super>3" ];
switch-to-workspace-4 = [ "<Super>4" ];
switch-to-workspace-5 = [ "<Super>5" ];
switch-to-workspace-6 = [ "<Super>6" ];
toggle-fullscreen = [ "<Super><Shift>M" ];
toggle-maximized = [ "<Super>m" ];
close = [ "<Super>Q" ];
};
"org/gnome/tweaks" = {
show-extensions-notice = false;
};
"org/gnome/boxes" = {
first-run = false;
};
}
// generate_custom_keybindings {
"terminal" = {
binding = "<Super>Return";
command = "${pkgs.kitty}/bin/kitty";
name = "Open Terminal";
};
"firefox" = {
binding = "<Super>f";
command = "firefox";
name = "Open Firefox";
};
}; };
"org/gnome/desktop/peripherals/touchpad" = {
tap-to-click = true;
two-finger-scrolling-enabled = true;
};
"org/gnome/mutter" = {
attach-modal-dialogs = true;
dynamic-workspaces = false;
edge-tiling = true;
focus-change-on-pointer-rest = true;
workspaces-only-on-primary = true;
};
"org/gnome/mutter/keybindings" = {
toggle-tiled-left = [ "<Super>bracketleft" ];
toggle-tiled-right = [ "<Super>bracketright" ];
};
"org/gnome/shell/keybindings" = { toggle-overview = [ "<Super>d" ]; };
"org/gnome/desktop/interface" = { color-scheme = "prefer-dark"; };
"org/gnome/desktop/wm/preferences" = {
auto-raise = false;
num-workspaces = 6;
focus-mode = "sloppy";
};
"org/gnome/desktop/wm/keybindings" = {
raise-or-lower = [ "<Super>s" ];
switch-applications = [ "<Super>Tab" ];
switch-applications-backward = [ "<Super>Tab" ];
move-to-workspace-1 = [ "<Shift><Super>1" ];
move-to-workspace-2 = [ "<Shift><Super>2" ];
move-to-workspace-3 = [ "<Shift><Super>3" ];
move-to-workspace-4 = [ "<Shift><Super>4" ];
move-to-workspace-5 = [ "<Shift><Super>5" ];
move-to-workspace-6 = [ "<Shift><Super>6" ];
switch-to-workspace-1 = [ "<Super>1" ];
switch-to-workspace-2 = [ "<Super>2" ];
switch-to-workspace-3 = [ "<Super>3" ];
switch-to-workspace-4 = [ "<Super>4" ];
switch-to-workspace-5 = [ "<Super>5" ];
switch-to-workspace-6 = [ "<Super>6" ];
toggle-fullscreen = [ "<Super><Shift>M" ];
toggle-maximized = [ "<Super>m" ];
close = [ "<Super>Q" ];
};
"org/gnome/tweaks" = { show-extensions-notice = false; };
"org/gnome/boxes" = { first-run = false; };
} // generate_custom_keybindings {
"terminal" = {
binding = "<Super>Return";
command = "${pkgs.kitty}/bin/kitty";
name = "Open Terminal";
};
"firefox" = {
binding = "<Super>f";
command = "firefox";
name = "Open Firefox";
};
};
} }

204
flake.lock generated
View file

@ -11,11 +11,11 @@
"nixpkgs-stable": "nixpkgs-stable" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1725815284, "lastModified": 1728577371,
"narHash": "sha256-nVWCR86XDjx9Tq6RHsNvhD03nNzIeKKc7UTPnXLyrDY=", "narHash": "sha256-f3bKclEV5t1eP1OH7kTGv/tLzlToSRIe0ktkdl1jihw=",
"owner": "zhaofengli", "owner": "zhaofengli",
"repo": "attic", "repo": "attic",
"rev": "aec90814a4ecbc40171d57eeef97c5cab4aaa7b4", "rev": "e5c8d2d50981a34602358d917e7be011b2c397a8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -24,6 +24,21 @@
"type": "github" "type": "github"
} }
}, },
"autostart": {
"locked": {
"lastModified": 1723314998,
"narHash": "sha256-BwP56CHfU3P7ZHr2SzAEjF3uveiN1dZ5hFHTzRLS/WI=",
"owner": "Zocker1999NET",
"repo": "home-manager-xdg-autostart",
"rev": "4d1def4a330d6812fe18be140781e94003c3cc0a",
"type": "github"
},
"original": {
"owner": "Zocker1999NET",
"repo": "home-manager-xdg-autostart",
"type": "github"
}
},
"blobs": { "blobs": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -42,11 +57,11 @@
}, },
"catppuccin": { "catppuccin": {
"locked": { "locked": {
"lastModified": 1725509983, "lastModified": 1728407414,
"narHash": "sha256-NHCgHVqumPraFJnLrkanoLDuhOoUHUvRhvp/RIHJR+A=", "narHash": "sha256-B8LaxUP93eh+it8RW1pGq4SsU2kj7f0ipzFuhBvpON8=",
"owner": "catppuccin", "owner": "catppuccin",
"repo": "nix", "repo": "nix",
"rev": "45745fe5960acaefef2b60f3455bcac6a0ca6bc9", "rev": "96cf8b4a05fb23a53c027621b1147b5cf9e5439f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -63,11 +78,11 @@
"stable": "stable" "stable": "stable"
}, },
"locked": { "locked": {
"lastModified": 1711386353, "lastModified": 1728263678,
"narHash": "sha256-gWEpb8Hybnoqb4O4tmpohGZk6+aerAbJpywKcFIiMlg=", "narHash": "sha256-gyUVsPAWY9AgVKjrNPoowrIr5BvK4gI0UkDXvv8iSxA=",
"owner": "zhaofengli", "owner": "zhaofengli",
"repo": "colmena", "repo": "colmena",
"rev": "cd65ef7a25cdc75052fbd04b120aeb066c3881db", "rev": "b0a62f234fae02a006123e661ff70e62af16106b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -98,18 +113,12 @@
} }
}, },
"crane_2": { "crane_2": {
"inputs": {
"nixpkgs": [
"lanzaboote",
"nixpkgs"
]
},
"locked": { "locked": {
"lastModified": 1721842668, "lastModified": 1728776144,
"narHash": "sha256-k3oiD2z2AAwBFLa4+xfU+7G5fisRXfkvrMTCJrjZzXo=", "narHash": "sha256-fROVjMcKRoGHofDm8dY3uDUtCMwUICh/KjBFQnuBzfg=",
"owner": "ipetkov", "owner": "ipetkov",
"repo": "crane", "repo": "crane",
"rev": "529c1a0b1f29f0d78fa3086b8f6a134c71ef3aaf", "rev": "f876e3d905b922502f031aeec1a84490122254b7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -125,11 +134,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1718194053, "lastModified": 1727447169,
"narHash": "sha256-FaGrf7qwZ99ehPJCAwgvNY5sLCqQ3GDiE/6uLhxxwSY=", "narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "3867348fa92bc892eba5d9ddb2d7a97b9e127a8a", "rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -146,11 +155,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722113426, "lastModified": 1728330715,
"narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=", "narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=",
"owner": "numtide", "owner": "numtide",
"repo": "devshell", "repo": "devshell",
"rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae", "rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -319,11 +328,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719994518, "lastModified": 1727826117,
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=", "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7", "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -340,11 +349,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722555600, "lastModified": 1727826117,
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d", "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -373,15 +382,15 @@
"flake-utils": "flake-utils_3" "flake-utils": "flake-utils_3"
}, },
"locked": { "locked": {
"lastModified": 1714763823, "lastModified": 1722363685,
"narHash": "sha256-vU6uUoUOgqG7NSyqlU/b+tNnY0ABxldYUXmlki/7OiQ=", "narHash": "sha256-XCf2PIAT6lH7BwytgioPmVf/wkzXjSKScC4KzcZgb64=",
"owner": "NULLx76", "owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus", "repo": "flake-utils-plus",
"rev": "293f1f9519579a3171d535652902bba9b7b0b08c", "rev": "6b10f51ff73a66bb29f3bc8151a59d217713f496",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NULLx76", "owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus", "repo": "flake-utils-plus",
"type": "github" "type": "github"
} }
@ -463,11 +472,11 @@
"systems": "systems_6" "systems": "systems_6"
}, },
"locked": { "locked": {
"lastModified": 1710146030, "lastModified": 1726560853,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -529,11 +538,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724857454, "lastModified": 1728778939,
"narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=", "narHash": "sha256-WybK5E3hpGxtCYtBwpRj1E9JoiVxe+8kX83snTNaFHE=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6", "rev": "ff68f91754be6f3427e4986d7949e6273659be1d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -614,11 +623,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1726036828, "lastModified": 1729027341,
"narHash": "sha256-ZQHbpyti0jcAKnwQY1lwmooecLmSG6wX1JakQ/eZNeM=", "narHash": "sha256-IqWD7bA9iJVifvJlB4vs2KUXVhN+d9lECWdNB4jJ0tE=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "8a1671642826633586d12ac3158e463c7a50a112", "rev": "2a4fd1cfd8ed5648583dadef86966a8231024221",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -635,11 +644,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724435763, "lastModified": 1728903686,
"narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=", "narHash": "sha256-ZHFrGNWDDriZ4m8CA/5kDa250SG1LiiLPApv1p/JF0o=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be", "rev": "e1aec543f5caf643ca0d94b6a633101942fd065f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -660,11 +669,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1725379389, "lastModified": 1729064530,
"narHash": "sha256-qS1H/5/20ewJIXmf8FN2A5KTOKKU9elWvCPwdBi1P/U=", "narHash": "sha256-oSr/w/5dvf/8ll6NvQlL7+rrK8wzjIcEMP1LvI4Ag08=",
"owner": "nix-community", "owner": "nix-community",
"repo": "lanzaboote", "repo": "lanzaboote",
"rev": "e7bd94e0b5ff3c1e686f2101004ebf4fcea9d871", "rev": "2fa1368f938b50e35ca87334b5aeba38a3402165",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -703,11 +712,11 @@
"spectrum": "spectrum" "spectrum": "spectrum"
}, },
"locked": { "locked": {
"lastModified": 1725664757, "lastModified": 1728779945,
"narHash": "sha256-kUMgeF3hHJM8aBpdazNgtCeeOTrWext6lHfrYmC6otU=", "narHash": "sha256-RFKyZygnUbJlWq1uBn4JvEEcQKZW3AFBL3bQoywECPI=",
"owner": "astro", "owner": "astro",
"repo": "microvm.nix", "repo": "microvm.nix",
"rev": "caac7808d1e31f8a0fa408338cd3736947cb226d", "rev": "4d81c4115ef832880561f243efec21f06d2a8b7c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -724,11 +733,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724561770, "lastModified": 1728901530,
"narHash": "sha256-zv8C9RNa86CIpyHwPIVO/k+5TfM8ZbjGwOOpTe1grls=", "narHash": "sha256-I9Qd0LnAsEGHtKE9+uVR0iDFmsijWSy7GT0g3jihG4Q=",
"owner": "lnl7", "owner": "lnl7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "ac5694a0b855a981e81b4d9f14052e3ff46ca39e", "rev": "a60ac02f9466f85f092e576fd8364dfc4406b5a6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -739,11 +748,11 @@
}, },
"nixlib": { "nixlib": {
"locked": { "locked": {
"lastModified": 1725757153, "lastModified": 1728781282,
"narHash": "sha256-c1a6iLmCVPFI9EUVMrBN8xdmFxFXEjcVwiTSVmqajOs=", "narHash": "sha256-hUP9oxmnOmNnKcDOf5Y55HQ+NnoT0+bLWHLQWLLw9Ks=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs.lib", "repo": "nixpkgs.lib",
"rev": "68584f89dd0eb16fea5d80ae127f3f681f6a5df7", "rev": "16340f605f4e8e5cf07fd74dcbe692eee2d4f51b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -760,11 +769,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1725843519, "lastModified": 1728867876,
"narHash": "sha256-Z6DglUwgFDz6fIvQ89wx/uBVWrGvEGECq0Ypyk/eigE=", "narHash": "sha256-NCyOA8WZNoojmXH+kBDrQj3LwvakYNzSc0h+LTXkmPE=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-generators", "repo": "nixos-generators",
"rev": "214efbd73241d72a8f48b8b9a73bb54895cd51a7", "rev": "fdf142111597f6c6283cf5ffe092b6293a3911d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -775,11 +784,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1725885300, "lastModified": 1728729581,
"narHash": "sha256-5RLEnou1/GJQl+Wd+Bxaj7QY7FFQ9wjnFq1VNEaxTmc=", "narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "166dee4f88a7e3ba1b7a243edb1aca822f00680e", "rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -790,11 +799,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1696019113, "lastModified": 1725103162,
"narHash": "sha256-X3+DKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco=", "narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "f5892ddac112a1e9b3612c39af1b72987ee5783a", "rev": "12228ff1752d7b7624a54e9c1af4b222b3c1073b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -885,26 +894,26 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1725634671, "lastModified": 1729121138,
"narHash": "sha256-v3rIhsJBOMLR8e/RNWxr828tB+WywYIoajrZKFM+0Gg=", "narHash": "sha256-YwgV6ORMYDj32ucAIDjUY+6vV7Sv5RNbnnsQx4+QNw8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "574d1eac1c200690e27b8eb4e24887f8df7ac27c", "rev": "f67841950fe8e33ae6597cc2dac1bc179c3c2627",
"type": "github" "type": "github"
}, },
"original": { "original": {
"id": "nixpkgs", "id": "nixpkgs",
"ref": "nixos-unstable", "ref": "nixos-unstable-small",
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1724819573, "lastModified": 1728888510,
"narHash": "sha256-GnR7/ibgIH1vhoy8cYdmXE6iyZqKqFxQSVkFgosBh6w=", "narHash": "sha256-nsNdSldaAyu6PE3YUA+YQLqUDJh+gRbBooMMekZJwvI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "71e91c409d1e654808b2621f28a327acfdad8dc2", "rev": "a3c0b3b21515f74fd2665903d4ce6bc4dc81c77c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -943,11 +952,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1726000537, "lastModified": 1729072117,
"narHash": "sha256-Y1dEuf2wZkg2rhE8sf73x9K0zknUald4Ia6zXnGEfjg=", "narHash": "sha256-vAhQlGF9m3DY/9pgLQlBQnWz7YGuQ+FP3w5Ms5HSnZc=",
"owner": "pta2002", "owner": "pta2002",
"repo": "nixvim", "repo": "nixvim",
"rev": "fc7e9b29271a03459191955f78d4128451b7cd81", "rev": "b9ea7f88b6117f076d3b122d9bec3f379c57a17a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -958,11 +967,11 @@
}, },
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1726036733, "lastModified": 1729077813,
"narHash": "sha256-2HtGkO408Gkvg/M+9s1jcDqt2+u7MzjzZPlxpBORfOQ=", "narHash": "sha256-61tT+dRuJ9kGfrKgDRE/ReNw9mgIL/0uep56gehEg5Y=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "76210ff4db87bac735c6a18e3443852563469704", "rev": "0fb85cae559957a989166e8cb80a82f316959f8f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -980,11 +989,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724584782, "lastModified": 1728905062,
"narHash": "sha256-7FfHv7b1jwMPSu9SPY9hdxStk8E6EeSwzqdvV69U4BM=", "narHash": "sha256-W/lClt0bRgFRO0WFtytX/LEILpPNq+FOjIfESpkeu5c=",
"owner": "NuschtOS", "owner": "NuschtOS",
"repo": "search", "repo": "search",
"rev": "5a08d691de30b6fc28d58ce71a5e420f2694e087", "rev": "f82d3e1c1c9d1eaeb91878519e2d27b27c66ce84",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1007,11 +1016,11 @@
"nixpkgs-stable": "nixpkgs-stable_2" "nixpkgs-stable": "nixpkgs-stable_2"
}, },
"locked": { "locked": {
"lastModified": 1721042469, "lastModified": 1728778939,
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=", "narHash": "sha256-WybK5E3hpGxtCYtBwpRj1E9JoiVxe+8kX83snTNaFHE=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd", "rev": "ff68f91754be6f3427e4986d7949e6273659be1d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1023,6 +1032,7 @@
"root": { "root": {
"inputs": { "inputs": {
"attic": "attic", "attic": "attic",
"autostart": "autostart",
"catppuccin": "catppuccin", "catppuccin": "catppuccin",
"colmena": "colmena", "colmena": "colmena",
"deploy": "deploy", "deploy": "deploy",
@ -1051,11 +1061,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722219664, "lastModified": 1728959392,
"narHash": "sha256-xMOJ+HW4yj6e69PvieohUJ3dBSdgCfvI0nnCEe6/yVc=", "narHash": "sha256-fp4he1QQjE+vasDMspZYeXrwTm9otwEqLwEN6FKZ5v0=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "a6fbda5d9a14fb5f7c69b8489d24afeb349c7bb4", "rev": "4c6e317300f05b8871f585b826b6f583e7dc4a9b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1082,16 +1092,16 @@
}, },
"stable": { "stable": {
"locked": { "locked": {
"lastModified": 1696039360, "lastModified": 1724316499,
"narHash": "sha256-g7nIUV4uq1TOVeVIDEZLb005suTWCUjSY0zYOlSBsyE=", "narHash": "sha256-Qb9MhKBUTCfWg/wqqaxt89Xfi6qTD3XpTzQ9eXi3JmE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "32dcb45f66c0487e92db8303a798ebc548cadedc", "rev": "797f7dc49e0bc7fab4b57c021cdf68f595e47841",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-23.05", "ref": "nixos-24.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -1245,11 +1255,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724833132, "lastModified": 1727984844,
"narHash": "sha256-F4djBvyNRAXGusJiNYInqR6zIMI3rvlp6WiKwsRISos=", "narHash": "sha256-xpRqITAoD8rHlXQafYZOLvUXCF6cnZkPfoq67ThN0Hc=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "3ffd842a5f50f435d3e603312eefa4790db46af5", "rev": "4446c7a6fc0775df028c5a3f6727945ba8400e64",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -5,8 +5,8 @@
# * https://github.com/Infinidoge/nix-minecraft # * https://github.com/Infinidoge/nix-minecraft
inputs = { inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable"; nixpkgs.url = "nixpkgs/nixos-unstable-small";
flake-utils-plus.url = "github:NULLx76/flake-utils-plus"; flake-utils-plus.url = "github:gytis-ivaskevicius/flake-utils-plus";
nur.url = "github:nix-community/NUR"; nur.url = "github:nix-community/NUR";
colmena.url = "github:zhaofengli/colmena"; colmena.url = "github:zhaofengli/colmena";
deploy.url = "github:serokell/deploy-rs"; deploy.url = "github:serokell/deploy-rs";
@ -46,6 +46,8 @@
essentials.url = "github:jdonszelmann/essentials"; essentials.url = "github:jdonszelmann/essentials";
essentials.inputs.nixpkgs.follows = "nixpkgs"; essentials.inputs.nixpkgs.follows = "nixpkgs";
autostart.url = "github:Zocker1999NET/home-manager-xdg-autostart";
}; };
outputs = outputs =

View file

@ -9,3 +9,4 @@
system.stateVersion = lib.mkDefault "24.05"; system.stateVersion = lib.mkDefault "24.05";
} }

View file

@ -1,42 +1,82 @@
{ config, lib, inputs, ... }: {
config,
lib,
inputs,
...
}:
let let
hostAddress = "10.42.99.1"; hostAddress = "10.42.99.1";
hostAddress6 = "fc00::1"; hostAddress6 = "fc00::1";
in { in
{
networking.nat = { networking.nat = {
enable = true; enable = true;
internalInterfaces = [ "ve-+" ]; internalInterfaces = [ "ve-+" ];
externalInterface = "ens18"; externalInterface = "ens18";
# Lazy IPv6 connectivity for the container # Lazy IPv6 connectivity for the container
enableIPv6 = true; enableIPv6 = true;
forwardPorts = [
];
}; };
networking.firewall.allowedTCPPorts = [
8384
22000
];
networking.firewall.allowedUDPPorts = [
22000
21027
];
# Containers network is # Containers network is
# * 10.42.99.0/24 # * 10.42.99.0/24
# * fc00:x # * fc00:x
users.groups.backup = {
gid = 10000;
members = [ "vivian" ];
};
containers = { containers = {
dns = { syncthing = {
autoStart = true; autoStart = true;
inherit hostAddress hostAddress6; inherit hostAddress hostAddress6;
localAddress = "10.42.99.2"; localAddress = "10.42.99.2";
localAddress6 = "fc00::2"; localAddress6 = "fc00::2";
specialArgs = { inherit inputs; }; forwardPorts = [
{
containerPort = 8384;
hostPort = 8384;
protocol = "tcp";
}
];
config = {pkgs, ...}: { bindMounts = {
imports = [ "/data" = {
./common.nix hostPath = "/mnt/backup";
# ./dns.nix isReadOnly = false;
inputs.home-manager.nixosModules.home-manager };
inputs.gnome-autounlock-keyring.nixosModules.default
inputs.catppuccin.nixosModules.catppuccin
];
}; };
specialArgs = {
inherit inputs;
};
config =
{ pkgs, ... }:
{
users.groups.backup = {
gid = 10000;
members = [ "syncthing" ];
};
imports = [
./common.nix
./syncthing.nix
inputs.home-manager.nixosModules.home-manager
inputs.gnome-autounlock-keyring.nixosModules.default
inputs.catppuccin.nixosModules.catppuccin
];
};
}; };
}; };
} }

View file

@ -0,0 +1,8 @@
{ ... }:
{
services.syncthing = {
enable = true;
openDefaultPorts = true;
guiAddress = "0.0.0.0:8384";
};
}

View file

@ -19,6 +19,13 @@
mac = "82:F0:7C:CB:BD:6D"; mac = "82:F0:7C:CB:BD:6D";
}; };
services.scrutiny = {
enable = true;
openFirewall = true;
influxdb.enable = true;
collector.enable = false;
};
# Use the GRUB 2 boot loader. # Use the GRUB 2 boot loader.
boot.loader.grub.enable = true; boot.loader.grub.enable = true;
boot.loader.grub.device = "/dev/sda"; boot.loader.grub.device = "/dev/sda";

View file

@ -23,11 +23,10 @@
users.users.vivian.extraGroups = [ "adbusers" ]; users.users.vivian.extraGroups = [ "adbusers" ];
security.pki.certificateFiles = [ ./domain.crt ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# (ollama.override {acceleration = "rocm"; })
]; ];
services.flatpak.enable = true; services.flatpak.enable = true;
# Bootloader. # Bootloader.
@ -35,7 +34,7 @@
bootspec.enable = true; bootspec.enable = true;
initrd.kernelModules = [ "amdgpu" ]; initrd.kernelModules = [ "amdgpu" ];
resumeDevice = "/dev/nvme0n1p2"; resumeDevice = "/dev/nvme0n1p2";
loader.systemd-boot.enable = lib.mkForce false; loader.systemd-boot.enable = lib.mkForce false; # Using lanzaboote instead
kernel.sysctl = { kernel.sysctl = {
"perf_event_paranoid" = 1; "perf_event_paranoid" = 1;
@ -59,11 +58,14 @@
]; ];
programs.hyprland.enable = true; programs.hyprland.enable = true;
services.gnome.gnome-keyring.enable = true; services.gnome.gnome-keyring.enable = true;
# services.gnome-autounlock-keyring = {
# enable = true; services.ollama = {
# target = "hyprland-session.target"; enable = true;
# }; acceleration = "rocm";
rocmOverrideGfx = "10.3.4";
};
services.interception-tools = { services.interception-tools = {
enable = true; enable = true;

View file

@ -1,21 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIDZTCCAk2gAwIBAgIUcCV6T0NduGa58qOcAhe9n8oOcEIwDQYJKoZIhvcNAQEL
BQAwWzELMAkGA1UEBhMCTkwxFTATBgNVBAgMDFp1aWQtSG9sbGFuZDEOMAwGA1UE
BwwFRGVsZnQxETAPBgNVBAoMCFRVIERlbGZ0MRIwEAYDVQQDDAlsb2NhbGhvc3Qw
HhcNMjQwNDA1MDgyMDQxWhcNMjUwNDA1MDgyMDQxWjBbMQswCQYDVQQGEwJOTDEV
MBMGA1UECAwMWnVpZC1Ib2xsYW5kMQ4wDAYDVQQHDAVEZWxmdDERMA8GA1UECgwI
VFUgRGVsZnQxEjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQAD
ggEPADCCAQoCggEBAIcX6xGqorbXkIqtH0ek2L9YAc0ruKF7aTpY9q7n6EpD4OC1
Q575fvnEqBsvKC74xh1AO58x7HLxAIWmy76UqUxJIQ7vtfCKxFDjBDhgitmnxWK1
3QCrHwFS3MThqOq0zhK7AqnpzzdHsj9zfPWbrhP86m4uugIAund2YiSUPX7ZrSSO
pY60bZiA2c3hJbqxg+NvNN1vZHEsPGaZHXMMrycw0bLOBoKPvbenl3ig23vsyRSO
MwiJgLK/ztMI6r2KMJVZofjbu1Mz+WPzotKaCrSArSRF36BOzafyxqgO0h3Vqp4W
Z6UpS1bFTpbJckz8LqNvlP/Z4mV5+1QyrwwN/iMCAwEAAaMhMB8wHQYDVR0OBBYE
FOSRI3SKLWlk2RamJJwyyFlP9UnhMA0GCSqGSIb3DQEBCwUAA4IBAQARLh5z4Ius
0kiejnMtzV5xAckbqbcultdEdGfjZciv3BM9C7DpEF5Nj8CbaK6TXrKh98bxQ6w+
lPL/6LECkPhvHWRhTOsrhDV5h6eSPyV/TX4Jj127WnzA1LcjoEngUY97y6p/eBkE
hZWepPPAhuEmu/ws1UmF8vrT4sc+nMKXrOTsqkdUKHh2JZuFby3+SHDkYX66ZxXK
bQ3dEi6GyOkZIOuaNK+mS76yVanRU4k0A3dhIpW4pV6W12AAWioGaZv34uKVTp9E
XgNhqDC39lU4rLp260NvuRywAKxvR7hKyWfmwak5lr0dZ9t4eufPI4jU5SD+aotq
FVTMFwAKZO5v
-----END CERTIFICATE-----

View file

@ -39,6 +39,7 @@
# Video Driver # Video Driver
xserver = { xserver = {
videoDrivers = [ "displaylink" ];
dpi = 280; dpi = 280;
}; };

View file

@ -20,7 +20,6 @@
jetbrains.idea-ultimate jetbrains.idea-ultimate
eduvpn-client eduvpn-client
localsend localsend
obsidian
typst typst
prismlauncher prismlauncher
libraw libraw
@ -33,6 +32,9 @@
"student-linux.tudelft.nl" = { "student-linux.tudelft.nl" = {
user = "vroest"; user = "vroest";
}; };
"login.delftblue.tudelft.nl" = {
user = "vroest";
};
"cese01" = { "cese01" = {
hostname = "cese01.ewi.tudelft.nl"; hostname = "cese01.ewi.tudelft.nl";
user = "vroest"; user = "vroest";

View file

@ -32,4 +32,38 @@
]; ];
}; };
# Vivado udev
services.udev.packages = [
(pkgs.writeTextFile {
name = "xilinx-dilligent-usb-udev";
destination = "/etc/udev/rules.d/52-xilinx-digilent-usb.rules";
text = ''
ATTR{idVendor}=="1443", MODE:="666"
ACTION=="add", ATTR{idVendor}=="0403", ATTR{manufacturer}=="Digilent", MODE:="666"
'';
})
(pkgs.writeTextFile {
name = "xilinx-pcusb-udev";
destination = "/etc/udev/rules.d/52-xilinx-pcusb.rules";
text = ''
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0008", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0007", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0009", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="000d", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="000f", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0013", MODE="666"
ATTR{idVendor}=="03fd", ATTR{idProduct}=="0015", MODE="666"
'';
})
(pkgs.writeTextFile {
name = "xilinx-ftdi-usb-udev";
destination = "/etc/udev/rules.d/52-xilinx-ftdi-usb.rules";
text = ''
ACTION=="add", ATTR{idVendor}=="0403", ATTR{manufacturer}=="Xilinx", MODE:="666"
'';
})
];
} }