summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Kaiser2026-06-12 18:10:16 +0200
committerDominik Kaiser2026-06-12 18:10:16 +0200
commit2df5bc584899f427495cc20927170de2a2c84b32 (patch)
treed1a87bcd3c17d605e3f25e4bb8d7a6ec060c73ba
downloadnixos-2df5bc584899f427495cc20927170de2a2c84b32.tar.gz
nixos-2df5bc584899f427495cc20927170de2a2c84b32.zip
Setup luna
-rw-r--r--flake.lock230
-rw-r--r--flake.nix27
-rw-r--r--modules/features/audio-production.nix36
-rw-r--r--modules/features/audio.nix14
-rw-r--r--modules/features/bluetooth.nix20
-rw-r--r--modules/features/desktop/niri.nix76
-rw-r--r--modules/features/desktop/noctalia.json748
-rw-r--r--modules/features/desktop/noctalia.nix15
-rw-r--r--modules/features/home-manager.nix13
-rw-r--r--modules/features/power-management.nix8
-rw-r--r--modules/home/browsers/zen.nix49
-rw-r--r--modules/home/comms/vesktop.nix8
-rw-r--r--modules/hosts/luna/configuration.nix62
-rw-r--r--modules/hosts/luna/default.nix25
-rw-r--r--modules/hosts/luna/disko.nix73
-rw-r--r--modules/hosts/luna/hardware.nix20
-rw-r--r--modules/hosts/luna/home.nix14
-rw-r--r--modules/hosts/luna/preservation.nix54
-rw-r--r--modules/parts.nix13
19 files changed, 1505 insertions, 0 deletions
diff --git a/flake.lock b/flake.lock
new file mode 100644
index 0000000..cb800dd
--- /dev/null
+++ b/flake.lock
@@ -0,0 +1,230 @@
+{
+ "nodes": {
+ "disko": {
+ "inputs": {
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1781152676,
+ "narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=",
+ "owner": "nix-community",
+ "repo": "disko",
+ "rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "repo": "disko",
+ "type": "github"
+ }
+ },
+ "flake-parts": {
+ "inputs": {
+ "nixpkgs-lib": "nixpkgs-lib"
+ },
+ "locked": {
+ "lastModified": 1778716662,
+ "narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=",
+ "owner": "hercules-ci",
+ "repo": "flake-parts",
+ "rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb",
+ "type": "github"
+ },
+ "original": {
+ "owner": "hercules-ci",
+ "repo": "flake-parts",
+ "type": "github"
+ }
+ },
+ "home-manager": {
+ "inputs": {
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1781129616,
+ "narHash": "sha256-Hl0Pz/QIKpePSU7SdK3BMe5VNmUhFvfWyg57GyawxzE=",
+ "owner": "nix-community",
+ "repo": "home-manager",
+ "rev": "7dbd305f8b81050f223f00bcfbc8a6b74e048806",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "ref": "master",
+ "repo": "home-manager",
+ "type": "github"
+ }
+ },
+ "import-tree": {
+ "locked": {
+ "lastModified": 1778781969,
+ "narHash": "sha256-Jjuz5CmSkur8KvLDoGa+vylEp+RkQtv4mt/qcMznpH0=",
+ "owner": "vic",
+ "repo": "import-tree",
+ "rev": "d321337efd0f23a9eb14a42adb7b2c29313ab274",
+ "type": "github"
+ },
+ "original": {
+ "owner": "vic",
+ "repo": "import-tree",
+ "type": "github"
+ }
+ },
+ "musnix": {
+ "inputs": {
+ "nixpkgs": "nixpkgs"
+ },
+ "locked": {
+ "lastModified": 1777848538,
+ "narHash": "sha256-Dj51C0NWsglqRrCpdmMr2nFiYacFOid1Tor4H9yG2HY=",
+ "owner": "musnix",
+ "repo": "musnix",
+ "rev": "8548782f0d1d0928daa3fffde8a008f72219a3f3",
+ "type": "github"
+ },
+ "original": {
+ "owner": "musnix",
+ "repo": "musnix",
+ "type": "github"
+ }
+ },
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1777268161,
+ "narHash": "sha256-bxrdOn8SCOv8tN4JbTF/TXq7kjo9ag4M+C8yzzIRYbE=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "1c3fe55ad329cbcb28471bb30f05c9827f724c76",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs-lib": {
+ "locked": {
+ "lastModified": 1777168982,
+ "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
+ "owner": "nix-community",
+ "repo": "nixpkgs.lib",
+ "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "repo": "nixpkgs.lib",
+ "type": "github"
+ }
+ },
+ "nixpkgs_2": {
+ "locked": {
+ "lastModified": 1780749050,
+ "narHash": "sha256-3av0pIjlOWQ6rDbNOmpUSvbNnJkGORQKKjb4LtCZsIY=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "a799d3e3886da994fa307f817a6bc705ae538eeb",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs_3": {
+ "locked": {
+ "lastModified": 1780336545,
+ "narHash": "sha256-vhVhuXzFrIOfcssC/9hDHx7MHzDKjF3keHuREOQqQiQ=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "4df1b885d76a54e1aa1a318f8d16fd6005b6401f",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixpkgs-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "preservation": {
+ "locked": {
+ "lastModified": 1757436102,
+ "narHash": "sha256-mMI9IanU+Xw+pVogD2oT0I2kTmvz2Un/Apc5+CwUpEY=",
+ "owner": "nix-community",
+ "repo": "preservation",
+ "rev": "93416f4614ad2dfed5b0dcf12f27e57d27a5ab11",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-community",
+ "repo": "preservation",
+ "type": "github"
+ }
+ },
+ "root": {
+ "inputs": {
+ "disko": "disko",
+ "flake-parts": "flake-parts",
+ "home-manager": "home-manager",
+ "import-tree": "import-tree",
+ "musnix": "musnix",
+ "nixpkgs": "nixpkgs_2",
+ "preservation": "preservation",
+ "wrapper-modules": "wrapper-modules",
+ "zen-browser": "zen-browser"
+ }
+ },
+ "wrapper-modules": {
+ "inputs": {
+ "nixpkgs": "nixpkgs_3"
+ },
+ "locked": {
+ "lastModified": 1780661205,
+ "narHash": "sha256-3F5DixT3Gk91lBI9E+TGMm0ko5HrRbDiL23di16TJGA=",
+ "owner": "BirdeeHub",
+ "repo": "nix-wrapper-modules",
+ "rev": "8dd304c3582ddd339217e1cc5fb53f50acb63c2d",
+ "type": "github"
+ },
+ "original": {
+ "owner": "BirdeeHub",
+ "repo": "nix-wrapper-modules",
+ "type": "github"
+ }
+ },
+ "zen-browser": {
+ "inputs": {
+ "home-manager": [
+ "home-manager"
+ ],
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1781145474,
+ "narHash": "sha256-nxZk7i8liid1p1JZG/axWHYu1c45mIRU96aqAN/Fc+o=",
+ "owner": "0xc000022070",
+ "repo": "zen-browser-flake",
+ "rev": "29f597303de737a1473f4507a13a22dcb43b4b3f",
+ "type": "github"
+ },
+ "original": {
+ "owner": "0xc000022070",
+ "repo": "zen-browser-flake",
+ "type": "github"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..fb2eef3
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,27 @@
+{
+ inputs = {
+ nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
+
+ flake-parts.url = "github:hercules-ci/flake-parts";
+ import-tree.url = "github:vic/import-tree";
+
+ wrapper-modules.url = "github:BirdeeHub/nix-wrapper-modules";
+
+ preservation.url = "github:nix-community/preservation";
+ disko.url = "github:nix-community/disko";
+ disko.inputs.nixpkgs.follows = "nixpkgs";
+
+ home-manager.url = "github:nix-community/home-manager/master";
+ home-manager.inputs.nixpkgs.follows = "nixpkgs";
+
+ zen-browser.url = "github:0xc000022070/zen-browser-flake";
+ zen-browser.inputs = {
+ nixpkgs.follows = "nixpkgs";
+ home-manager.follows = "home-manager";
+ };
+
+ musnix.url = "github:musnix/musnix";
+ };
+
+ outputs = inputs: inputs.flake-parts.lib.mkFlake {inherit inputs;} (inputs.import-tree ./modules);
+}
diff --git a/modules/features/audio-production.nix b/modules/features/audio-production.nix
new file mode 100644
index 0000000..47a34e9
--- /dev/null
+++ b/modules/features/audio-production.nix
@@ -0,0 +1,36 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.audioProduction = { pkgs, lib, ... }: {
+ musnix.enable = true;
+ services.systembus-notify.enable = true;
+
+ security.pam.loginLimits = [
+ {
+ domain = "dk";
+ item = "nofile";
+ type = "hard";
+ value = "524288";
+ }
+ ];
+
+ users.users.dk.extraGroups = [ "audio" ];
+
+ environment.systemPackages = with pkgs; [
+ ardour
+ guitarix
+ guitarix-vst
+ neural-amp-modeler-lv2
+ lsp-plugins
+ dragonfly-reverb
+ drumgizmo
+ sfizz
+ x42-plugins
+ geonkick
+ surge-xt
+ carla
+ helm
+ cardinal
+ ];
+ };
+
+} \ No newline at end of file
diff --git a/modules/features/audio.nix b/modules/features/audio.nix
new file mode 100644
index 0000000..ace9dc2
--- /dev/null
+++ b/modules/features/audio.nix
@@ -0,0 +1,14 @@
+{ self, input, ... }: {
+
+ flake.nixosModules.audio = { pkgs, lib, ... }: {
+ services.pipewire = {
+ enable = true;
+ alsa.enable = true;
+ alsa.support32Bit = true;
+ pulse.enable = true;
+ jack.enable = true;
+ };
+ security.rtkit.enable = true;
+ };
+
+} \ No newline at end of file
diff --git a/modules/features/bluetooth.nix b/modules/features/bluetooth.nix
new file mode 100644
index 0000000..61f6831
--- /dev/null
+++ b/modules/features/bluetooth.nix
@@ -0,0 +1,20 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.bluetooth = { pkgs, lib, ... }: {
+ hardware.bluetooth = {
+ enable = true;
+ powerOnBoot = true;
+ settings = {
+ General = {
+ Experimental = true;
+ FastConnectable = false;
+ };
+
+ Policy = {
+ AutoEnable = true;
+ };
+ };
+ };
+ };
+
+} \ No newline at end of file
diff --git a/modules/features/desktop/niri.nix b/modules/features/desktop/niri.nix
new file mode 100644
index 0000000..1b0df47
--- /dev/null
+++ b/modules/features/desktop/niri.nix
@@ -0,0 +1,76 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.niri = { pkgs, lib, ... }: {
+ programs.niri = {
+ enable = true;
+ package = self.packages.${pkgs.stdenv.hostPlatform.system}.myNiri;
+ };
+ };
+
+
+ perSystem = { pkgs, lib, self', ... }: {
+
+ packages.myNiri = inputs.wrapper-modules.wrappers.niri.wrap {
+ inherit pkgs;
+ #env.QT_QPA_PLATFORMTHEME = "gtk3";
+ settings = {
+ spawn-at-startup = [
+ "${lib.getExe self'.packages.myNoctalia}"
+ ];
+
+ spawn-sh-at-startup = [
+ "${lib.getExe pkgs.brightnessctl} set 60%"
+ ];
+
+ xwayland-satellite.path = lib.getExe pkgs.xwayland-satellite;
+
+ input.keyboard = {
+ xkb.layout = "de";
+ };
+
+ layout.gaps = 10;
+
+ prefer-no-csd = true;
+
+ binds = {
+ "Mod+Return".spawn-sh = lib.getExe pkgs.alacritty;
+ "Mod+S".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher toggle";
+ "Mod+Q".close-window = _: {};
+ "Mod+Shift+E".quit = _: {};
+ "Mod+F".maximize-column = _: {};
+ "Mod+H".show-hotkey-overlay = _: {};
+ "Mod+Left".focus-column-left = _: {};
+ "Mod+Right".focus-column-right = _: {};
+ "Mod+Shift+Left".move-column-left = _: {};
+ "Mod+Shift+Right".move-column-right = _: {};
+ "Mod+Prior".focus-workspace-up = _: {};
+ "Mod+Next".focus-workspace-down = _: {};
+ "Mod+Shift+Prior".move-column-to-workspace-up = _: {};
+ "Mod+Shift+Next".move-column-to-workspace-down = _: {};
+ "Mod+O".toggle-overview = _: {};
+ "Mod+G".toggle-window-floating = _: {};
+ "Mod+Ctrl+Left".consume-or-expel-window-left = _: {};
+ "Mod+Ctrl+Right".consume-or-expel-window-right = _: {};
+ "Mod+Space".switch-focus-between-floating-and-tiling = _: {};
+ "Mod+Ctrl+Space".switch-preset-column-width = _: {};
+ "Mod+W".spawn-sh = "$BROWSER";
+ "Mod+E".spawn-sh = "emacsclient -c";
+ };
+
+ window-rules = [
+ {
+ matches = [ { app-id = ".*"; } ];
+ opacity = 0.90;
+ }
+ ];
+
+ };
+
+ extraSettings = [
+ { include = [ { optional = true; } "~/.config/niri/noctalia.kdl" ]; }
+ ];
+ };
+
+ };
+
+}
diff --git a/modules/features/desktop/noctalia.json b/modules/features/desktop/noctalia.json
new file mode 100644
index 0000000..059da36
--- /dev/null
+++ b/modules/features/desktop/noctalia.json
@@ -0,0 +1,748 @@
+{
+ "settings": {
+ "settingsVersion": 59,
+ "bar": {
+ "barType": "simple",
+ "position": "top",
+ "monitors": [],
+ "density": "default",
+ "showOutline": false,
+ "showCapsule": true,
+ "capsuleOpacity": 1,
+ "capsuleColorKey": "none",
+ "widgetSpacing": 6,
+ "contentPadding": 2,
+ "fontScale": 1,
+ "enableExclusionZoneInset": true,
+ "backgroundOpacity": 0.93,
+ "useSeparateOpacity": false,
+ "marginVertical": 4,
+ "marginHorizontal": 4,
+ "frameThickness": 8,
+ "frameRadius": 12,
+ "outerCorners": true,
+ "hideOnOverview": false,
+ "displayMode": "always_visible",
+ "autoHideDelay": 500,
+ "autoShowDelay": 150,
+ "showOnWorkspaceSwitch": true,
+ "widgets": {
+ "left": [
+ {
+ "colorizeSystemIcon": "none",
+ "colorizeSystemText": "none",
+ "customIconPath": "",
+ "enableColorization": false,
+ "icon": "rocket",
+ "iconColor": "none",
+ "id": "Launcher",
+ "useDistroLogo": false
+ },
+ {
+ "compactMode": true,
+ "diskPath": "/",
+ "iconColor": "none",
+ "id": "SystemMonitor",
+ "showCpuCores": false,
+ "showCpuFreq": false,
+ "showCpuTemp": true,
+ "showCpuUsage": true,
+ "showDiskAvailable": false,
+ "showDiskUsage": false,
+ "showDiskUsageAsPercent": false,
+ "showGpuTemp": false,
+ "showLoadAverage": false,
+ "showMemoryAsPercent": false,
+ "showMemoryUsage": true,
+ "showNetworkStats": false,
+ "showSwapUsage": false,
+ "textColor": "none",
+ "useMonospaceFont": true,
+ "usePadding": false
+ },
+ {
+ "compactMode": false,
+ "hideMode": "hidden",
+ "hideWhenIdle": false,
+ "id": "MediaMini",
+ "maxWidth": 145,
+ "panelShowAlbumArt": true,
+ "scrollingMode": "hover",
+ "showAlbumArt": true,
+ "showArtistFirst": true,
+ "showProgressRing": true,
+ "showVisualizer": false,
+ "textColor": "none",
+ "useFixedWidth": false,
+ "visualizerType": "linear"
+ }
+ ],
+ "center": [
+ {
+ "clockColor": "none",
+ "customFont": "",
+ "formatHorizontal": "HH:mm ddd, MMM dd",
+ "formatVertical": "HH mm - dd MM",
+ "id": "Clock",
+ "tooltipFormat": "HH:mm ddd, MMM dd",
+ "useCustomFont": false
+ },
+ {
+ "characterCount": 2,
+ "colorizeIcons": false,
+ "emptyColor": "secondary",
+ "enableScrollWheel": true,
+ "focusedColor": "primary",
+ "followFocusedScreen": false,
+ "fontWeight": "bold",
+ "groupedBorderOpacity": 1,
+ "hideUnoccupied": false,
+ "iconScale": 0.8,
+ "id": "Workspace",
+ "labelMode": "index",
+ "occupiedColor": "secondary",
+ "pillSize": 0.6,
+ "showApplications": false,
+ "showApplicationsHover": false,
+ "showBadge": true,
+ "showLabelsOnlyWhenOccupied": true,
+ "unfocusedIconsOpacity": 1
+ }
+ ],
+ "right": [
+ {
+ "blacklist": [],
+ "chevronColor": "none",
+ "colorizeIcons": false,
+ "drawerEnabled": true,
+ "hidePassive": false,
+ "id": "Tray",
+ "pinned": []
+ },
+ {
+ "hideWhenZero": false,
+ "hideWhenZeroUnread": false,
+ "iconColor": "none",
+ "id": "NotificationHistory",
+ "showUnreadBadge": true,
+ "unreadBadgeColor": "primary"
+ },
+ {
+ "deviceNativePath": "__default__",
+ "displayMode": "graphic-clean",
+ "hideIfIdle": false,
+ "hideIfNotDetected": true,
+ "id": "Battery",
+ "showNoctaliaPerformance": false,
+ "showPowerProfiles": false
+ },
+ {
+ "displayMode": "onhover",
+ "iconColor": "none",
+ "id": "Volume",
+ "middleClickCommand": "pwvucontrol || pavucontrol",
+ "textColor": "none"
+ },
+ {
+ "applyToAllMonitors": false,
+ "displayMode": "onhover",
+ "iconColor": "none",
+ "id": "Brightness",
+ "textColor": "none"
+ },
+ {
+ "colorizeDistroLogo": false,
+ "colorizeSystemIcon": "none",
+ "colorizeSystemText": "none",
+ "customIconPath": "",
+ "enableColorization": false,
+ "icon": "noctalia",
+ "id": "ControlCenter",
+ "useDistroLogo": false
+ }
+ ]
+ },
+ "mouseWheelAction": "none",
+ "reverseScroll": false,
+ "mouseWheelWrap": true,
+ "middleClickAction": "none",
+ "middleClickFollowMouse": false,
+ "middleClickCommand": "",
+ "rightClickAction": "controlCenter",
+ "rightClickFollowMouse": true,
+ "rightClickCommand": "",
+ "screenOverrides": []
+ },
+ "general": {
+ "avatarImage": "/home/dk/.face",
+ "dimmerOpacity": 0.2,
+ "showScreenCorners": false,
+ "forceBlackScreenCorners": false,
+ "scaleRatio": 1,
+ "radiusRatio": 0.5,
+ "iRadiusRatio": 0.5,
+ "boxRadiusRatio": 1,
+ "screenRadiusRatio": 1,
+ "animationSpeed": 2,
+ "animationDisabled": true,
+ "compactLockScreen": false,
+ "lockScreenAnimations": false,
+ "lockOnSuspend": true,
+ "showSessionButtonsOnLockScreen": true,
+ "showHibernateOnLockScreen": false,
+ "enableLockScreenMediaControls": false,
+ "enableShadows": true,
+ "enableBlurBehind": true,
+ "shadowDirection": "bottom_right",
+ "shadowOffsetX": 2,
+ "shadowOffsetY": 3,
+ "language": "en",
+ "allowPanelsOnScreenWithoutBar": true,
+ "showChangelogOnStartup": true,
+ "telemetryEnabled": false,
+ "enableLockScreenCountdown": true,
+ "lockScreenCountdownDuration": 10000,
+ "autoStartAuth": false,
+ "allowPasswordWithFprintd": false,
+ "clockStyle": "custom",
+ "clockFormat": "hh\\nmm",
+ "passwordChars": false,
+ "lockScreenMonitors": [],
+ "lockScreenBlur": 0,
+ "lockScreenTint": 0,
+ "keybinds": {
+ "keyUp": [
+ "Up"
+ ],
+ "keyDown": [
+ "Down"
+ ],
+ "keyLeft": [
+ "Left"
+ ],
+ "keyRight": [
+ "Right"
+ ],
+ "keyEnter": [
+ "Return",
+ "Enter"
+ ],
+ "keyEscape": [
+ "Esc"
+ ],
+ "keyRemove": [
+ "Del"
+ ]
+ },
+ "reverseScroll": false,
+ "smoothScrollEnabled": true
+ },
+ "ui": {
+ "fontDefault": "Sans Serif",
+ "fontFixed": "monospace",
+ "fontDefaultScale": 1,
+ "fontFixedScale": 1,
+ "tooltipsEnabled": true,
+ "scrollbarAlwaysVisible": true,
+ "boxBorderEnabled": false,
+ "panelBackgroundOpacity": 0.93,
+ "translucentWidgets": false,
+ "panelsAttachedToBar": true,
+ "settingsPanelMode": "attached",
+ "settingsPanelSideBarCardStyle": false
+ },
+ "location": {
+ "name": "Schwaikheim",
+ "weatherEnabled": true,
+ "weatherShowEffects": false,
+ "weatherTaliaMascotAlways": false,
+ "useFahrenheit": false,
+ "use12hourFormat": false,
+ "showWeekNumberInCalendar": false,
+ "showCalendarEvents": true,
+ "showCalendarWeather": true,
+ "analogClockInCalendar": false,
+ "firstDayOfWeek": -1,
+ "hideWeatherTimezone": true,
+ "hideWeatherCityName": true,
+ "autoLocate": false
+ },
+ "calendar": {
+ "cards": [
+ {
+ "enabled": true,
+ "id": "calendar-header-card"
+ },
+ {
+ "enabled": true,
+ "id": "calendar-month-card"
+ },
+ {
+ "enabled": true,
+ "id": "weather-card"
+ }
+ ]
+ },
+ "wallpaper": {
+ "enabled": true,
+ "overviewEnabled": false,
+ "directory": "/home/dk/Pictures/Wallpapers",
+ "monitorDirectories": [],
+ "enableMultiMonitorDirectories": false,
+ "showHiddenFiles": false,
+ "viewMode": "single",
+ "setWallpaperOnAllMonitors": true,
+ "linkLightAndDarkWallpapers": true,
+ "fillMode": "crop",
+ "fillColor": "#000000",
+ "useSolidColor": false,
+ "solidColor": "#466e97",
+ "automationEnabled": false,
+ "wallpaperChangeMode": "random",
+ "randomIntervalSec": 300,
+ "transitionDuration": 1500,
+ "transitionType": [
+ "fade",
+ "disc",
+ "stripes",
+ "wipe",
+ "pixelate",
+ "honeycomb"
+ ],
+ "skipStartupTransition": false,
+ "transitionEdgeSmoothness": 0.05,
+ "panelPosition": "follow_bar",
+ "hideWallpaperFilenames": false,
+ "useOriginalImages": false,
+ "overviewBlur": 0.4,
+ "overviewTint": 0.6,
+ "useWallhaven": false,
+ "wallhavenQuery": "",
+ "wallhavenSorting": "relevance",
+ "wallhavenOrder": "desc",
+ "wallhavenCategories": "111",
+ "wallhavenPurity": "100",
+ "wallhavenRatios": "",
+ "wallhavenApiKey": "",
+ "wallhavenResolutionMode": "atleast",
+ "wallhavenResolutionWidth": "",
+ "wallhavenResolutionHeight": "",
+ "sortOrder": "name",
+ "favorites": []
+ },
+ "appLauncher": {
+ "enableClipboardHistory": false,
+ "autoPasteClipboard": false,
+ "enableClipPreview": true,
+ "clipboardWrapText": true,
+ "enableClipboardSmartIcons": true,
+ "enableClipboardChips": true,
+ "clipboardWatchTextCommand": "wl-paste --type text --watch cliphist store",
+ "clipboardWatchImageCommand": "wl-paste --type image --watch cliphist store",
+ "position": "center",
+ "pinnedApps": [],
+ "sortByMostUsed": true,
+ "terminalCommand": "alacritty -e",
+ "customLaunchPrefixEnabled": false,
+ "customLaunchPrefix": "",
+ "viewMode": "list",
+ "showCategories": true,
+ "iconMode": "tabler",
+ "showIconBackground": false,
+ "enableSettingsSearch": true,
+ "enableWindowsSearch": true,
+ "enableSessionSearch": true,
+ "ignoreMouseInput": false,
+ "screenshotAnnotationTool": "",
+ "overviewLayer": false,
+ "density": "default"
+ },
+ "controlCenter": {
+ "position": "close_to_bar_button",
+ "diskPath": "/",
+ "shortcuts": {
+ "left": [
+ {
+ "id": "Network"
+ },
+ {
+ "id": "Bluetooth"
+ },
+ {
+ "id": "WallpaperSelector"
+ },
+ {
+ "id": "NoctaliaPerformance"
+ }
+ ],
+ "right": [
+ {
+ "id": "Notifications"
+ },
+ {
+ "id": "PowerProfile"
+ },
+ {
+ "id": "KeepAwake"
+ },
+ {
+ "id": "NightLight"
+ }
+ ]
+ },
+ "cards": [
+ {
+ "enabled": true,
+ "id": "profile-card"
+ },
+ {
+ "enabled": true,
+ "id": "shortcuts-card"
+ },
+ {
+ "enabled": true,
+ "id": "audio-card"
+ },
+ {
+ "enabled": false,
+ "id": "brightness-card"
+ },
+ {
+ "enabled": true,
+ "id": "weather-card"
+ },
+ {
+ "enabled": true,
+ "id": "media-sysmon-card"
+ }
+ ]
+ },
+ "systemMonitor": {
+ "cpuWarningThreshold": 80,
+ "cpuCriticalThreshold": 90,
+ "tempWarningThreshold": 80,
+ "tempCriticalThreshold": 90,
+ "gpuWarningThreshold": 80,
+ "gpuCriticalThreshold": 90,
+ "memWarningThreshold": 80,
+ "memCriticalThreshold": 90,
+ "swapWarningThreshold": 80,
+ "swapCriticalThreshold": 90,
+ "diskWarningThreshold": 80,
+ "diskCriticalThreshold": 90,
+ "diskAvailWarningThreshold": 20,
+ "diskAvailCriticalThreshold": 10,
+ "batteryWarningThreshold": 20,
+ "batteryCriticalThreshold": 5,
+ "enableDgpuMonitoring": false,
+ "useCustomColors": false,
+ "warningColor": "",
+ "criticalColor": "",
+ "externalMonitor": "resources || missioncenter || jdsystemmonitor || corestats || system-monitoring-center || gnome-system-monitor || plasma-systemmonitor || mate-system-monitor || ukui-system-monitor || deepin-system-monitor || pantheon-system-monitor"
+ },
+ "noctaliaPerformance": {
+ "disableWallpaper": true,
+ "disableDesktopWidgets": true
+ },
+ "dock": {
+ "enabled": false,
+ "position": "bottom",
+ "displayMode": "auto_hide",
+ "dockType": "floating",
+ "backgroundOpacity": 1,
+ "floatingRatio": 1,
+ "size": 1,
+ "onlySameOutput": true,
+ "monitors": [],
+ "pinnedApps": [],
+ "colorizeIcons": false,
+ "showLauncherIcon": false,
+ "launcherPosition": "end",
+ "launcherUseDistroLogo": false,
+ "launcherIcon": "",
+ "launcherIconColor": "none",
+ "pinnedStatic": false,
+ "inactiveIndicators": false,
+ "groupApps": false,
+ "groupContextMenuMode": "extended",
+ "groupClickAction": "cycle",
+ "groupIndicatorStyle": "dots",
+ "deadOpacity": 0.6,
+ "animationSpeed": 1,
+ "sitOnFrame": false,
+ "showDockIndicator": false,
+ "indicatorThickness": 3,
+ "indicatorColor": "primary",
+ "indicatorOpacity": 0.6
+ },
+ "network": {
+ "bluetoothRssiPollingEnabled": false,
+ "bluetoothRssiPollIntervalMs": 60000,
+ "networkPanelView": "wifi",
+ "wifiDetailsViewMode": "grid",
+ "bluetoothDetailsViewMode": "grid",
+ "bluetoothHideUnnamedDevices": false,
+ "disableDiscoverability": false,
+ "bluetoothAutoConnect": true
+ },
+ "sessionMenu": {
+ "enableCountdown": true,
+ "countdownDuration": 10000,
+ "position": "center",
+ "showHeader": true,
+ "showKeybinds": true,
+ "largeButtonsStyle": true,
+ "largeButtonsLayout": "single-row",
+ "powerOptions": [
+ {
+ "action": "lock",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "1"
+ },
+ {
+ "action": "suspend",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "2"
+ },
+ {
+ "action": "hibernate",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "3"
+ },
+ {
+ "action": "reboot",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "4"
+ },
+ {
+ "action": "logout",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "5"
+ },
+ {
+ "action": "shutdown",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "6"
+ },
+ {
+ "action": "rebootToUefi",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": true,
+ "keybind": "7"
+ },
+ {
+ "action": "userspaceReboot",
+ "command": "",
+ "countdownEnabled": true,
+ "enabled": false,
+ "keybind": ""
+ }
+ ]
+ },
+ "notifications": {
+ "enabled": true,
+ "enableMarkdown": false,
+ "density": "default",
+ "monitors": [],
+ "location": "top_right",
+ "overlayLayer": true,
+ "backgroundOpacity": 1,
+ "respectExpireTimeout": false,
+ "lowUrgencyDuration": 3,
+ "normalUrgencyDuration": 8,
+ "criticalUrgencyDuration": 15,
+ "clearDismissed": true,
+ "saveToHistory": {
+ "low": true,
+ "normal": true,
+ "critical": true
+ },
+ "sounds": {
+ "enabled": false,
+ "volume": 0.5,
+ "separateSounds": false,
+ "criticalSoundFile": "",
+ "normalSoundFile": "",
+ "lowSoundFile": "",
+ "excludedApps": "discord,firefox,chrome,chromium,edge"
+ },
+ "enableMediaToast": false,
+ "enableKeyboardLayoutToast": true,
+ "enableBatteryToast": true
+ },
+ "osd": {
+ "enabled": true,
+ "location": "top_right",
+ "autoHideMs": 2000,
+ "overlayLayer": true,
+ "backgroundOpacity": 1,
+ "enabledTypes": [
+ 0,
+ 1,
+ 2
+ ],
+ "monitors": []
+ },
+ "audio": {
+ "volumeStep": 5,
+ "volumeOverdrive": false,
+ "spectrumFrameRate": 30,
+ "visualizerType": "linear",
+ "spectrumMirrored": true,
+ "mprisBlacklist": [],
+ "preferredPlayer": "",
+ "volumeFeedback": false,
+ "volumeFeedbackSoundFile": ""
+ },
+ "brightness": {
+ "brightnessStep": 5,
+ "enforceMinimum": true,
+ "enableDdcSupport": false,
+ "backlightDeviceMappings": []
+ },
+ "colorSchemes": {
+ "useWallpaperColors": false,
+ "predefinedScheme": "Gruvbox",
+ "darkMode": true,
+ "schedulingMode": "off",
+ "manualSunrise": "06:30",
+ "manualSunset": "18:30",
+ "generationMethod": "faithful",
+ "monitorForColors": "",
+ "syncGsettings": true
+ },
+ "templates": {
+ "activeTemplates": [
+ {
+ "enabled": true,
+ "id": "zenBrowser"
+ },
+ {
+ "enabled": true,
+ "id": "niri"
+ },
+ {
+ "enabled": true,
+ "id": "emacs"
+ },
+ {
+ "enabled": true,
+ "id": "gtk"
+ },
+ {
+ "enabled": true,
+ "id": "alacritty"
+ },
+ {
+ "enabled": true,
+ "id": "discord"
+ },
+ {
+ "enabled": true,
+ "id": "qt"
+ }
+ ],
+ "enableUserTheming": false
+ },
+ "nightLight": {
+ "enabled": true,
+ "forced": false,
+ "autoSchedule": true,
+ "nightTemp": "4000",
+ "dayTemp": "6500",
+ "manualSunrise": "06:30",
+ "manualSunset": "18:30"
+ },
+ "hooks": {
+ "enabled": false,
+ "wallpaperChange": "",
+ "darkModeChange": "",
+ "screenLock": "",
+ "screenUnlock": "",
+ "performanceModeEnabled": "",
+ "performanceModeDisabled": "",
+ "startup": "",
+ "session": "",
+ "colorGeneration": ""
+ },
+ "plugins": {
+ "autoUpdate": false,
+ "notifyUpdates": true
+ },
+ "idle": {
+ "enabled": false,
+ "screenOffTimeout": 600,
+ "lockTimeout": 660,
+ "suspendTimeout": 1800,
+ "fadeDuration": 5,
+ "screenOffCommand": "",
+ "lockCommand": "",
+ "suspendCommand": "",
+ "resumeScreenOffCommand": "",
+ "resumeLockCommand": "",
+ "resumeSuspendCommand": "",
+ "customCommands": "[]"
+ },
+ "desktopWidgets": {
+ "enabled": false,
+ "overviewEnabled": true,
+ "gridSnap": false,
+ "gridSnapScale": false,
+ "monitorWidgets": []
+ }
+ },
+ "state": {
+ "doNotDisturb": false,
+ "noctaliaPerformanceMode": false,
+ "barVisible": true,
+ "openedPanel": "",
+ "lockScreenActive": false,
+ "wallpapers": {
+ "eDP-1": "/home/dk/Pictures/Wallpapers/kenshi_art.png"
+ },
+ "desktopWidgetsEditMode": false,
+ "display": {
+ "eDP-1": {
+ "name": "eDP-1",
+ "connected": true,
+ "scale": 1.25,
+ "width": 1536,
+ "height": 864,
+ "x": 0,
+ "y": 0,
+ "physical_width": 290,
+ "physical_height": 160,
+ "refresh_rate": 60033,
+ "vrr_supported": false,
+ "vrr_enabled": false,
+ "transform": "Normal"
+ }
+ },
+ "notificationsState": {
+ "lastSeenTs": 1780854571000
+ },
+ "changelogState": {
+ "lastSeenVersion": "v4.7.7"
+ },
+ "colorSchemesList": {
+ "schemes": [],
+ "timestamp": 0
+ },
+ "ui": {
+ "settingsSidebarExpanded": true
+ }
+ }
+}
diff --git a/modules/features/desktop/noctalia.nix b/modules/features/desktop/noctalia.nix
new file mode 100644
index 0000000..b058821
--- /dev/null
+++ b/modules/features/desktop/noctalia.nix
@@ -0,0 +1,15 @@
+{ self, inputs, ... }: {
+
+ perSystem = { pkgs, config, ... }: {
+
+ packages.myNoctalia = inputs.wrapper-modules.wrappers.noctalia-shell.wrap {
+ inherit pkgs;
+ settings =
+ (builtins.fromJSON
+ (builtins.readFile ./noctalia.json)).settings;
+ };
+ };
+}
+
+# Run this for updating:
+# nix run nixpkgs#noctalia-shell ipc call state all > noctalia.json
diff --git a/modules/features/home-manager.nix b/modules/features/home-manager.nix
new file mode 100644
index 0000000..60b9e1d
--- /dev/null
+++ b/modules/features/home-manager.nix
@@ -0,0 +1,13 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.myHomeManager = { pkgs, ... }: {
+ imports = [ inputs.home-manager.nixosModules.default ];
+
+ home-manager = {
+ useGlobalPkgs = true;
+ useUserPackages = true;
+ };
+
+ };
+
+}
diff --git a/modules/features/power-management.nix b/modules/features/power-management.nix
new file mode 100644
index 0000000..9e21941
--- /dev/null
+++ b/modules/features/power-management.nix
@@ -0,0 +1,8 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.powerManagement = { pkgs, lib, ... }: {
+ services.upower.enable = true;
+ services.power-profiles-daemon.enable = true;
+ };
+
+} \ No newline at end of file
diff --git a/modules/home/browsers/zen.nix b/modules/home/browsers/zen.nix
new file mode 100644
index 0000000..9b2c24d
--- /dev/null
+++ b/modules/home/browsers/zen.nix
@@ -0,0 +1,49 @@
+
+{ self, inputs, ...}: {
+
+ flake.homeModules.zen-browser = {pkgs, lib, ...}: let
+ zen = inputs.zen-browser.homeModules.beta;
+ in {
+ imports = [ zen ];
+
+ programs.zen-browser = {
+ enable = true;
+ setAsDefaultBrowser = true;
+
+ policies = let
+ mkExtensionSettings = builtins.mapAttrs (_: pluginId: {
+ install_url = "https://addons.mozilla.org/firefox/downloads/latest/${pluginId}/latest.xpi";
+ installation_mode = "force_installed";
+ });
+ in {
+ DisableAppUpdate = true;
+ DisableTelemetry = true;
+ DisablePocket = true;
+
+ ExtensionSettings = mkExtensionSettings {
+ "uBlock0@raymondhill.net" = "ublock-origin";
+ };
+
+ Preferences = {
+ "toolkit.legacyUserProfileCustomizations.stylesheets".Value = true;
+ };
+ };
+
+ profiles.default = {
+ search = {
+ force = true;
+ default = "ddg";
+ };
+
+ spacesForce = true;
+ spaces = {
+ "Main" = {
+ id = "5a9831d4-54f2-42c9-aed5-fb511fa7b3f0";
+ position = 1000;
+ icon = "◯";
+ };
+ };
+ };
+ };
+ };
+}
diff --git a/modules/home/comms/vesktop.nix b/modules/home/comms/vesktop.nix
new file mode 100644
index 0000000..ca08ad8
--- /dev/null
+++ b/modules/home/comms/vesktop.nix
@@ -0,0 +1,8 @@
+{ self, inputs, ... }: {
+
+ flake.homeModules.vesktop = { pkgs, lib, ... }: {
+ programs.vesktop.enable = true;
+ programs.vesktop.vencord.settings.enabledThemes = [ "noctalia.theme.css" ];
+ };
+
+} \ No newline at end of file
diff --git a/modules/hosts/luna/configuration.nix b/modules/hosts/luna/configuration.nix
new file mode 100644
index 0000000..90df410
--- /dev/null
+++ b/modules/hosts/luna/configuration.nix
@@ -0,0 +1,62 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.lunaConfiguration = { config, lib, pkgs, ... }:
+
+ {
+ nix.settings.experimental-features = [ "nix-command" "flakes" ];
+ nixpkgs.config.allowUnfree = true;
+
+ imports = with self.nixosModules; [
+ lunaHardware
+ powerManagement
+ bluetooth
+ niri
+ audio
+ audioProduction
+ ];
+
+ boot.loader.systemd-boot.enable = true;
+ boot.loader.efi.canTouchEfiVariables = true;
+ boot.kernelPackages = pkgs.linuxPackages_latest;
+
+ networking.hostName = "luna";
+ networking.networkmanager.enable = true;
+
+ time.timeZone = "Europe/Berlin";
+
+ i18n.defaultLocale = "en_IE.UTF-8";
+ console = {
+ font = "Lat2-Terminus16";
+ keyMap = "de";
+ };
+
+ services.displayManager.ly.enable = true;
+ services.emacs.enable = true;
+
+ programs.steam.enable = true;
+
+ programs.direnv.enable = true;
+ programs.direnv.nix-direnv.enable = true;
+
+ services.printing.enable = true;
+
+ # Enable touchpad support (enabled default in most desktopManager).
+ services.libinput.enable = true;
+
+ users.users.dk = {
+ isNormalUser = true;
+ extraGroups = [ "wheel" ];
+ hashedPasswordFile = "/persistent/passwd";
+ };
+ home-manager.users.dk = self.homeModules.lunaHome;
+
+ environment.systemPackages = [
+ pkgs.devenv
+ pkgs.wget
+ pkgs.git
+ inputs.home-manager.packages.${pkgs.system}.default
+ ];
+
+ system.stateVersion = "26.05";
+ };
+}
diff --git a/modules/hosts/luna/default.nix b/modules/hosts/luna/default.nix
new file mode 100644
index 0000000..58f756f
--- /dev/null
+++ b/modules/hosts/luna/default.nix
@@ -0,0 +1,25 @@
+{ self, inputs, pkgs, ... } : {
+
+ flake.nixosConfigurations.luna = inputs.nixpkgs.lib.nixosSystem {
+ modules = [
+ inputs.disko.nixosModules.disko
+ inputs.preservation.nixosModules.default
+ inputs.musnix.nixosModules.musnix
+ self.nixosModules.lunaConfiguration
+ self.nixosModules.lunaPreservation
+ self.nixosModules.lunaDisko
+ self.nixosModules.myHomeManager
+ ];
+ };
+
+ flake.homeConfigurations.luna = inputs.home-manager.lib.homeManagerConfiguration {
+ pkgs = import inputs.nixpkgs { system = "x86_64-linux"; };
+ modules = [
+ self.homeModules.lunaHome
+ {
+ home.username = "dk";
+ home.homeDirectory = "/home/dk";
+ }
+ ];
+ };
+}
diff --git a/modules/hosts/luna/disko.nix b/modules/hosts/luna/disko.nix
new file mode 100644
index 0000000..f0fcc13
--- /dev/null
+++ b/modules/hosts/luna/disko.nix
@@ -0,0 +1,73 @@
+{ self, inputs, ...}: {
+
+flake.nixosModules.lunaDisko = { pkgs, lib, ... }: {
+ fileSystems."/nix".neededForBoot = true;
+ fileSystems."/persistent".neededForBoot = true;
+ disko.devices.nodev = {
+ "/" = {
+ fsType = "tmpfs";
+ mountOptions = [
+ "size=50%"
+ "mode=755"
+ ];
+ };
+ };
+
+ disko.devices.disk.main = {
+ device = "/dev/nvme0n1";
+ type = "disk";
+
+ content.type = "gpt";
+
+ content.partitions.boot = {
+ name = "boot";
+ size = "1M";
+ type = "EF02";
+ };
+
+ content.partitions.esp = {
+ name = "ESP";
+ size = "1G";
+ type = "EF00";
+
+ content = {
+ type = "filesystem";
+ format = "vfat";
+ mountpoint = "/boot";
+ };
+ };
+
+ content.partitions.swap = {
+ size = "8G";
+
+ content = {
+ type = "swap";
+ resumeDevice = true;
+ };
+ };
+
+ content.partitions.root = {
+ name = "root";
+ size = "100%";
+
+ content = {
+ type = "btrfs";
+ extraArgs = ["-f"];
+
+ subvolumes = {
+ "/persistent" = {
+ mountOptions = ["subvol=persistent" "noatime"];
+ mountpoint = "/persistent";
+ };
+
+ "/nix" = {
+ mountOptions = ["subvol=nix" "noatime"];
+ mountpoint = "/nix";
+ };
+ };
+ };
+ };
+ };
+};
+
+}
diff --git a/modules/hosts/luna/hardware.nix b/modules/hosts/luna/hardware.nix
new file mode 100644
index 0000000..8c00011
--- /dev/null
+++ b/modules/hosts/luna/hardware.nix
@@ -0,0 +1,20 @@
+{ self, inputs, ... }: {
+
+ flake.nixosModules.lunaHardware = { config, lib, pkgs, modulesPath, ... }:
+
+{
+ imports =
+ [ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ ];
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}
+;
+
+}
diff --git a/modules/hosts/luna/home.nix b/modules/hosts/luna/home.nix
new file mode 100644
index 0000000..3334060
--- /dev/null
+++ b/modules/hosts/luna/home.nix
@@ -0,0 +1,14 @@
+{ self, inputs, ... }: {
+
+ flake.homeModules.lunaHome = { pkgs, ... }: {
+ imports = [
+ self.homeModules.zen-browser
+ self.homeModules.vesktop
+ ];
+
+ programs.bash.enable = true;
+
+ home.stateVersion = "26.05";
+ };
+
+}
diff --git a/modules/hosts/luna/preservation.nix b/modules/hosts/luna/preservation.nix
new file mode 100644
index 0000000..fda7a47
--- /dev/null
+++ b/modules/hosts/luna/preservation.nix
@@ -0,0 +1,54 @@
+{ self, inputs, ... }: {
+
+flake.nixosModules.lunaPreservation = { pkgs, lib, ... }: {
+ boot.tmp.cleanOnBoot = true;
+
+ preservation = {
+ enable = true;
+
+ preserveAt."/persistent" = {
+ directories = [
+ "/etc/nixos"
+ {
+ directory = "/var/lib/nixos";
+ inInitrd = true;
+ }
+ "/var/lib/systemd/timers"
+ "/var/lib/bluetooth"
+ "/etc/NetworkManager/system-connections"
+ {
+ directory = "/tmp";
+ mode = "1777";
+ }
+ ];
+ files = [
+ {
+ file = "/etc/machine-id";
+ inInitrd = true;
+ }
+ ];
+
+ users.dk = {
+ directories = [
+ "Pictures"
+ "Projects"
+ "Music"
+ ".config/emacs"
+ "org"
+ ".ssh"
+ ".config/zen"
+ ".cache"
+ ".config/nixos"
+ ".steam"
+ ".local/share/Steam"
+ ".config/vesktop"
+ ".config/ardour9"
+ ".config/guitarix"
+ ];
+ files = [];
+ };
+ };
+ };
+};
+
+}
diff --git a/modules/parts.nix b/modules/parts.nix
new file mode 100644
index 0000000..bbfcab4
--- /dev/null
+++ b/modules/parts.nix
@@ -0,0 +1,13 @@
+{ inputs, ...}: {
+
+ imports = [ inputs.home-manager.flakeModules.home-manager ];
+
+ config = {
+ systems = [
+ "x86_64-linux"
+ "x86_64-darwin"
+ "aarch64-linux"
+ "aarch64-darwin"
+ ];
+ };
+}