2023-07-28 09:09:39 +01:00
|
|
|
{ pkgs, lib, config, hyprland, wallpapers, ... }:
|
|
|
|
let
|
2023-07-11 09:11:48 +01:00
|
|
|
configure-gtk = pkgs.writeTextFile {
|
|
|
|
name = "configure-gtk";
|
|
|
|
destination = "/bin/configure-gtk";
|
|
|
|
executable = true;
|
|
|
|
text = let
|
|
|
|
schema = pkgs.gsettings-desktop-schemas;
|
|
|
|
datadir = "${schema}/share/gsettings-schemas/${schema.name}";
|
|
|
|
gtk-theme = config.gtk.theme.name;
|
|
|
|
icon-theme = config.gtk.iconTheme.name;
|
|
|
|
cursor-theme = config.gtk.cursorTheme.name;
|
|
|
|
in ''
|
|
|
|
export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS
|
|
|
|
gnome_schema=org.gnome.desktop.interface
|
|
|
|
gsettings set $gnome_schema gtk-theme '${gtk-theme}'
|
|
|
|
gsettings set $gnome_schema icon-theme '${icon-theme}'
|
|
|
|
gsettings set $gnome_schema cursor-theme '${cursor-theme}'
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
in {
|
|
|
|
imports = [
|
2023-07-24 13:27:05 +01:00
|
|
|
hyprland.homeManagerModules.default
|
2023-07-16 17:35:36 +01:00
|
|
|
./waybar
|
|
|
|
./rofi
|
2023-08-08 09:51:14 +01:00
|
|
|
./anyrun
|
2023-07-16 17:35:36 +01:00
|
|
|
./swaylock.nix
|
|
|
|
./gtk.nix
|
2023-08-02 15:10:24 +01:00
|
|
|
./mako.nix
|
2023-07-11 09:11:48 +01:00
|
|
|
];
|
2023-08-08 08:21:51 +01:00
|
|
|
home.packages = [ configure-gtk ];
|
2023-07-11 09:11:48 +01:00
|
|
|
programs = {
|
|
|
|
firefox.package = pkgs.firefox-wayland;
|
|
|
|
rofi.package = pkgs.rofi-wayland;
|
|
|
|
};
|
2023-08-08 08:21:51 +01:00
|
|
|
services.kanshi = {
|
|
|
|
enable = true;
|
|
|
|
systemdTarget = "hyprland-session.target";
|
2023-08-08 10:45:13 +01:00
|
|
|
profiles.default = {
|
2023-08-08 08:21:51 +01:00
|
|
|
outputs = [{ criteria = "*"; }];
|
|
|
|
exec = "${pkgs.swww}/bin/swww img ${wallpapers.outputs.default}";
|
|
|
|
};
|
|
|
|
};
|
2023-07-11 09:11:48 +01:00
|
|
|
wayland.windowManager.hyprland = {
|
|
|
|
enable = true;
|
|
|
|
package = null; # Use package from nixpkgs
|
|
|
|
xwayland = {
|
|
|
|
enable = true;
|
|
|
|
hidpi = true;
|
|
|
|
};
|
|
|
|
extraConfig = builtins.readFile ./hyprland.conf;
|
|
|
|
};
|
2023-07-17 06:58:10 +01:00
|
|
|
xdg.configFile = {
|
|
|
|
"hypr/macchiato.conf".source = ./macchiato.conf;
|
2023-07-28 09:09:39 +01:00
|
|
|
"hypr/display.conf".text = lib.mkDefault "";
|
|
|
|
"hypr/autostart.conf".text = lib.mkDefault "";
|
2023-07-17 06:58:10 +01:00
|
|
|
};
|
2023-07-11 09:11:48 +01:00
|
|
|
}
|