1

enable adwaita-for-steam

This commit is contained in:
2022-08-13 01:25:49 +02:00
parent cf8f42c8d6
commit ea2a14e72c
7 changed files with 111 additions and 3 deletions

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation {
installPhase = ''
mkdir -p $out/share/adwaita-for-steam
cp -r Adwaita/* $out/share/adwaita-for-steam
cp -r Adwaita $out/share/adwaita-for-steam/
'';
meta = with lib; {

View File

@ -4,4 +4,5 @@
# vital-synth = pkgs.callPackage ./vital-synth {}; # Kept as an example, don't know if I will fix this or keep using distrho
cyberdrop-dl = pkgs.callPackage ./cyberdrop-dl {};
firefox-gnome-theme = pkgs.callPackage ./firefox-gnome-theme { src = inputs.firefox-gnome-theme; };
adwaita-for-steam = pkgs.callPackage ./adwaita-for-steam { src = inputs.adwaita-for-steam; };
}

70
flake.lock generated
View File

@ -1,5 +1,21 @@
{
"nodes": {
"adwaita-for-steam": {
"flake": false,
"locked": {
"lastModified": 1660168151,
"narHash": "sha256-EOnnejn/O0wCF3wzk2yc/MH14m4U9BIfQQKxyu0UEH8=",
"owner": "tkashkin",
"repo": "Adwaita-for-Steam",
"rev": "9b9c5a036fe262ee2816abcbdeb49c4c1dcc0e8c",
"type": "github"
},
"original": {
"owner": "tkashkin",
"repo": "Adwaita-for-Steam",
"type": "github"
}
},
"devshell": {
"inputs": {
"flake-utils": "flake-utils",
@ -138,6 +154,25 @@
"type": "github"
}
},
"nixos-conf-editor": {
"inputs": {
"nixpkgs": "nixpkgs_4",
"utils": "utils_2"
},
"locked": {
"lastModified": 1659222042,
"narHash": "sha256-esyfFl72t5k2XNq6DCRgfIC6TYgIMyGKla9GaEEN0Oo=",
"owner": "vlinkz",
"repo": "nixos-conf-editor",
"rev": "b649b637beb4bc17159a4b7ca949d6703b6bf7cb",
"type": "github"
},
"original": {
"owner": "vlinkz",
"repo": "nixos-conf-editor",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1643381941,
@ -183,6 +218,22 @@
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1659077768,
"narHash": "sha256-P0XIHBVty6WIuIrk2DZNvLcYev9956y1prT4zL212H8=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "2a93ea177c3d7700b934bf95adfe00c435f696b8",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1659981942,
"narHash": "sha256-uCFiP/B/NXOWzhN6TKfMbSxtVMk1bVnCrnJRjCF6RmU=",
@ -215,13 +266,15 @@
},
"root": {
"inputs": {
"adwaita-for-steam": "adwaita-for-steam",
"devshell": "devshell",
"emacs-overlay": "emacs-overlay",
"firefox-gnome-theme": "firefox-gnome-theme",
"hardware": "hardware",
"home-manager": "home-manager",
"musnix": "musnix",
"nixpkgs": "nixpkgs_4",
"nixos-conf-editor": "nixos-conf-editor",
"nixpkgs": "nixpkgs_5",
"nur": "nur"
}
},
@ -239,6 +292,21 @@
"repo": "flake-utils",
"type": "github"
}
},
"utils_2": {
"locked": {
"lastModified": 1656928814,
"narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
}
},
"root": "root",

View File

@ -24,6 +24,11 @@
firefox-gnome-theme.url = "github:rafaelmardojai/firefox-gnome-theme";
firefox-gnome-theme.flake = false;
adwaita-for-steam.url = "github:tkashkin/Adwaita-for-Steam";
adwaita-for-steam.flake = false;
nixos-conf-editor.url = "github:vlinkz/nixos-conf-editor";
};
# Outputs is a function that takes the inputs as arguments.

View File

@ -41,6 +41,7 @@ rec {
enable = true;
protonGE = true;
gamescope = true;
adwaita = true;
};
};
};

View File

@ -23,6 +23,7 @@ in {
enable = mkEnableOpt "Steam (flatpak)";
protonGE = mkBoolOpt false "Enable Steam Proton GloriousEggroll runner (flatpak)";
gamescope = mkBoolOpt false "Enable the gamescope micro compositor (flatpak)";
adwaita = mkBoolOpt false "Enable the adwaita-for-steam skin";
};
};
@ -46,8 +47,39 @@ in {
home.packages = with pkgs; builtins.concatLists [
[ gamemode ] # gamemode should be always enabled (could also be enabled by audio module)
# TODO: Extra config (extensions etc), maybe standalone chromium module
# TODO: Extra config (extensions etc) in chromium module
(optionals cfg.discordChromium.enable [ chromium ])
(optionals cfg.steam.adwaita [ adwaita-for-steam ])
];
# This doesn't work because steam doesn't detect symlinked skins, files have to be copied
# home.file = mkMerge [
# (optionalAttrs cfg.steam.adwaita {
# "adwaita-for-steam" = {
# source = "${pkgs.adwaita-for-steam}/share/adwaita-for-steam/Adwaita";
# target = ".var/app/com.valvesoftware.Steam/.local/share/Steam/skins/Adwaita";
# recursive = false;
# };
# })
# ];
home.activation = mkMerge [
(optionalAttrs cfg.steam.adwaita {
copySteamAdwaitaSkin = hm.dag.entryAfter [ "writeBoundary" ] ''
if [ ! -d ${config.home.homeDirectory}/.var/app/com.valvesoftware.Steam/.local/share/Steam/skins ]; then
mkdir ${config.home.homeDirectory}/.var/app/com.valvesoftware.Steam/.local/share/Steam/skins
fi
cp -r ${pkgs.adwaita-for-steam}/share/adwaita-for-steam/Adwaita ${config.home.homeDirectory}/.var/app/com.valvesoftware.Steam/.local/share/Steam/skins/Adwaita
chmod -R +w ${config.home.homeDirectory}/.var/app/com.valvesoftware.Steam/.local/share/Steam/skins/Adwaita
'';
})
(optionalAttrs (! cfg.steam.adwaita) {
deleteSteamAdwaitaSkin = hm.dag.entryAfter [ "writeBoundary" ] ''
rm -rf ${config.home.homeDirectory}/.var/app/com.valvesoftware.Steam/.local/share/Steam/skins/Adwaita
'';
})
];
xdg.desktopEntries.discordChromium = mkIf cfg.discordChromium.enable {

View File

@ -202,6 +202,7 @@
# jetbrains-mono
# etBook
# overpass
cantarell-fonts
];
# TODO: Check if this works