50 lines
1 KiB
Nix
50 lines
1 KiB
Nix
|
{
|
||
|
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
|
||
|
]);
|
||
|
})
|
||
|
];
|
||
|
}
|