chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / ne / nemo-with-extensions / package.nix
blob2c97367695eea7370ecfb46c91220bcaceb46eaf
1 { symlinkJoin
2 , lib
3 , makeWrapper
4 , folder-color-switcher
5 , nemo
6 , nemo-emblems
7 , nemo-fileroller
8 , nemo-python
9 , python3
10 , extensions ? [ ]
11 , useDefaultExtensions ? true
14 let
15   selectedExtensions = extensions ++ lib.optionals useDefaultExtensions [
16     # We keep this in sync with a default Mint installation
17     # Right now (only) nemo-share is missing
18     folder-color-switcher
19     nemo-emblems
20     nemo-fileroller
21     nemo-python
22   ];
23   nemoPythonExtensionsDeps = lib.concatMap (x: x.nemoPythonExtensionDeps or []) selectedExtensions;
25 symlinkJoin {
26   name = "nemo-with-extensions-${nemo.version}";
28   paths = [ nemo ] ++ selectedExtensions;
30   nativeBuildInputs = [ makeWrapper ];
32   postBuild = ''
33     for f in $(find $out/bin/ $out/libexec/ -type l -not -path "*/.*"); do
34       wrapProgram "$f" \
35         --set "NEMO_EXTENSION_DIR" "$out/${nemo.extensiondir}" \
36         --set "NEMO_PYTHON_EXTENSION_DIR" "$out/share/nemo-python/extensions" \
37         --set "NEMO_PYTHON_SEARCH_PATH" "${python3.pkgs.makePythonPath nemoPythonExtensionsDeps}"
38     done
40     # Don't populate the same nemo actions twice when having this globally installed
41     # https://github.com/NixOS/nixpkgs/issues/190781#issuecomment-1365601853
42     rm -r $out/share/nemo/actions
44     # Point to wrapped binary in all service files
45     for file in "share/dbus-1/services/nemo.FileManager1.service" \
46       "share/dbus-1/services/nemo.service"
47     do
48       rm "$out/$file"
49       substitute "${nemo}/$file" "$out/$file" \
50         --replace "${nemo}" "$out"
51     done
52   '';
54   meta = builtins.removeAttrs nemo.meta [ "name" "outputsToInstall" "position" ];