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 = '' installPhase = ''
mkdir -p $out/share/adwaita-for-steam 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; { 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 # 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 {}; cyberdrop-dl = pkgs.callPackage ./cyberdrop-dl {};
firefox-gnome-theme = pkgs.callPackage ./firefox-gnome-theme { src = inputs.firefox-gnome-theme; }; 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": { "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": { "devshell": {
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
@ -138,6 +154,25 @@
"type": "github" "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": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1643381941, "lastModified": 1643381941,
@ -183,6 +218,22 @@
} }
}, },
"nixpkgs_4": { "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": { "locked": {
"lastModified": 1659981942, "lastModified": 1659981942,
"narHash": "sha256-uCFiP/B/NXOWzhN6TKfMbSxtVMk1bVnCrnJRjCF6RmU=", "narHash": "sha256-uCFiP/B/NXOWzhN6TKfMbSxtVMk1bVnCrnJRjCF6RmU=",
@ -215,13 +266,15 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"adwaita-for-steam": "adwaita-for-steam",
"devshell": "devshell", "devshell": "devshell",
"emacs-overlay": "emacs-overlay", "emacs-overlay": "emacs-overlay",
"firefox-gnome-theme": "firefox-gnome-theme", "firefox-gnome-theme": "firefox-gnome-theme",
"hardware": "hardware", "hardware": "hardware",
"home-manager": "home-manager", "home-manager": "home-manager",
"musnix": "musnix", "musnix": "musnix",
"nixpkgs": "nixpkgs_4", "nixos-conf-editor": "nixos-conf-editor",
"nixpkgs": "nixpkgs_5",
"nur": "nur" "nur": "nur"
} }
}, },
@ -239,6 +292,21 @@
"repo": "flake-utils", "repo": "flake-utils",
"type": "github" "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", "root": "root",

View File

@ -24,6 +24,11 @@
firefox-gnome-theme.url = "github:rafaelmardojai/firefox-gnome-theme"; firefox-gnome-theme.url = "github:rafaelmardojai/firefox-gnome-theme";
firefox-gnome-theme.flake = false; 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. # Outputs is a function that takes the inputs as arguments.

View File

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

View File

@ -23,6 +23,7 @@ in {
enable = mkEnableOpt "Steam (flatpak)"; enable = mkEnableOpt "Steam (flatpak)";
protonGE = mkBoolOpt false "Enable Steam Proton GloriousEggroll runner (flatpak)"; protonGE = mkBoolOpt false "Enable Steam Proton GloriousEggroll runner (flatpak)";
gamescope = mkBoolOpt false "Enable the gamescope micro compositor (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 [ home.packages = with pkgs; builtins.concatLists [
[ gamemode ] # gamemode should be always enabled (could also be enabled by audio module) [ 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.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 { xdg.desktopEntries.discordChromium = mkIf cfg.discordChromium.enable {

View File

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