Change:
<!-- Note that these are hard requirements --<!-- You can use the "Go to file" functionality on github to find the package Then you can go to the history for this package Find the latest "packagename: oldversion -newversion" commit The "newversion" is the the current version of the package --- <!-- Type the name of your package and try to find an open pull request for the package If you find an open pull request, you can review it! There's a high chance that you'll have the new version right away while helping the community! --- name: bitwarden <!-- The current version can be found easily with the same process than above for checking the master branch If an open PR is present for the package, take this version as the current one and link to the PR --current version: 1.28 desired version: 1.29 <!-- Search your package here: If no maintainer is listed for your package, tag the person that last updated the package --maintainers: Maybe add support to use system electron via an override, as Bitwarden currently ships with Electron 11, which is severly outdated. Edit: bitwarden not bitwarden-cli.
Update in

Discussion:
, fetchurl , lib , libsecret <ins> , libxshmfence </ins> , makeDesktopItem , makeWrapper , stdenv

, wrapGAppsHook }: <del> let inherit (stdenv.hostPlatform) system; </del> <ins> stdenv.mkDerivation rec { </ins> pname = "bitwarden"; <ins> version = "1.29.1"; </ins> <del> version = { x86_64-linux = "1.28.1"; }.${system} or ""; sha256 = { x86_64-linux = "sha256-vyEbISZDTN+CHqSEtElzfg4M4i+2RjUux5vzwJw8/dc="; }.${system} or ""; meta = with lib; { description = "A secure and free password manager for all of your devices"; homepage = "https://bitwarden.com"; license = licenses.gpl3; maintainers = with maintainers; [ kiwi ]; platforms = [ "x86_64-linux" ]; </del> <ins> src = fetchurl { url = "https://github.com/bitwarden/desktop/releases/download/v${version}/Bitwarden-${version}-amd64.deb"; sha256 = "0rxy19bazi7a6m2bpx6wadg5d9p0k324h369vgr5ppmxb69d6zp8"; </ins> }; <del> linux = stdenv.mkDerivation rec { inherit pname version meta; src = fetchurl { url = "https://github.com/bitwarden/desktop/releases/download/" + "v${version}/Bitwarden-${version}-amd64.deb"; inherit sha256; }; </del> <ins> desktopItem = makeDesktopItem { name = "bitwarden"; exec = "bitwarden %U"; icon = "bitwarden"; comment = "A secure and free password manager for all of your devices"; desktopName = "Bitwarden"; categories = "Utility"; }; </ins> <del> desktopItem = makeDesktopItem { name = "bitwarden"; exec = "bitwarden %U"; icon = "bitwarden"; comment = "A secure and free password manager for all of your devices"; desktopName = "Bitwarden"; categories = "Utility"; }; </del> <ins> dontBuild = true; dontConfigure = true; dontPatchELF = true; dontWrapGApps = true; </ins> <del> dontBuild = true; dontConfigure = true; dontPatchELF = true; dontWrapGApps = true; </del> <ins> nativeBuildInputs = [ dpkg makeWrapper autoPatchelfHook wrapGAppsHook ]; </ins> <del> buildInputs = [ libsecret ] ++ atomEnv.packages; </del> <ins> buildInputs = [ libsecret libxshmfence ] ++ atomEnv.packages; </ins> <del> nativeBuildInputs = [ dpkg makeWrapper autoPatchelfHook wrapGAppsHook ]; </del> <ins> unpackPhase = "dpkg-deb -x $src ."; </ins> <del> unpackPhase = "dpkg-deb -x $src ."; </del> <ins> installPhase = '' mkdir -p "$out/bin" cp -R "opt" "$out" cp -R "usr/share" "$out/share" chmod -R g-w "$out" </ins> <del> installPhase = '' mkdir -p "$out/bin" cp -R "opt" "$out" cp -R "usr/share" "$out/share" chmod -R g-w "$out" </del> <ins> # Desktop file mkdir -p "$out/share/applications" cp "${desktopItem}/share/applications/"* "$out/share/applications" ''; </ins> <del> # Desktop file mkdir -p "$out/share/applications" cp "${desktopItem}/share/applications/"* "$out/share/applications" ''; </del> <ins> runtimeDependencies = [ (lib.getLib udev) ]; </ins> <del> runtimeDependencies = [ (lib.getLib udev) ]; </del> <ins> postFixup = '' makeWrapper $out/opt/Bitwarden/bitwarden $out/bin/bitwarden  --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libsecret stdenv.cc.cc ] }"  "''${gappsWrapperArgs[@]}" ''; </ins> <del> postFixup = '' makeWrapper $out/opt/Bitwarden/bitwarden $out/bin/bitwarden  --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libsecret stdenv.cc.cc ] }"  "''${gappsWrapperArgs[@]}" ''; </del> <ins> meta = with lib; { description = "A secure and free password manager for all of your devices"; homepage = "https://bitwarden.com"; license = licenses.gpl3; maintainers = with maintainers; [ kiwi ]; platforms = [ "x86_64-linux" ]; </ins> }; <del> in if stdenv.isDarwin then throw "Bitwarden has not been packaged for macOS yet" else linux </del> <ins> } </ins>