90 lines
2.4 KiB
Nix
90 lines
2.4 KiB
Nix
{
|
|
description = "Pywal Config";
|
|
|
|
inputs = {
|
|
|
|
themecord = {
|
|
url = "github:danihek/themecord";
|
|
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
|
};
|
|
|
|
spicetify-nix = {
|
|
url = "github:Gerg-L/spicetify-nix";
|
|
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05";
|
|
};
|
|
|
|
spicetify-ext = {
|
|
url = "github:rxri/spicetify-extensions";
|
|
flake = false;
|
|
};
|
|
|
|
nixpkgs-us.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
|
|
};
|
|
|
|
outputs = { self, ... }@inputs: let
|
|
system = "x86_64-linux";
|
|
pkgs-us = import inputs.nixpkgs-us {
|
|
inherit system;
|
|
config.allowUnfree = true;
|
|
};
|
|
|
|
in {
|
|
|
|
hmModule = { config, lib, pkgs, ... }: let
|
|
pywalfox-wrapper = pkgs.writeShellScriptBin "pywalfox-wrapper" ''
|
|
${pkgs.pywalfox-native}/bin/pywalfox start
|
|
'';
|
|
in {
|
|
|
|
imports = [
|
|
inputs.spicetify-nix.homeManagerModules.default
|
|
];
|
|
|
|
options.homeconfig.wal.enable = lib.options.mkOption {
|
|
type = lib.types.bool;
|
|
default = false;
|
|
};
|
|
|
|
config = lib.mkIf config.homeconfig.wal.enable {
|
|
|
|
programs.spicetify = let
|
|
spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.system};
|
|
in {
|
|
enable = true;
|
|
spotifyPackage = pkgs-us.spotify;
|
|
theme = spicePkgs.themes.default;
|
|
enabledExtensions = with spicePkgs.extensions; [
|
|
({
|
|
src = "${inputs.spicetify-ext}/adblock";
|
|
name = "adblock.js";
|
|
})
|
|
copyToClipboard
|
|
oneko
|
|
#randomBadToTheBoneRiff #this could be hilarious
|
|
];
|
|
enabledCustomApps = with spicePkgs.apps; [
|
|
ncsVisualizer
|
|
];
|
|
};
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
inputs.themecord.packages.${pkgs.system}.default
|
|
vesktop
|
|
|
|
pkgs-us.pywal16
|
|
pywalfox-native
|
|
];
|
|
|
|
home.file.".mozilla/native-messaging-hosts/pywalfox.json".text = lib.replaceStrings [ "<path>" ] [
|
|
"${pywalfox-wrapper}/bin/pywalfox-wrapper"
|
|
]
|
|
(lib.readFile "${pkgs.pywalfox-native}/lib/python3.11/site-packages/pywalfox/assets/manifest.json");
|
|
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|