81 lines
2.8 KiB
Nix
81 lines
2.8 KiB
Nix
{ inputs }: final: prev:
|
|
let
|
|
mkDate = longDate: (prev.lib.concatStringsSep "-" [
|
|
(builtins.substring 0 4 longDate)
|
|
(builtins.substring 4 2 longDate)
|
|
(builtins.substring 6 2 longDate)
|
|
]);
|
|
mkVersionSrc = src: "unstable-" + builtins.substring 0 7 src.rev;
|
|
mkVersionInput = input: "unstable-" + mkDate (input.lastModifiedDate or "19700101") + "_" + (input.shortRev or "dirty");
|
|
in
|
|
{
|
|
agenix = inputs.agenix.packages.${prev.system}.default;
|
|
attic = inputs.attic.packages.${prev.system}.default;
|
|
hyprpaper = inputs.hyprpaper.packages.${prev.system}.default;
|
|
neovim-nightly = inputs.neovim.packages.${prev.system}.default;
|
|
nil = inputs.nil.packages.${prev.system}.default;
|
|
|
|
logseq-wayland = prev.symlinkJoin {
|
|
name = "logseq-wayland";
|
|
paths = [ prev.logseq ];
|
|
nativeBuildInputs = [ prev.makeWrapper ];
|
|
postBuild = ''
|
|
wrapProgram $out/bin/logseq \
|
|
--add-flags "--socket=wayland --enable-features=UseOzonePlatform --ozone-platform=wayland"
|
|
'';
|
|
};
|
|
|
|
waybar-hyprland = prev.waybar.overrideAttrs (old: {
|
|
pname = "${old.pname}-hyprland";
|
|
postPatch = old.postPatch or "" + ''
|
|
sed -i 's,zext_workspace_handle_v1_activate(workspace_handle_);,const std::string command = "${final.hyprland}/bin/hyprctl dispatch workspace " + name_;\n\tsystem(command.c_str());,g' src/modules/wlr/workspace_manager.cpp
|
|
'';
|
|
mesonFlags = old.mesonFlags or [ ] ++ [ "-Dexperimental=true" ];
|
|
});
|
|
|
|
vimPlugins = prev.vimPlugins // {
|
|
nvim-treesitter-textsubjects = prev.vimUtils.buildVimPluginFrom2Nix {
|
|
pname = "nvim-treesitter-textsubjects";
|
|
version = mkVersionInput inputs.nvim-treesitter-textsubjects;
|
|
src = inputs.nvim-treesitter-textsubjects;
|
|
};
|
|
|
|
smartcolumn-nvim = prev.vimUtils.buildVimPluginFrom2Nix {
|
|
pname = "smartcolumn-nvim";
|
|
version = mkVersionInput inputs.smartcolumn-nvim;
|
|
src = inputs.smartcolumn-nvim;
|
|
};
|
|
|
|
copilot-lua = prev.vimPlugins.copilot-lua.overrideAttrs (old: {
|
|
version = mkVersionInput inputs.copilot-lua;
|
|
src = inputs.copilot-lua;
|
|
});
|
|
|
|
lspsaga-nvim-original = prev.vimPlugins.lspsaga-nvim-original.overrideAttrs (old: {
|
|
version = mkVersionInput inputs.lspsaga-nvim;
|
|
src = inputs.lspsaga-nvim;
|
|
});
|
|
};
|
|
|
|
neovide-hyprland = final.symlinkJoin {
|
|
name = "neovide-hyprland-${final.neovide.version}";
|
|
paths = [ final.neovide ];
|
|
nativeBuildInputs = [ final.makeWrapper ];
|
|
postBuild = ''
|
|
rm $out/bin/neovide
|
|
makeWrapper ${final.neovide}/bin/neovide $out/bin/neovide --set WINIT_UNIX_BACKEND x11
|
|
'';
|
|
meta = final.neovide.meta // {
|
|
mainProgram = "neovide";
|
|
};
|
|
};
|
|
|
|
master = import inputs.master {
|
|
inherit (prev) system;
|
|
config.allowUnfree = true;
|
|
};
|
|
stable = import inputs.stable {
|
|
inherit (prev) system;
|
|
config.allowUnfree = true;
|
|
};
|
|
}
|