aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hosts/underworld/home.nix7
-rw-r--r--share/cfg/default.nix2
-rw-r--r--share/hm-modules/default.nix6
-rw-r--r--share/hm-modules/hyprdesktop.nix112
-rw-r--r--share/home/dev-stuff.nix3
-rw-r--r--share/home/gui-tools.nix26
-rw-r--r--share/home/hyprland.nix8
-rw-r--r--share/home/wayland-common.nix13
-rw-r--r--share/home/xdg-portals.nix17
-rw-r--r--share/system/client-common.nix2
10 files changed, 68 insertions, 128 deletions
diff --git a/hosts/underworld/home.nix b/hosts/underworld/home.nix
index b288272..3bc0f3d 100644
--- a/hosts/underworld/home.nix
+++ b/hosts/underworld/home.nix
@@ -18,17 +18,12 @@
home-manager.users.osiris = {
imports = [
(flakeRoot + /share/cfg)
+ (flakeRoot + /share/home/minimal.nix)
(flakeRoot + /share/home/dev-stuff.nix)
(flakeRoot + /share/home/shell.nix)
(flakeRoot + /share/home/gui-tools.nix)
(flakeRoot + /share/home/gaming.nix)
];
- custom.hyprdesktop = {
- enable = true;
- enableGaming = true;
- enableWindowsCompat = true;
- enableGitAnnex = true;
- };
xdg = {
systemDirs.data =
diff --git a/share/cfg/default.nix b/share/cfg/default.nix
index 3cecaec..6ba605f 100644
--- a/share/cfg/default.nix
+++ b/share/cfg/default.nix
@@ -1,8 +1,6 @@
{ ... }:
{
imports = [
- ../hm-modules
-
./wpaperd.nix
./tofi.nix
./waybar.nix
diff --git a/share/hm-modules/default.nix b/share/hm-modules/default.nix
deleted file mode 100644
index cc04898..0000000
--- a/share/hm-modules/default.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{ ... }:
-{
- imports = [
- ./hyprdesktop.nix
- ];
-}
diff --git a/share/hm-modules/hyprdesktop.nix b/share/hm-modules/hyprdesktop.nix
deleted file mode 100644
index 94620a4..0000000
--- a/share/hm-modules/hyprdesktop.nix
+++ /dev/null
@@ -1,112 +0,0 @@
-{
- config,
- pkgs,
- lib,
- ...
-}:
-let
- inherit (lib)
- mkIf
- mkOption
- mkEnableOption
- types
- mdDoc
- lists
- ;
- cfg = config.custom.hyprdesktop;
-in
-{
- imports = [ ../home/minimal.nix ];
-
- options.custom.hyprdesktop = {
- enable = mkEnableOption "Enable hyprdesktop";
-
- mainUser = mkOption {
- type = types.str;
- example = "alice";
- description = mdDoc "Main superuser's username.";
- };
-
- hasBluetooth = mkOption {
- type = types.bool;
- default = false;
- example = "true";
- };
- hasBrightnessCtl = mkOption {
- type = types.bool;
- default = false;
- example = "true";
- };
- hasBattery = mkOption {
- type = types.bool;
- default = false;
- example = "true";
- };
-
- enableGitAnnex = mkOption {
- type = types.bool;
- default = true;
- example = "false";
- };
- };
-
- config = mkIf cfg.enable {
- wayland.windowManager.hyprland.enable = true;
- home.packages =
- with pkgs;
- [
- wireplumber # session & policy manager for pipewire
- grim # screenshot utility for wayland
- slurp # region selection UI for wayland
- wl-clipboard # clipboard utility
- xdg-utils
- ]
- ++ lists.optionals cfg.hasBluetooth [ overskride ]
- ++ lists.optionals cfg.hasBrightnessCtl [ brightnessctl ]
- ++ lists.optionals cfg.enableGitAnnex [
- git-annex
- git-remote-gcrypt
- ];
-
- home.pointerCursor = {
- gtk.enable = true;
- package = pkgs.vanilla-dmz;
- name = "Vanilla-DMZ";
- size = 20;
- };
-
- services.dunst.enable = true;
- services.wpaperd.enable = true;
- services.poweralertd.enable = cfg.hasBattery;
- programs.jujutsu.enable = true;
- programs.foot.enable = true;
- programs.waybar.enable = true;
- programs.tofi.enable = true;
-
- xdg.portal = {
- enable = true;
- extraPortals = [ pkgs.kdePackages.xdg-desktop-portal-kde ];
- xdgOpenUsePortal = true;
- config = {
- kde = {
- default = [ "kde" ];
- "org.freedesktop.impl.portal.Secret" = [
- "kwallet"
- ];
- };
- hyprland.default = [ "hyprland" ];
- };
- };
-
- gtk = {
- theme = {
- package = pkgs.flat-remix-gtk;
- name = "Flat-Remix-GTK-Blue-Darkest";
- };
- iconTheme = {
- package = pkgs.flat-remix-icon-theme;
- name = "Flat-Remix-Blue-Dark";
- };
- };
- };
-}
diff --git a/share/home/dev-stuff.nix b/share/home/dev-stuff.nix
index 6fa3ec7..4dbbe7f 100644
--- a/share/home/dev-stuff.nix
+++ b/share/home/dev-stuff.nix
@@ -39,6 +39,8 @@ in
postgresql_17 # for the CLI tools
pgcli
podman-compose
+ git-annex
+ git-remote-gcrypt
# TUI/GUI
zed-editor
@@ -55,6 +57,7 @@ in
};
programs.git.enable = true;
+ programs.jujutsu.enable = true;
services.emacs.enable = true;
programs.helix = {
enable = true;
diff --git a/share/home/gui-tools.nix b/share/home/gui-tools.nix
index 6c29905..1b1eef1 100644
--- a/share/home/gui-tools.nix
+++ b/share/home/gui-tools.nix
@@ -1,7 +1,12 @@
{ pkgs, ... }:
{
+ imports = [
+ ./xdg-portals.nix
+ ./wayland-common.nix
+ ];
+
home.packages =
- [ pkgs.kdePackaegs.kdenlive ]
+ [ pkgs.kdePackages.kdenlive ]
++ builtins.attrValues {
inherit (pkgs)
thunderbird # email client
@@ -29,4 +34,23 @@
};
programs.librewolf.enable = true;
+ programs.foot.enable = true;
+
+ home.pointerCursor = {
+ gtk.enable = true;
+ package = pkgs.vanilla-dmz;
+ name = "Vanilla-DMZ";
+ size = 20;
+ };
+
+ gtk = {
+ theme = {
+ package = pkgs.flat-remix-gtk;
+ name = "Flat-Remix-GTK-Blue-Darkest";
+ };
+ iconTheme = {
+ package = pkgs.flat-remix-icon-theme;
+ name = "Flat-Remix-Blue-Dark";
+ };
+ };
}
diff --git a/share/home/hyprland.nix b/share/home/hyprland.nix
new file mode 100644
index 0000000..39fe9c0
--- /dev/null
+++ b/share/home/hyprland.nix
@@ -0,0 +1,8 @@
+{ ... }:
+{
+ wayland.windowManager.hyprland.enable = true;
+ services.dunst.enable = true;
+ services.wpaperd.enable = true;
+ programs.waybar.enable = true;
+ programs.tofi.enable = true;
+}
diff --git a/share/home/wayland-common.nix b/share/home/wayland-common.nix
new file mode 100644
index 0000000..370c549
--- /dev/null
+++ b/share/home/wayland-common.nix
@@ -0,0 +1,13 @@
+{ pkgs, ... }:
+{
+ home.packages = builtins.attrValues {
+ inherit (pkgs)
+ wireplumber # session & policy manager for pipewire
+ grim # screenshot utility for wayland
+ slurp # region selection UI for wayland
+ wl-clipboard # clipboard utility
+ xdg-utils
+ brightnessctl
+ ;
+ };
+}
diff --git a/share/home/xdg-portals.nix b/share/home/xdg-portals.nix
new file mode 100644
index 0000000..30aa82d
--- /dev/null
+++ b/share/home/xdg-portals.nix
@@ -0,0 +1,17 @@
+{ pkgs, ... }:
+{
+ xdg.portal = {
+ enable = true;
+ extraPortals = [ pkgs.kdePackages.xdg-desktop-portal-kde ];
+ xdgOpenUsePortal = true;
+ config = {
+ kde = {
+ default = [ "kde" ];
+ "org.freedesktop.impl.portal.Secret" = [
+ "kwallet"
+ ];
+ };
+ hyprland.default = [ "hyprland" ];
+ };
+ };
+}
diff --git a/share/system/client-common.nix b/share/system/client-common.nix
index 1be5cf2..20f61ae 100644
--- a/share/system/client-common.nix
+++ b/share/system/client-common.nix
@@ -36,7 +36,7 @@
# very annoying
documentation.man.generateCaches = lib.mkForce false;
- programs.hyprland.enable = true;
+ # programs.hyprland.enable = true;
services.gvfs.enable = true;
services.udisks2.enable = true;
boot.supportedFilesystems = [