diff --git a/sdata/dist-nix/home-manager/flake.nix b/sdata/dist-nix/home-manager/flake.nix index d9b9a30b6..2c8ba6821 100644 --- a/sdata/dist-nix/home-manager/flake.nix +++ b/sdata/dist-nix/home-manager/flake.nix @@ -3,15 +3,14 @@ description = "illogical-impulse"; inputs = { - nixpkgs.url = "nixpkgs/nixos-25.05"; + #nixpkgs.url = "nixpkgs/nixos-25.05"; + nixpkgs.url = "nixpkgs/nixos-unstable"; home-manager = { - url = "github:nix-community/home-manager/release-25.05"; + #url = "github:nix-community/home-manager/release-25.05"; + url = "github:nix-community/home-manager/master"; inputs.nixpkgs.follows = "nixpkgs"; }; - #hyprland = { - # url = "github:hyprwm/Hyprland"; - #}; nixgl.url = "github:nix-community/nixGL"; quickshell = { url = "github:quickshell-mirror/quickshell/db1777c20b936a86528c1095cbcb1ebd92801402"; @@ -24,6 +23,7 @@ home_attrs = rec { username = import ./username.nix; homeDirectory = "/home/${username}"; + # Do not edit stateVersion value, see https://github.com/nix-community/home-manager/issues/5794 stateVersion = "25.05"; }; system = "x86_64-linux"; diff --git a/sdata/dist-nix/home-manager/home.nix b/sdata/dist-nix/home-manager/home.nix index 236b2f39f..e9646a4ab 100644 --- a/sdata/dist-nix/home-manager/home.nix +++ b/sdata/dist-nix/home-manager/home.nix @@ -4,8 +4,6 @@ nixGL.packages = nixgl.packages; nixGL.defaultWrapper = "mesa"; - # TODO: The home.nix generates ~/.config/fontconfig conflicts with the one under dots/ - # TODO: The home.nix generates ~/.config/xdg-desktop-portal conflicts with the one under dots/ xdg.portal = { enable = true; extraPortals = with pkgs; [ @@ -14,15 +12,14 @@ xdg-desktop-portal-wlr kdePackages.xdg-desktop-portal-kde ]; - config.hyprland = { - default = [ "hyprland" "gtk" ]; - "org.freedesktop.impl.portal.ScreenCast" = [ - "gnome" - ]; - }; + # The following seems to generate ~/.config/xdg-desktop-portal conflicting with the one under dots/ + #config.hyprland = { + # default = [ "hyprland" "gtk" ]; + # "org.freedesktop.impl.portal.ScreenCast" = [ "gnome" ]; + #}; }; - ## Allow fontconfig to discover fonts in home.packages - fonts.fontconfig.enable = true; + # The following seems to generate ~/.config/fontconfig conflicting with the one under dots/ + #fonts.fontconfig.enable = true; wayland.windowManager.hyprland = { ## Make sure home-manager not generate ~/.config/hypr/hyprland.conf @@ -32,8 +29,6 @@ package = config.lib.nixGL.wrap pkgs.hyprland; }; - - home = { packages = with pkgs; [ ##### Sure ##### @@ -155,10 +150,6 @@ gobject-introspection #gobject-introspection (Not explicitly used) - ### illogical-impulse-quickshell-git - #quickshell.packages.x86_64-linux.default (NixGL applicable, included elsewhere) - - ### illogical-impulse-screencapture hyprshot #hyprshot (Used in Hyprland keybinds.conf as fallback) slurp #slurp (Used in Hyprland and Quickshell config) @@ -169,24 +160,6 @@ ### illogical-impulse-toolkit - kdePackages.kdialog #kdialog (Used in Quickshell config) - # https://nixos.wiki/wiki/Qt - # https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/qt-6/srcs.nix - qt6.qt5compat #qt6-5compat - #qt6.qtimageformats (TODO: really?) #qt6-avif-image-plugin - qt6.qtbase #qt6-base - qt6.qtdeclarative #qt6-declarative - qt6.qtimageformats #qt6-imageformats - qt6.qtmultimedia #qt6-multimedia - qt6.qtpositioning #qt6-positioning - qt6.qtquicktimeline #qt6-quicktimeline - qt6.qtsensors #qt6-sensors - qt6.qtsvg #qt6-svg - qt6.qttools #qt6-tools - qt6.qttranslations #qt6-translations - qt6.qtvirtualkeyboard #qt6-virtualkeyboard - qt6.qtwayland #qt6-wayland - kdePackages.syntax-highlighting #syntax-highlighting (Used in Quickshell config) upower #upower (Used in Quickshell config) wtype #wtype (Used in Hyprland scripts/fuzzel-emoji.sh) ydotool #ydotool (Used in Quickshell config) @@ -207,6 +180,8 @@ ] ++ [ #(config.lib.nixGL.wrap pkgs.hyprland) + + ### illogical-impulse-quickshell-git #(config.lib.nixGL.wrap quickshell.packages.x86_64-linux.default) (import ./quickshell.nix { inherit pkgs quickshell; nixGLWrap = config.lib.nixGL.wrap; }) ]; diff --git a/sdata/dist-nix/home-manager/quickshell.nix b/sdata/dist-nix/home-manager/quickshell.nix index 7b4fbee20..83601718d 100644 --- a/sdata/dist-nix/home-manager/quickshell.nix +++ b/sdata/dist-nix/home-manager/quickshell.nix @@ -3,6 +3,11 @@ let qs = nixGLWrap quickshell.packages.x86_64-linux.default; in pkgs.stdenv.mkDerivation { name = "illogical-impulse-quickshell-wrapper"; + meta = with pkgs.lib; { + description = "Quickshell wrapped with NixGL + bundled Qt deps for home-manager usage"; + license = licenses.gpl3Only; + }; + dontUnpack = true; dontConfigure = true; dontBuild = true; @@ -14,15 +19,29 @@ in pkgs.stdenv.mkDerivation { buildInputs = with pkgs; [ qs - qt6.qtbase - kdePackages.qt5compat - kdePackages.qtdeclarative - kdePackages.kdialog kdePackages.qtwayland kdePackages.qtpositioning kdePackages.qtlocation kdePackages.syntax-highlighting gsettings-desktop-schemas + # https://nixos.wiki/wiki/Qt + # https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/qt-6/srcs.nix + qt6.qtbase #qt6-base + qt6.qtdeclarative #qt6-declarative + qt6.qt5compat #qt6-5compat + #qt6-avif-image-plugin (TODO: seems not available as nixpkg) + qt6.qtimageformats #qt6-imageformats + qt6.qtmultimedia #qt6-multimedia + qt6.qtpositioning #qt6-positioning + qt6.qtquicktimeline #qt6-quicktimeline + qt6.qtsensors #qt6-sensors + qt6.qtsvg #qt6-svg + qt6.qttools #qt6-tools + qt6.qttranslations #qt6-translations + qt6.qtvirtualkeyboard #qt6-virtualkeyboard + qt6.qtwayland #qt6-wayland + kdePackages.kdialog #kdialog (Used in Quickshell config) + kdePackages.syntax-highlighting #syntax-highlighting (Used in Quickshell config) ]; installPhase = '' @@ -32,9 +51,4 @@ in pkgs.stdenv.mkDerivation { --prefix XDG_DATA_DIRS : ${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name} chmod +x $out/bin/qs ''; - - meta = with pkgs.lib; { - description = "Quickshell wrapped with NixGL + bundled Qt deps for home-manager usage"; - license = licenses.mit; - }; }