| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- { inputs, ... }:
- rec {
- # This one brings our custom packages from the 'pkgs' directory
- additions = final: _prev: import ../packages { pkgs = final; };
- # This one contains whatever you want to overlay
- # You can change versions, add patches, set compilation flags, anything really.
- # https://nixos.wiki/wiki/Overlays
- modifications = _final: prev: {
- # example = prev.example.overrideAttrs (oldAttrs: rec {
- # ...
- # });
- immich = prev.immich.overrideAttrs (oldAttrs:
- let
- patchedWeb = oldAttrs.passthru.web.overrideAttrs (webOld: {
- patches = (webOld.patches or [ ]) ++ [
- ./disable-picture-in-picture.patch
- ];
- });
- in
- {
- patches = (oldAttrs.patches or [ ]) ++ [
- ./video-geolocation.patch
- ];
- passthru = oldAttrs.passthru // {
- web = patchedWeb;
- };
- postInstall = ''
- rm -f $out/lib/node_modules/immich/build/www
- ln -s '${patchedWeb}' $out/lib/node_modules/immich/build/www
- '';
- });
- makeModulesClosure = x: prev.makeModulesClosure (x // { allowMissing = true; });
- tmuxPlugins = prev.tmuxPlugins // {
- tmux-select-pane-no-wrap = prev.tmux-select-pane-no-wrap;
- };
- vimPlugins = prev.vimPlugins // {
- opencode-nvim = prev.opencode-nvim;
- };
- };
- # When applied, the unstable nixpkgs set (declared in the flake inputs) will
- # be accessible through 'pkgs.unstable'
- unstable-packages = final: _prev: {
- unstable = import inputs.nixpkgs-unstable {
- system = final.system;
- overlays = [
- additions
- modifications
- ];
- config = {
- allowUnfree = true;
- allowUnsupportedSystem = true;
- };
- };
- };
- }
|