2023-01-29 13:50:23 -03:00
|
|
|
{ inputs, packages, ... }: rec {
|
2023-01-23 20:56:18 -03:00
|
|
|
all = [
|
|
|
|
nur
|
|
|
|
scripts
|
|
|
|
sway
|
|
|
|
unstable
|
|
|
|
sixel-patches
|
|
|
|
themes
|
|
|
|
new-packages
|
|
|
|
patches
|
|
|
|
variables
|
2023-02-25 18:04:58 -03:00
|
|
|
lib_extended
|
2023-01-22 18:12:04 -03:00
|
|
|
];
|
2023-01-23 20:56:18 -03:00
|
|
|
|
|
|
|
nur = inputs.nur.overlay;
|
|
|
|
scripts = (import ../scripts);
|
|
|
|
|
|
|
|
sway = (import ./sway.nix);
|
|
|
|
|
|
|
|
unstable = (final: prev: {
|
2023-02-23 11:47:31 -03:00
|
|
|
unstable = import inputs.nixpkgs-unstable {
|
|
|
|
inherit (prev) system config;
|
|
|
|
};
|
2023-01-23 20:56:18 -03:00
|
|
|
});
|
|
|
|
|
|
|
|
sixel-patches = (import ./sixel-patches.nix (inputs));
|
|
|
|
|
|
|
|
themes = (final: prev: {
|
|
|
|
material-wifi-icons = final.stdenv.mkDerivation rec {
|
|
|
|
name = "material-wifi-icons";
|
|
|
|
src = inputs.material-wifi-icons;
|
|
|
|
installPhase =
|
|
|
|
let dest = "$out/share/fonts/${name}";
|
|
|
|
in ''
|
|
|
|
mkdir -p ${dest}
|
|
|
|
cp material-wifi.ttf ${dest}
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
papirus_red = (final.unstable.papirus-icon-theme.override { color = "red"; });
|
2023-02-25 16:43:58 -03:00
|
|
|
orchis_theme_compact = (final.orchis-theme.override {
|
|
|
|
border-radius = 0;
|
|
|
|
tweaks = [ "compact" "solid" ];
|
|
|
|
});
|
2023-01-23 20:56:18 -03:00
|
|
|
nerdfonts_fira_hack = (final.nerdfonts.override { fonts = [ "FiraCode" "Hack" ]; });
|
|
|
|
});
|
|
|
|
|
2023-01-25 17:00:40 -03:00
|
|
|
new-packages = (final: prev: packages // {
|
2023-01-29 13:50:23 -03:00
|
|
|
dhist = inputs.dhist.packages.${prev.system}.dhist;
|
2023-02-18 22:15:44 -03:00
|
|
|
demoji = inputs.demoji.packages.${prev.system}.default;
|
2023-01-29 13:50:23 -03:00
|
|
|
dzgui = inputs.dzgui.packages.${prev.system}.dzgui;
|
2023-01-23 20:56:18 -03:00
|
|
|
mpvpaper = inputs.wegank.packages.${prev.system}.mpvpaper;
|
|
|
|
|
|
|
|
sea-orm-cli = inputs.sea-orm-cli.legacyPackages.${prev.system}.sea-orm-cli;
|
2023-02-18 22:15:01 -03:00
|
|
|
webcord = (prev.webcord or prev.unstable.webcord).overrideAttrs (old: {
|
|
|
|
patches = (old.patches or [ ]) ++ [ ../patches/webcord/fix-reading-config.patch ];
|
|
|
|
});
|
2023-01-23 20:56:18 -03:00
|
|
|
nil-lsp = inputs.nil-lsp.packages.${prev.system}.nil;
|
|
|
|
});
|
|
|
|
|
|
|
|
patches = (final: prev: {
|
|
|
|
bemenu = prev.bemenu.overrideAttrs (o: {
|
|
|
|
preBuild = ''
|
|
|
|
sed -i 's/ZWLR_LAYER_SHELL_V1_LAYER_TOP/ZWLR_LAYER_SHELL_V1_LAYER_OVERLAY/g' lib/renderers/wayland/window.c
|
|
|
|
'';
|
|
|
|
});
|
|
|
|
sway-unwrapped = prev.sway-unwrapped.overrideAttrs (old: {
|
|
|
|
patches = old.patches
|
|
|
|
++ [ ../patches/sway/fix-hide_cursor-clearing-focus.patch ];
|
|
|
|
});
|
2023-02-23 11:47:31 -03:00
|
|
|
steam = prev.unstable.steam.override {
|
2023-01-23 20:56:18 -03:00
|
|
|
extraPkgs = pkgs: with pkgs; [ capitaine-cursors bibata-cursors ];
|
|
|
|
};
|
2023-02-23 11:46:49 -03:00
|
|
|
|
|
|
|
qutebrowser = prev.qutebrowser.overrideAttrs (old: {
|
|
|
|
src = prev.fetchFromGitHub {
|
|
|
|
owner = "pinusc";
|
|
|
|
repo = "qutebrowser";
|
|
|
|
rev = "feature/tree-tabs";
|
|
|
|
sha256 = "sha256-kHxZ3AzbfPJ3im1kQNn8DDlKBn+yPI4SLbSZuBQrUWY=";
|
|
|
|
};
|
|
|
|
});
|
2023-01-23 20:56:18 -03:00
|
|
|
});
|
|
|
|
|
|
|
|
variables = (final: prev: {
|
|
|
|
uservars = import ../user/variables.nix;
|
|
|
|
});
|
2023-02-25 18:04:58 -03:00
|
|
|
|
|
|
|
lib_extended = (final: prev: {
|
|
|
|
lib = prev.lib // rec {
|
|
|
|
# Utility funcion
|
|
|
|
# Input: [{v1=1;} {v2=2;}]
|
|
|
|
# Output: {v1=1;v2=2;}
|
|
|
|
mergeAttrsSet = prev.lib.foldAttrs (n: _: n) { };
|
|
|
|
|
|
|
|
# Easily translate imperative templating code
|
|
|
|
# Input: [ 1 2 ] (num: { "v${num}" = num; })
|
|
|
|
# Output: {v1=1;v2=2;}
|
|
|
|
forEachMerge = list: func: mergeAttrsSet (prev.lib.forEach list func);
|
|
|
|
};
|
|
|
|
});
|
2023-01-29 13:50:23 -03:00
|
|
|
}
|