diff options
| author | Mel <mel@rnrd.eu> | 2025-07-12 04:02:28 +0200 |
|---|---|---|
| committer | Mel <mel@rnrd.eu> | 2025-07-12 04:02:28 +0200 |
| commit | 1e8f1a29b02a4425169940df5d4bd7c764ecfdc8 (patch) | |
| tree | fc5826240aa1681c3bdc7954e9df6abec6ccad38 /modules | |
| parent | 4fd56f73360372665dd072adac2a78156d4caf2d (diff) | |
| download | minerals-1e8f1a29b02a4425169940df5d4bd7c764ecfdc8.tar.zst minerals-1e8f1a29b02a4425169940df5d4bd7c764ecfdc8.zip | |
Auto-filter and comment out currently non-compatible w/ ARM packages
Signed-off-by: Mel <mel@rnrd.eu>
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/common.nix | 38 | ||||
| -rw-r--r-- | modules/electronics.nix | 6 | ||||
| -rw-r--r-- | modules/user.nix | 9 |
3 files changed, 39 insertions, 14 deletions
diff --git a/modules/common.nix b/modules/common.nix index fcaf896..d72502d 100644 --- a/modules/common.nix +++ b/modules/common.nix @@ -1,5 +1,16 @@ -{ me, pkgs, auxiliaryPkgs, ... }: - +{ + me, + pkgs, + auxiliaryPkgs, + ... +}: + +let + inherit (builtins) filter elem; + + filterUnsupportedPackages = + packages: filter (p: elem me.system (p.meta.platforms or [ me.system ])) packages; +in { imports = [ ./nix.nix @@ -58,10 +69,12 @@ }; programs = { - steam = { - enable = true; - remotePlay.openFirewall = true; - }; + # steam requires the i386 package set, which obviously does not work on ARM. + # TODO: pull out gaming related configuration (like steam) into a seperate module. + # steam = { + # enable = true; + # remotePlay.openFirewall = true; + # }; virt-manager.enable = true; fish.enable = true; git.enable = true; @@ -81,7 +94,10 @@ }; }; - environment.systemPackages = (with pkgs; [ + # TODO: the filter already does some good work, but we need some way to + # pick out x86-only packages, so it is not as opaque as it currently is. + # (who knows if muse-sounds-manager is actually installed, for example?) + environment.systemPackages = (with pkgs; filterUnsupportedPackages [ file unzip jq dig htop wget screen gnupg pinentry-gnome3 age agenix minisign openssl cryptsetup pamtester bitwarden-desktop bitwarden-cli @@ -94,7 +110,9 @@ blender inkscape obs-studio darktable davinci-resolve orca-slicer renderdoc - audacity musescore muse-sounds-manager reaper bitwig-studio + audacity musescore muse-sounds-manager reaper + # bitwigs bubblewrap configuration requires some non-ARM package sets. + # bitwig-studio ungoogled-chromium librewolf lagrange senpai signal-desktop alpaca newsflash qemu_full virtiofsd @@ -129,7 +147,9 @@ ]) ++ (with auxiliaryPkgs; [ # TODO: need fixes for 25.05 # retroarch wine - ngfx + + # TODO: ngfx (obviously) does not work on ARM, put it somewhere else + # ngfx ]); environment.etc.openvpn.source = "${pkgs.update-resolv-conf}/libexec/openvpn"; diff --git a/modules/electronics.nix b/modules/electronics.nix index 9b154b1..08fef6a 100644 --- a/modules/electronics.nix +++ b/modules/electronics.nix @@ -30,6 +30,8 @@ in openocd ]; + # TODO: currently disabled packages are not available on ARM. + # filter them out automatically. environment.systemPackages = [ # hardware tool support hantek @@ -37,7 +39,7 @@ in # the spice of life! qucs-s ngspice - simulide + # simulide librepcb # mostly bearable non-commercial cad software @@ -51,7 +53,7 @@ in # platform development tools and frameworks arduino-cli - arduino-ide + # arduino-ide platformio esp-idf-full avrdude diff --git a/modules/user.nix b/modules/user.nix index e8f658e..55985b6 100644 --- a/modules/user.nix +++ b/modules/user.nix @@ -8,16 +8,19 @@ shell = pkgs.fish; extraGroups = [ "wheel" "dialout" "kvm" "networkmanager" "adbusers" ]; hashedPassword = "$y$j9T$4wGl.YJizIpcfFv0LyvLU0$7LLEkjIFWBOV.XXynReCOczBYNX0EZfMPIDB/bmmhhC"; - + + # TODO: commented out pacckages are currently not available on ARM, and thus not on the + # moissanite machine. filter them out in a better way. packages = (with pkgs; [ firefox thunderbird - tor-browser + # tor-browser jetbrains-toolbox ]) ++ (with unstablePkgs; [ godot_4 ]) ++ (with auxiliaryPkgs; [ - discord + # TODO: get discord (or maybe an alternative client?) to work! + # discord element-desktop obsidian ]); |
