Compare commits
24
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dfc2a1ca3a
|
||
|
|
e41d02abcc
|
||
|
|
ec79afe982
|
||
|
|
536d4df5e4 | ||
|
|
3bd71bb5e1
|
||
|
|
d7ac5923ff | ||
|
|
dab8e42797
|
||
|
|
cd905df8b4
|
||
|
|
c20c9c0601
|
||
|
|
853a7cfb17
|
||
|
|
596b58fab4
|
||
|
|
a58319e08d
|
||
|
|
79b24d9439
|
||
|
|
b295a9a330
|
||
|
|
29db6af86b
|
||
|
|
9d7efb69ac
|
||
|
|
bf5de3872f | ||
|
|
7577e39c88
|
||
|
|
47fb9e7f97
|
||
|
|
098b92ae45
|
||
|
|
b987dcf0c6
|
||
|
|
0c6c2dd71b
|
||
|
|
a329e21711 | ||
|
|
91f3e0425b
|
Generated
+13
-74
@@ -28,11 +28,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1780593650,
|
||||
"narHash": "sha256-CHo7k65YTL3HY+WQVedDTupji+LMgNlKCdrtRHZFAK4=",
|
||||
"lastModified": 1782522538,
|
||||
"narHash": "sha256-CvOaUvJ+mXlxU3m2cPWKcOAhtKETsPUYhq+Xa5ewBp4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "447fd9ff62501dae7206dfe180ee89f8de27b7d5",
|
||||
"rev": "8d8a6cc50ddc60748791a14ee1163c865ec57635",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -43,11 +43,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1780243769,
|
||||
"narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=",
|
||||
"lastModified": 1782467914,
|
||||
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "331800de5053fcebacf6813adb5db9c9dca22a0c",
|
||||
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -66,11 +66,11 @@
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1780421606,
|
||||
"narHash": "sha256-ZRAMRXQE1UKBtpnPwwOqV8teaPDD/fdABvUXMjcyhow=",
|
||||
"lastModified": 1782254890,
|
||||
"narHash": "sha256-kjsEECqhpPnJWqhooXp6tWh2qGQftCPAo2G1GvZtKdw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "b7521616f15ad73c6bec458d64ed7f06f4095edb",
|
||||
"rev": "dbf9550dba8448b03e11d58e5695d6c44a464554",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -83,15 +83,14 @@
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"noctalia-qs": "noctalia-qs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1780371321,
|
||||
"narHash": "sha256-WCaU6npdMdjZSZHe3XATNDFijmzRnsV8V+iR80e5deg=",
|
||||
"lastModified": 1782573487,
|
||||
"narHash": "sha256-7rbPIkOUkfieh00irAjub3j5eEOrPqygl4CF8Fd5YpY=",
|
||||
"owner": "noctalia-dev",
|
||||
"repo": "noctalia-shell",
|
||||
"rev": "3aab45a2f34fd47666b05892b95054952e788de1",
|
||||
"rev": "3b93fcff890da32b485e82ad72244b56d31cb326",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -100,29 +99,6 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"noctalia-qs": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"noctalia",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems_2",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1780194487,
|
||||
"narHash": "sha256-M+YtjKCTkHrkplNaKVyaxfa8hAWjRF6wFOUBAZvxQ4U=",
|
||||
"owner": "noctalia-dev",
|
||||
"repo": "noctalia-qs",
|
||||
"rev": "07398e12b54f194e3a2d47c87e3fd10b8eeaa27d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "noctalia-dev",
|
||||
"repo": "noctalia-qs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"home-manager": "home-manager",
|
||||
@@ -146,43 +122,6 @@
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"noctalia",
|
||||
"noctalia-qs",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775636079,
|
||||
"narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
@@ -2,11 +2,12 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../modules/nixos/astro.nix
|
||||
../../modules/nixos/audio.nix
|
||||
../../modules/nixos/bootloader.nix
|
||||
../../modules/nixos/calibre.nix
|
||||
../../modules/nixos/claudecode.nix
|
||||
../../modules/nixos/certificates.nix
|
||||
../../modules/nixos/claudecode.nix
|
||||
../../modules/nixos/drives.nix
|
||||
../../modules/nixos/gnupg.nix
|
||||
../../modules/nixos/gnuradio.nix
|
||||
@@ -21,9 +22,8 @@
|
||||
../../modules/nixos/protonvpn.nix
|
||||
../../modules/nixos/services.nix
|
||||
../../modules/nixos/settings.nix
|
||||
../../modules/nixos/stellarium.nix
|
||||
../../modules/nixos/thunar.nix
|
||||
../../modules/nixos/steam.nix
|
||||
../../modules/nixos/thunar.nix
|
||||
../../modules/nixos/users.nix
|
||||
];
|
||||
|
||||
|
||||
@@ -2,9 +2,11 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../modules/nixos/astro.nix
|
||||
../../modules/nixos/audio.nix
|
||||
../../modules/nixos/bootloader.nix
|
||||
../../modules/nixos/certificates.nix
|
||||
../../modules/nixos/claudecode.nix
|
||||
../../modules/nixos/docker.nix
|
||||
../../modules/nixos/gnupg.nix
|
||||
../../modules/nixos/locales.nix
|
||||
@@ -17,7 +19,6 @@
|
||||
../../modules/nixos/sddm.nix
|
||||
../../modules/nixos/services.nix
|
||||
../../modules/nixos/settings.nix
|
||||
../../modules/nixos/stellarium.nix
|
||||
../../modules/nixos/steam.nix
|
||||
../../modules/nixos/users.nix
|
||||
];
|
||||
|
||||
@@ -4,6 +4,12 @@
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
|
||||
# We keep `inputs.nixvim.inputs.nixpkgs.follows = "nixpkgs"` in flake.nix so
|
||||
# the whole config shares a single nixpkgs. Setting `source` explicitly to
|
||||
# that same nixpkgs acknowledges the override and silences nixvim's warning
|
||||
# about its pinned nixpkgs being bypassed.
|
||||
nixpkgs.source = inputs.nixpkgs;
|
||||
|
||||
# set aliases
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
|
||||
@@ -0,0 +1,123 @@
|
||||
{ config, pkgs, inputs, ... }:
|
||||
|
||||
{
|
||||
# Noctalia v5 shell, managed via its upstream home-manager module.
|
||||
# See https://docs.noctalia.dev/v5/getting-started/nixos/
|
||||
imports = [ inputs.noctalia.homeModules.default ];
|
||||
|
||||
programs.noctalia = {
|
||||
enable = true;
|
||||
|
||||
# The module's `package` option has no default, so it must be set explicitly.
|
||||
package = inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||
|
||||
# settings is rendered to ~/.config/noctalia/config.toml
|
||||
settings = {
|
||||
# theme / colors
|
||||
theme = {
|
||||
source = "builtin";
|
||||
builtin = "Nord";
|
||||
mode = "dark";
|
||||
templates.builtin_ids = [ "ghostty" ];
|
||||
};
|
||||
|
||||
# general
|
||||
shell = {
|
||||
font_family = "0xProto Nerd Font Mono";
|
||||
ui_scale = 1.2;
|
||||
avatar_path = "/home/aaron/syncthing/pictures/Logo-Aaron-Totenkopf-rund-schwarz.png";
|
||||
telemetry_enabled = false;
|
||||
clipboard_enabled = true;
|
||||
password_style = "random";
|
||||
|
||||
panel = {
|
||||
launcher_compact = true;
|
||||
open_near_click_control_center = true;
|
||||
open_near_click_session = true;
|
||||
open_near_click_wallpaper = true;
|
||||
transparency_mode = "glass";
|
||||
};
|
||||
|
||||
screen_corners = {
|
||||
enabled = true;
|
||||
size = 10;
|
||||
};
|
||||
};
|
||||
|
||||
# location / weather
|
||||
location.address = "Bern";
|
||||
|
||||
weather = {
|
||||
enabled = true;
|
||||
unit = "metric";
|
||||
};
|
||||
|
||||
# wallpaper
|
||||
wallpaper = {
|
||||
enabled = true;
|
||||
directory = "/home/aaron/Pictures/Wallpapers";
|
||||
fill_mode = "crop";
|
||||
default.path = "/home/aaron/Pictures/Wallpapers/nord-theme-tower.png";
|
||||
};
|
||||
|
||||
# bar layout
|
||||
bar = {
|
||||
order = [ "default" ];
|
||||
default = {
|
||||
position = "top";
|
||||
background_opacity = 0.93;
|
||||
font_weight = 400;
|
||||
margin_edge = 0;
|
||||
margin_ends = 0;
|
||||
radius = 0;
|
||||
scale = 1.2;
|
||||
widget_spacing = 20;
|
||||
start = [ "control-center" "cpu" "ram" "temp" "active_window" ];
|
||||
center = [ "workspaces" ];
|
||||
end = [ "tray" "bluetooth" "notifications" "volume" "network" "clock" ];
|
||||
};
|
||||
};
|
||||
|
||||
# per-widget styling
|
||||
widget = {
|
||||
bluetooth.capsule = true;
|
||||
control-center = {
|
||||
capsule_radius = 8;
|
||||
custom_image = "/home/aaron/Pictures/nix_flake_logo.png";
|
||||
scale = 1.4;
|
||||
};
|
||||
cpu.capsule = true;
|
||||
network = {
|
||||
capsule = true;
|
||||
show_label = false;
|
||||
};
|
||||
notifications.capsule = true;
|
||||
ram.capsule = true;
|
||||
temp.capsule = true;
|
||||
volume = {
|
||||
capsule = true;
|
||||
show_label = false;
|
||||
};
|
||||
};
|
||||
|
||||
# idle behavior
|
||||
idle = {
|
||||
behavior_order = [ "screen-off" "lock" "lock-and-suspend" ];
|
||||
behavior = {
|
||||
"screen-off" = {
|
||||
enabled = true;
|
||||
timeout = 600;
|
||||
};
|
||||
"lock" = {
|
||||
enabled = true;
|
||||
timeout = 660;
|
||||
};
|
||||
"lock-and-suspend" = {
|
||||
enabled = true;
|
||||
timeout = 1800;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
# Siril's Python plugins (sirilpy) run in a venv that pip-installs foreign
|
||||
# manylinux wheels (numpy, GraXpert deps, ...). Those .so files need
|
||||
# libstdc++ at runtime. nix-ld does NOT cover this: it only handles the
|
||||
# initial exec of a foreign binary, but here a *native* nixpkgs python
|
||||
# dlopen()s the foreign wheel. So we put the libs on LD_LIBRARY_PATH, which
|
||||
# the python subprocess inherits from the Siril process.
|
||||
sirilWithPlugins = pkgs.symlinkJoin {
|
||||
name = "siril-with-plugins";
|
||||
paths = [ pkgs.siril ];
|
||||
nativeBuildInputs = [ pkgs.makeWrapper ];
|
||||
# Siril bootstraps its sirilpy venv at first run by locating a `python3`
|
||||
# on PATH. nixpkgs only *propagates* python3 from the siril derivation (it
|
||||
# isn't on the runtime PATH), so without the --prefix PATH below the GUI
|
||||
# fails with "Python not found in system PATH" and never creates
|
||||
# ~/.local/share/siril/venv. We add the same interpreter siril references.
|
||||
#
|
||||
# The VeraLux PyQt6 wheel ships only the built-in Windows/Fusion styles, so
|
||||
# the global QT_STYLE_OVERRIDE=adwaita-dark (inherited from the session) is
|
||||
# rejected ("invalid style override") and windows fall back to a light
|
||||
# theme. We expose nixpkgs adwaita-qt6's style plugin on QT_PLUGIN_PATH so
|
||||
# the override resolves. This works because nixpkgs qt6 and the bundled Qt
|
||||
# share a major.minor (6.11); if they ever drift the plugin is simply
|
||||
# ignored again (harmless warning + Fusion fallback, no loss of function).
|
||||
postBuild = ''
|
||||
wrapProgram $out/bin/siril \
|
||||
--prefix PATH : ${lib.makeBinPath [ pkgs.python3 ]} \
|
||||
--prefix QT_PLUGIN_PATH : ${pkgs.adwaita-qt6}/lib/qt-6/plugins \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath (with pkgs; [
|
||||
stdenv.cc.cc.lib # libstdc++ / libgcc_s / libgomp (numpy etc.)
|
||||
zlib
|
||||
zstd # libzstd.so.1 (PyQt6)
|
||||
libGL # libGL.so.1 (PyQt6)
|
||||
# PyQt6 (VeraLux) — Qt bundles xcb support so it needs these even
|
||||
# on Wayland; libxkbcommon is the keymap lib used by Wayland too.
|
||||
glib
|
||||
fontconfig
|
||||
freetype
|
||||
dbus
|
||||
libxkbcommon
|
||||
# Qt platform plugins: the wayland plugin (libqwayland.so) needs the
|
||||
# wayland client libs; the xcb fallback needs libxcb-cursor.so.0.
|
||||
wayland # libwayland-client/cursor/egl (wayland plugin)
|
||||
libxcb-cursor # libxcb-cursor.so.0 (xcb plugin)
|
||||
libx11
|
||||
libxcb
|
||||
libxcb-util
|
||||
libxcb-wm
|
||||
libxcb-image
|
||||
libxcb-keysyms
|
||||
libxcb-render-util
|
||||
])}
|
||||
'';
|
||||
};
|
||||
in
|
||||
{
|
||||
# install stellarium for target finding and siril for stacking
|
||||
environment.systemPackages = with pkgs; [
|
||||
stellarium
|
||||
sirilWithPlugins
|
||||
];
|
||||
|
||||
# StarNet++ has no nixpkgs package. Download the StarNet v2 ORT CLI build
|
||||
# (starnet2_linux_*_ORT_x64_cli) from https://www.starnetastro.com/download/
|
||||
# and unzip it to ~/.local/share/siril/starnet/. Then in Siril set
|
||||
# Preferences -> Miscellaneous -> StarNet executable
|
||||
# to the extracted ./starnet2 binary.
|
||||
#
|
||||
# The binary is a generic dynamically-linked ELF, so NixOS needs nix-ld to
|
||||
# run it. Its own opencv/onnxruntime libs are found via the bundled ./lib.
|
||||
programs.nix-ld.enable = true;
|
||||
programs.nix-ld.libraries = with pkgs; [
|
||||
stdenv.cc.cc.lib # libstdc++ / libgcc_s
|
||||
zlib
|
||||
];
|
||||
}
|
||||
@@ -7,6 +7,7 @@
|
||||
adwaita-qt
|
||||
adwaita-qt6
|
||||
brightnessctl
|
||||
ddcutil
|
||||
playerctl
|
||||
];
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
# system packages
|
||||
environment.systemPackages = with pkgs; [
|
||||
btop
|
||||
cifs-utils
|
||||
cowsay
|
||||
dnsutils
|
||||
ethtool
|
||||
@@ -20,6 +21,7 @@
|
||||
ltrace
|
||||
mtr
|
||||
neovim
|
||||
nfs-utils
|
||||
nh
|
||||
nix-output-monitor
|
||||
nmap
|
||||
@@ -34,9 +36,9 @@
|
||||
unzip
|
||||
usbutils
|
||||
vim
|
||||
wl-clipboard
|
||||
wget
|
||||
which
|
||||
wl-clipboard
|
||||
xz
|
||||
zip
|
||||
zstd
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
# install stellarium for stargazing and sky simulation
|
||||
environment.systemPackages = with pkgs; [
|
||||
stellarium
|
||||
];
|
||||
}
|
||||
@@ -6,6 +6,7 @@
|
||||
../../modules/home-manager/git.nix
|
||||
../../modules/home-manager/ghostty.nix
|
||||
../../modules/home-manager/nixvim.nix
|
||||
../../modules/home-manager/noctalia.nix
|
||||
../../modules/home-manager/programs.nix
|
||||
../../modules/home-manager/shell.nix
|
||||
../../modules/home-manager/styling.nix
|
||||
|
||||
Reference in New Issue
Block a user