refactor(ags): make global module
This commit is contained in:
parent
b4648912f5
commit
6028e3679a
7 changed files with 61 additions and 83 deletions
|
@ -2,6 +2,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
||||||
|
../../modules/ags
|
||||||
../../modules/audio.nix
|
../../modules/audio.nix
|
||||||
../../modules/greetd
|
../../modules/greetd
|
||||||
../../modules/kmscon.nix
|
../../modules/kmscon.nix
|
||||||
|
@ -30,7 +31,6 @@
|
||||||
"input"
|
"input"
|
||||||
"uinput"
|
"uinput"
|
||||||
"adm"
|
"adm"
|
||||||
"mlocate"
|
|
||||||
"video"
|
"video"
|
||||||
"libvirtd"
|
"libvirtd"
|
||||||
];
|
];
|
||||||
|
@ -42,7 +42,6 @@
|
||||||
../../home/firefox
|
../../home/firefox
|
||||||
../../home/hyprland
|
../../home/hyprland
|
||||||
|
|
||||||
./home/ags.nix
|
|
||||||
./home/packages.nix
|
./home/packages.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
ags,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
configDir = config.services.device-vars.configDir;
|
|
||||||
symlink = config.lib.file.mkOutOfStoreSymlink;
|
|
||||||
in {
|
|
||||||
imports = [
|
|
||||||
ags.homeManagerModules.default
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.ags = {
|
|
||||||
enable = true;
|
|
||||||
configDir = symlink "${configDir}/ags";
|
|
||||||
package = ags.packages.x86_64-linux.default;
|
|
||||||
extraPackages = [pkgs.libgudev];
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
# ags
|
|
||||||
sassc
|
|
||||||
coloryou
|
|
||||||
playerctl
|
|
||||||
|
|
||||||
## gui
|
|
||||||
pavucontrol # TODO: replace with ags widget
|
|
||||||
networkmanagerapplet # TODO: replace with ags widget
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -16,7 +16,6 @@
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"wheel"
|
"wheel"
|
||||||
"adm"
|
"adm"
|
||||||
"mlocate"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
home-manager.users = {
|
home-manager.users = {
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
||||||
|
../../modules/ags
|
||||||
../../modules/audio.nix
|
../../modules/audio.nix
|
||||||
../../modules/greetd
|
../../modules/greetd
|
||||||
../../modules/kmscon.nix
|
../../modules/kmscon.nix
|
||||||
|
@ -27,7 +28,6 @@
|
||||||
"input"
|
"input"
|
||||||
"uinput"
|
"uinput"
|
||||||
"adm"
|
"adm"
|
||||||
"mlocate"
|
|
||||||
"video"
|
"video"
|
||||||
"libvirtd"
|
"libvirtd"
|
||||||
];
|
];
|
||||||
|
@ -41,7 +41,6 @@
|
||||||
|
|
||||||
./home/dotfiles.nix
|
./home/dotfiles.nix
|
||||||
./home/packages.nix
|
./home/packages.nix
|
||||||
./home/ags.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# No touchy
|
# No touchy
|
||||||
|
|
|
@ -1,47 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
ags,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
configDir = config.services.device-vars.configDir;
|
|
||||||
symlink = config.lib.file.mkOutOfStoreSymlink;
|
|
||||||
in {
|
|
||||||
imports = [
|
|
||||||
ags.homeManagerModules.default
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.ags = {
|
|
||||||
enable = true;
|
|
||||||
configDir = symlink "${configDir}/ags";
|
|
||||||
package = ags.packages.x86_64-linux.default;
|
|
||||||
extraPackages = [pkgs.libgudev];
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
settings = {
|
|
||||||
env = [
|
|
||||||
"AGS_PATH, ${configDir}/ags/bin"
|
|
||||||
"HYPR_PATH, ${configDir}/hypr/scripts"
|
|
||||||
"LOCK_PATH, ${configDir}/gtklock/scripts"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
# ags
|
|
||||||
ydotool
|
|
||||||
sassc
|
|
||||||
coloryou
|
|
||||||
playerctl
|
|
||||||
|
|
||||||
## gui
|
|
||||||
pavucontrol # TODO: replace with ags widget
|
|
||||||
networkmanagerapplet # TODO: replace with ags widget
|
|
||||||
blueberry # TODO: replace with ags widget
|
|
||||||
|
|
||||||
# touchscreen
|
|
||||||
lisgd
|
|
||||||
squeekboard
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -6,6 +6,16 @@
|
||||||
configDir = config.services.device-vars.configDir;
|
configDir = config.services.device-vars.configDir;
|
||||||
symlink = config.lib.file.mkOutOfStoreSymlink;
|
symlink = config.lib.file.mkOutOfStoreSymlink;
|
||||||
in {
|
in {
|
||||||
|
wayland.windowManager.hyprland = {
|
||||||
|
settings = {
|
||||||
|
env = [
|
||||||
|
"AGS_PATH, ${configDir}/ags/bin"
|
||||||
|
"HYPR_PATH, ${configDir}/hypr/scripts"
|
||||||
|
"LOCK_PATH, ${configDir}/gtklock/scripts"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"gtklock/config.ini".source = pkgs.writeText "config.ini" ''
|
"gtklock/config.ini".source = pkgs.writeText "config.ini" ''
|
||||||
[main]
|
[main]
|
||||||
|
|
49
modules/ags/default.nix
Normal file
49
modules/ags/default.nix
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
{
|
||||||
|
ags,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
vars = config.services.device-vars;
|
||||||
|
isNvidia = config.hardware.nvidia.modesetting.enable;
|
||||||
|
isTouchscreen = config.hardware.sensor.iio.enable;
|
||||||
|
in {
|
||||||
|
services.upower.enable = true;
|
||||||
|
|
||||||
|
home-manager.users.${vars.username}.imports = [
|
||||||
|
ags.homeManagerModules.default
|
||||||
|
|
||||||
|
({
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
symlink = config.lib.file.mkOutOfStoreSymlink;
|
||||||
|
optionals = lib.lists.optionals;
|
||||||
|
in {
|
||||||
|
programs.ags = {
|
||||||
|
enable = true;
|
||||||
|
configDir = symlink "${vars.configDir}/ags";
|
||||||
|
package = ags.packages.x86_64-linux.default;
|
||||||
|
extraPackages = [pkgs.libgudev];
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs;
|
||||||
|
[
|
||||||
|
# ags
|
||||||
|
sassc
|
||||||
|
coloryou
|
||||||
|
playerctl
|
||||||
|
|
||||||
|
## gui
|
||||||
|
pavucontrol # TODO: replace with ags widget
|
||||||
|
networkmanagerapplet # TODO: replace with ags widget
|
||||||
|
]
|
||||||
|
++ (optionals isTouchscreen [
|
||||||
|
# touchscreen
|
||||||
|
lisgd
|
||||||
|
squeekboard
|
||||||
|
]);
|
||||||
|
})
|
||||||
|
];
|
||||||
|
}
|
Loading…
Reference in a new issue