hyprland portal on allegro

This commit is contained in:
Antoine Vaure 2024-12-22 21:16:10 +01:00
parent d5e01122e3
commit 5add4bae94
3 changed files with 74 additions and 40 deletions

View file

@ -139,7 +139,10 @@
QT_AUTO_SCREEN_SCALE_FACTOR = "1"; QT_AUTO_SCREEN_SCALE_FACTOR = "1";
WLR_NO_HARDWARE_CURSORS = "0"; WLR_NO_HARDWARE_CURSORS = "0";
XCURSOR_SIZE = "24"; XCURSOR_SIZE = "24";
} // (if variant == "allegro" then { TMPDIR = "/home/${username}/tmp"; } else {}); } // (if variant == "allegro" then {
TMPDIR = "/home/${username}/tmp";
GSETTINGS_SCHEMA_DIR = "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/gsettings-desktop-schemas-47.1/glib-2.0/schemas";
} else {});
home.keyboard.options = [ home.keyboard.options = [
"caps:escape" "caps:escape"

View file

@ -1,22 +1,49 @@
{ config, lib, pkgs, pkgs-unstable, pkgs-24_05, variant, ... }: { { config, lib, pkgs, pkgs-unstable, pkgs-24_05, variant, ... }: {
home.packages = with pkgs; [ xdg = lib.attrsets.optionalAttrs (variant == "allegro") {
# xdg-desktop-portal configFile."systemd/user/dbus-broker.service".source =
# xdg-desktop-portal-gtk "${pkgs.dbus-broker}/share/systemd/user/dbus-broker.service";
xdg-desktop-portal-hyprland configFile."systemd/user/at-spi-dbus-bus.service".source =
# xwayland "${pkgs.at-spi2-core}/lib/systemd/user/at-spi-dbus-bus.service";
]; dataFile."dbus-1/services/org.a11y.Bus.service".source =
"${pkgs.at-spi2-core}/share/dbus-1/services/org.a11y.Bus.service";
dataFile."dbus-1/accessibility-services/org.a11y.atspi.Registry.service".source =
"${pkgs.at-spi2-core}/share/dbus-1/accessibility-services/org.a11y.atspi.Registry.service";
# xdg.portal = { configFile."systemd/user/xdg-desktop-portal.service".source =
# enable = true; "${pkgs.xdg-desktop-portal}/lib/systemd/user/xdg-desktop-portal.service";
# extraPortals = [ configFile."systemd/user/xdg-desktop-portal-gtk.service".source =
# pkgs.lxqt.xdg-desktop-portal-lxqt "${pkgs.xdg-desktop-portal-gtk}/lib/systemd/user/xdg-desktop-portal-gtk.service";
# pkgs.xdg-desktop-portal-kde configFile."systemd/user/xdg-desktop-portal-hyprland.service".source =
# ]; "${pkgs.xdg-desktop-portal-hyprland}/lib/systemd/user/xdg-desktop-portal-hyprland.service";
# config = { dataFile."share/dbus-1/services/org.freedesktop.impl.portal.desktop.hyprland.service".source =
# hyprland = { default = [ "lxqt,hyprland" ]; }; "${pkgs.xdg-desktop-portal-hyprland}share/dbus-1/services/org.freedesktop.impl.portal.desktop.hyprland.service";
# common = { default = [ "kde,gtk" ]; }; dataFile."systemd/user/pipewire.service".source =
# }; "${pkgs.pipewire}/share/systemd/user/pipewire.service";
# }; dataFile."systemd/user/pipewire-pulse.service".source =
"${pkgs.pipewire}/share/systemd/user/pipewire-pulse.service";
dataFile."systemd/user/filter-chain.service".source =
"${pkgs.pipewire}/share/systemd/user/filter-chain.service";
dataFile."systemd/user/pipewire.socket".source =
"${pkgs.pipewire}/share/systemd/user/pipewire.socket";
dataFile."systemd/user/pipewire-pulse.socket".source =
"${pkgs.pipewire}/share/systemd/user/pipewire-pulse.socket";
portal = {
enable = true;
# xdgOpenUsePortal = true;
extraPortals =
[ pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-hyprland ];
configPackages =
[ pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-hyprland ];
# config.common.default = "*";
config = {
hyprland = { default = [ "gtk,hyprland" ]; };
common = { default = [ "gtk,hyprland" ]; };
};
};
};
home.sessionVariables = { home.sessionVariables = {
NIXOS_OZONE_WL = "1"; NIXOS_OZONE_WL = "1";
@ -28,15 +55,15 @@
XDG_SESSION_DESKTOP = "Hyprland"; XDG_SESSION_DESKTOP = "Hyprland";
QT_AUTO_SCREEN_SCALE_FACTOR = "1"; QT_AUTO_SCREEN_SCALE_FACTOR = "1";
XCURSOR_SIZE = "24"; XCURSOR_SIZE = "24";
DXVK_FILTER_DEVICE_NAME="NVIDIA"; DXVK_FILTER_DEVICE_NAME = "NVIDIA";
SYSTEMD_PAGER = "";
}; };
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
package = if variant == "allegro" then pkgs.hyprland else pkgs.hyprland; systemd.enable = true;
xwayland.enable = true; xwayland.enable = true;
settings = { settings = {
debug = { debug = {
disable_logs = false; disable_logs = false;
@ -355,6 +382,9 @@
'' ''
} }
env = HYPRCURSOR_THEME,Hackneyed
env = HYPRCURSOR_SIZE,24
windowrule=tile,Nsxiv windowrule=tile,Nsxiv
exec = pkill swaybg; ${swaybgScript} exec = pkill swaybg; ${swaybgScript}

39
ui.nix
View file

@ -42,7 +42,6 @@ in
xsession.enable = true; xsession.enable = true;
fonts.fontconfig.enable = true; fonts.fontconfig.enable = true;
fonts.fontconfig.defaultFonts = { fonts.fontconfig.defaultFonts = {
serif = [ "Gentium Plus" ]; serif = [ "Gentium Plus" ];
@ -102,8 +101,6 @@ in
}; };
}; };
xdg = { xdg = {
mimeApps.defaultApplications."TerminalEmulator" = "Alacritty.desktop"; mimeApps.defaultApplications."TerminalEmulator" = "Alacritty.desktop";
}; };
@ -209,31 +206,35 @@ in
package = pkgs.inter; package = pkgs.inter;
name = "Inter"; name = "Inter";
}; };
theme = { # theme = {
name = "Catppuccin-Latte-Compact-Pink-Light"; # name = "Catppuccin-Latte-Compact-Pink-Light";
# name = "Catppuccin-Mocha-Compact-Pink-Dark"; # # name = "Catppuccin-Mocha-Compact-Pink-Dark";
package = pkgs.catppuccin-gtk.override { # package = pkgs.catppuccin-gtk.override {
accents = [ "pink" ]; # accents = [ "pink" ];
size = "compact"; # size = "compact";
tweaks = [ ]; # tweaks = [ ];
variant = "latte"; # variant = "latte";
}; # };
}; # };
iconTheme = { # iconTheme = {
name = "Adwaita"; # name = "Adwaita";
package = pkgs.adwaita-icon-theme; # package = pkgs.adwaita-icon-theme;
}; # };
cursorTheme = { cursorTheme = {
name = "Hackneyed"; name = "Hackneyed";
package = pkgs.hackneyed; package = pkgs.hackneyed;
}; };
}; };
services.darkman = { services.darkman = let
reload-hyprland = ''
hyprctl reload
'';
in {
lightModeScripts = { lightModeScripts = {
gtk-theme = '' gtk-theme = ''
${pkgs.dconf}/bin/dconf write /org/gnome/desktop/interface/color-scheme "'prefer-light'" ${pkgs.dconf}/bin/dconf write /org/gnome/desktop/interface/color-scheme "'prefer-light'"
''; '';
set-background = '' set-background = ''
rm -f ~/.local/share/bg/* rm -f ~/.local/share/bg/*
ln -rs ~/.local/share/bg-light.* ~/.local/share/bg/ ln -rs ~/.local/share/bg-light.* ~/.local/share/bg/