summaryrefslogtreecommitdiffstats
path: root/home-configuration
diff options
context:
space:
mode:
Diffstat (limited to 'home-configuration')
-rw-r--r--home-configuration/config/niri/config.kdl1
-rw-r--r--home-configuration/default.nix62
-rw-r--r--home-configuration/managed/fetchit/default.nix19
-rw-r--r--home-configuration/managed/fetchit/init.lua70
4 files changed, 70 insertions, 82 deletions
diff --git a/home-configuration/config/niri/config.kdl b/home-configuration/config/niri/config.kdl
index 7864ed1..b5ad75d 100644
--- a/home-configuration/config/niri/config.kdl
+++ b/home-configuration/config/niri/config.kdl
@@ -3,6 +3,7 @@ spawn-at-startup "awww-daemon"
spawn-at-startup "awww" "img" "/home/coast/Wallpapers/nature2art.png"
spawn-sh-at-startup "XDG_DATA_DIRS=/etc/profiles/per-user/coast/share:/run/current-system/sw/share:$HOME/.nix-profile/share:$XDG_DATA_DIRS"
spawn-at-startup "qs"
+spawn-at-startup "dbus-update-activation-environment" "--systemd" "WAYLAND_DISPLAY" "XDG_CURRENT_DESKTOP"
input {
mod-key "Super"
diff --git a/home-configuration/default.nix b/home-configuration/default.nix
index bf496fe..dd4cb3f 100644
--- a/home-configuration/default.nix
+++ b/home-configuration/default.nix
@@ -4,7 +4,6 @@ let
niri = "niri";
alacritty = "alacritty";
rofi = "rofi";
- #waybar = "waybar";
nvim = "nvim";
zathura = "zathura";
quickshell = "quickshell";
@@ -20,19 +19,29 @@ in
./managed/xserver
./managed/fetchit
];
+
home.username = "coast";
home.homeDirectory = "/home/coast";
home.stateVersion = "26.05";
home.enableNixpkgsReleaseCheck = false;
+
+ # Forces libadwaita to read dconf directly and safely bypass broken portal lookups
+ home.sessionVariables = {
+ ADW_DEBUG_COLOR_SCHEME = "prefer-dark";
+ ADW_DISABLE_PORTAL = "1";
+ };
+
xdg.configFile = builtins.mapAttrs
(key: subpath: {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/Configuration/home-configuration/config/${subpath}";
})
configs;
+ # Broadcasts dark-mode schema state down to GTK3 & GTK4 applications
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
+ gtk-theme = "Adwaita-dark";
};
"org/virt-manager/virt-manager/connections" = {
autoconnect = [ "qemu:///system" ];
@@ -40,20 +49,49 @@ in
};
};
- gtk.theme = {
- name = "Adwaita-dark";
- package = pkgs.gnome-themes-extra;
+ gtk = {
+ enable = true;
+ theme = {
+ name = "Adwaita-dark";
+ package = pkgs.gnome-themes-extra;
+ };
+ gtk3.extraConfig = {
+ gtk-application-prefer-dark-theme = 1;
+ };
+ gtk4.extraConfig = {
+ gtk-application-prefer-dark-theme = 1;
+ };
};
- gtk.enable = true;
+
systemd.user.sessionVariables = config.home.sessionVariables;
- qt.enable = true;
- qt.kvantum.enable = true;
- qt.kvantum.themes = [
+
+ # Grants desktop portals capability to Niri session for fallback logic
+ xdg.portal = {
+ enable = true;
+ extraPortals = [ pkgs.xdg-desktop-portal-gnome pkgs.xdg-desktop-portal-gtk ];
+ config = {
+ common = {
+ default = [ "gnome" "gtk" ];
+ };
+ };
+ };
+
+ # Fixed syntax for Home Manager's Qt/Kvantum definitions
+ qt = {
+ enable = true;
+ platformTheme.name = "kvantum";
+ style.name = "kvantum";
+ };
+
+ home.packages = [
+ # Kvantum Themes added safely as packages
pkgs.gruvbox-kvantum
pkgs.catppuccin-kvantum
- ];
- home.packages = [
+ pkgs.xdg-desktop-portal-gnome
+ pkgs.xdg-desktop-portal-gtk
+ pkgs.glib
+
pkgs.python3
pkgs.starship
pkgs.libarchive
@@ -114,6 +152,9 @@ in
pkgs.zig
];
+ services.polkit-gnome.enable = true;
+ services.swayidle.enable = true;
+
systemd.user.services.polkit-gnome-authentication-agent-1 = {
Unit = {
Description = "polkit-gnome-authentication-agent-1";
@@ -133,3 +174,4 @@ in
};
};
}
+
diff --git a/home-configuration/managed/fetchit/default.nix b/home-configuration/managed/fetchit/default.nix
index 65d0592..2065c79 100644
--- a/home-configuration/managed/fetchit/default.nix
+++ b/home-configuration/managed/fetchit/default.nix
@@ -1,8 +1,23 @@
-{ ... }:
+{ inputs, ... }:
{
+ imports = [ inputs.fetchit.homeManagerModules.default ];
+
programs.fetchit = {
enable = true;
- config = builtins.readFile ./init.lua;
+ logoFileName = "nix.txt";
logo = builtins.readFile ./logos/nix.txt;
+
+ rows = [
+ { label = "os"; color = "cyan"; value = ''string.lower(os.name .. " @ " .. kernel.sysname .. " " .. kernel.release)''; }
+ { label = "wm"; color = "cyan"; value = ''"niri wm (v26.04)"''; }
+ { label = "res"; color = "cyan"; value = ''"(<)/1920x1080, (>)/1920x1080"''; }
+ { label = "cpu"; color = "red"; value = ''"ryzen 7 5700g"''; }
+ { label = "gpu"; color = "red"; value = ''"radeon rx 6800xt"''; }
+ { label = "ram"; color = "magenta"; value = ''string.format("%.1fgb/%.1fgb (%.1f%%)", memory.used_gb, memory.total_gb, memory.percent)''; }
+ { label = "disk"; color = "yellow"; value = ''string.format("%.1fgb/%.1fgb", disk.used_gb, disk.total_gb)''; }
+ { label = "shell"; color = "blue"; value = ''string.lower(shell.name)''; }
+ { label = "term"; color = "bright_cyan"; value = ''string.lower(terminal.name)''; }
+ { label = "ip"; color = "red"; value = ''string.lower(run([[ip -4 -o addr show scope global | grep -oE "([0-9]{1,3}.){3}[0-9]{1,3}" | head -1]]))''; }
+ ];
};
}
diff --git a/home-configuration/managed/fetchit/init.lua b/home-configuration/managed/fetchit/init.lua
deleted file mode 100644
index cb5c180..0000000
--- a/home-configuration/managed/fetchit/init.lua
+++ /dev/null
@@ -1,70 +0,0 @@
-local function run(cmd)
- local f = io.popen(cmd)
- local out = f:read("*a")
- f:close()
- return out:gsub("%s+$", "")
-end
-
-local use_color = true
-
-local function c(fn, text)
- if use_color then
- return fn(text)
- end
- return text
-end
-
-column_padding = 2
-
-local config_dir = os.getenv("HOME") .. "/.config/fetchit"
-
-local function load_logo(path)
- local lines = {}
- for line in io.lines(path) do
- table.insert(lines, line)
- end
- return lines
-end
-
-local function colored_logo(path)
- local lines = load_logo(path)
- local out = {}
- for i, line in ipairs(lines) do
- out[i] = c(color.blue, line)
- end
- return out
-end
-
-function fetch()
- local ip = run("ip -4 -o addr show scope global | awk '{print $4}' | cut -d/ -f1 | head -1")
- local title = user.name .. "@" .. host.name
- local sep = string.rep("-", #title)
-
- local title_out
- if use_color then
- title_out = color.green(user.name) .. color.bold(color.green("@")) .. color.green(host.name)
- else
- title_out = user.name .. color.bold(color.blue("@")) .. host.name
- end
-
- return {
- columns = {
- colored_logo(config_dir .. "/logos/nix.txt"),
- {
- title_out,
- sep,
- c(color.cyan, "os: ") .. string.lower(os.name .. " @ " .. kernel.sysname .. " " .. kernel.release),
- c(color.cyan, "wm: ") .. "niri wm (v26.04)",
- c(color.cyan, "res: ") .. "(<)/1920x1080, (>)/1920x1080",
- c(color.red, "cpu: ") .. "ryzen 7 5700g",
- c(color.red, "gpu: ") .. "radeon rx 6800xt",
- c(color.magenta, "ram: ") ..
- string.format("%.1fgb/%.1fgb (%.1f%%)", memory.used_gb, memory.total_gb, memory.percent),
- c(color.yellow, "disk: ") .. string.format("%.1fgb/%.1fgb", disk.used_gb, disk.total_gb),
- c(color.blue, "shell: ") .. string.lower(shell.name),
- c(color.bright_cyan, "term: ") .. string.lower(terminal.name),
- c(color.red, "ip: ") .. string.lower(ip),
- }
- }
- }
-end