Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
f3263fb
feat: cutecosmic + unstable pkgs + adw-gtk3
danxliu Apr 2, 2026
56460da
feat: xdg portal
danxliu Apr 2, 2026
6390361
feat: fix typo
danxliu Apr 2, 2026
87241da
fix: typo
danxliu Apr 2, 2026
6ab570d
feat: add icon theme + apply_theme_global
danxliu Apr 2, 2026
54d7b20
remove papirus theme
danxliu Apr 2, 2026
4c48e2c
feat: remove unstable & cutecosmic, add qt5ct & qt6ct
danxliu Apr 2, 2026
b04c5fd
fix: remove rest of unstable packages
danxliu Apr 2, 2026
8882fd4
fix: change qt5ct package name
danxliu Apr 2, 2026
6550f31
feat: integrate with light/dark theme
danxliu Apr 2, 2026
bd991c9
fix: put apply_theme_global in the right spot
danxliu Apr 2, 2026
fe514e5
fix: persist light/dark theme on new login
danxliu Apr 2, 2026
3ceb26e
67 (#228)
danxliu Apr 2, 2026
1b59741
fix: krb5 ticket forwarding (#227)
jaysa68 Apr 2, 2026
8f01b15
Revert "set sddm wallpaper to login-afool.png (#225)" (#231)
24apricots Apr 2, 2026
4c8329d
gh actions: make build workflow actually build (#229)
24apricots Apr 2, 2026
5980520
Revert "67 (#228)" (#230)
24apricots Apr 2, 2026
15d9db9
feat: cutecosmic + unstable pkgs + adw-gtk3
danxliu Apr 2, 2026
908a2e7
fix: remove rest of unstable packages
danxliu Apr 2, 2026
4290474
Merge branch 'main' into icon-theme
danxliu Apr 2, 2026
e1eff8a
fix: remove unstable pkgs, change env and firefox settings
danxliu Apr 2, 2026
622b559
fix: remove firefox config
danxliu Apr 2, 2026
a6c100d
revert qt5ct env variable
danxliu Apr 2, 2026
c8c4c42
switch to kvantum from qt5ct
danxliu Apr 3, 2026
6148304
symlink rose pine kvantum themes
danxliu Apr 3, 2026
c8e7256
update kvantum with right theme names
danxliu Apr 3, 2026
c522f5e
feat: add back qt5ct and qt6ct with kvantum
danxliu Apr 3, 2026
c04a5d7
Merge branch 'main' into icon-theme
danxliu Apr 3, 2026
6abd8ae
fix: quote path variables in sed/ln commands and guard kvantum config…
Copilot Apr 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 46 additions & 4 deletions modules/graphical/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,13 @@ in
# Conflict override since multiple DEs set this option
programs.ssh.askPassword = pkgs.lib.mkForce (lib.getExe pkgs.ksshaskpass.out);

xdg.portal = {
enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-gtk
];
};

environment.systemPackages = with pkgs; [
catppuccin-sddm

Expand All @@ -125,6 +132,13 @@ in

# OCF IRC
halloy

# Themes
adw-gtk3
libsForQt5.qt5ct
kdePackages.qt6ct
kdePackages.qtstyleplugin-kvantum
rose-pine-kvantum
];

fonts.packages = with pkgs; [
Expand All @@ -133,6 +147,12 @@ in
noto-fonts-cjk-sans
];

environment.sessionVariables = {
QT_QPA_PLATFORMTHEME = "qt5ct";
};

programs.dconf.enable = true;

services = {
desktopManager.cosmic = {
enable = true;
Expand Down Expand Up @@ -224,21 +244,43 @@ in
COSMIC_THEME_FILE="$HOME/.config/cosmic/com.system76.CosmicTheme.Mode/v1/is_dark"
COSMIC_BG_FILE="$HOME/.config/cosmic/com.system76.CosmicBackground/v1/all"
OCF_THEME_FILE="$HOME/remote/.config/ocf/theme"
KVANTUM_THEME_FILE="$HOME/.config/Kvantum/kvantum.kvconfig"
mkdir -p "$(dirname "$KVANTUM_THEME_FILE")"

# Ensure kvantum knows where to find the rose pine themes
ln -sfT ${pkgs.rose-pine-kvantum}/share/Kvantum/themes/rose-pine-moon-iris "$HOME/.config/Kvantum/rose-pine-moon-iris" || true
ln -sfT ${pkgs.rose-pine-kvantum}/share/Kvantum/themes/rose-pine-dawn-iris "$HOME/.config/Kvantum/rose-pine-dawn-iris" || true

# Initialize kvantum.kvconfig if not present (skel only covers new users)
if [ ! -f "$KVANTUM_THEME_FILE" ]; then
kvantum_default_theme="rose-pine-moon-iris"
if [ -f "$OCF_THEME_FILE" ] && [ "$(cat "$OCF_THEME_FILE")" = "light" ]; then
kvantum_default_theme="rose-pine-dawn-iris"
fi
printf '[General]\ntheme=%s\n' "$kvantum_default_theme" > "$KVANTUM_THEME_FILE"
fi

sync_theme() {
if [ -f "$COSMIC_THEME_FILE" ]; then
content=$(cat "$COSMIC_THEME_FILE")
mkdir -p "$(dirname "$OCF_THEME_FILE")"

if [ "$content" = "true" ]; then
echo "dark" > "$OCF_THEME_FILE"
sed -i -E 's/bg-(light|dark)/bg-dark/g' $COSMIC_BG_FILE
sed -i -E 's/bg-(light|dark)/bg-dark/g' "$COSMIC_BG_FILE"
gsettings set org.gnome.desktop.interface color-scheme prefer-dark
sed -i 's/theme = "rose-pine-dawn"/theme = "rose-pine"/' $HOME/.config/halloy/config.toml
sed -i 's/theme = "rose-pine-dawn"/theme = "rose-pine"/' "$HOME/.config/halloy/config.toml"
# QT Themes
sed -i 's/^theme=.*/theme=rose-pine-moon-iris/' "$KVANTUM_THEME_FILE"
kvantummanager --set "rose-pine-moon-iris" || true
else
echo "light" > "$OCF_THEME_FILE"
sed -i -E 's/bg-(light|dark)/bg-light/g' $COSMIC_BG_FILE
sed -i -E 's/bg-(light|dark)/bg-light/g' "$COSMIC_BG_FILE"
gsettings set org.gnome.desktop.interface color-scheme prefer-light
sed -i 's/theme = "rose-pine"/theme = "rose-pine-dawn"/' $HOME/.config/halloy/config.toml
sed -i 's/theme = "rose-pine"/theme = "rose-pine-dawn"/' "$HOME/.config/halloy/config.toml"
# QT Themes
sed -i 's/^theme=.*/theme=rose-pine-dawn-iris/' "$KVANTUM_THEME_FILE"
kvantummanager --set "rose-pine-dawn-iris" || true
fi
pkill -USR1 halloy || true
fi
Expand Down
2 changes: 2 additions & 0 deletions modules/graphical/skel/.config/Kvantum/kvantum.kvconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[General]
theme=rose-pine-moon-iris
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
true
2 changes: 2 additions & 0 deletions modules/graphical/skel/.config/qt5ct/qt5ct.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Appearance]
style=kvantum
2 changes: 2 additions & 0 deletions modules/graphical/skel/.config/qt6ct/qt6ct.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Appearance]
style=kvantum
Loading