mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-14 09:43:14 +00:00
571c71e6f7
We are migrating packages that meet below requirements: 1. using `callPackage` 2. called path is a directory 3. overriding set is empty (`{ }`) 4. not containing path expressions other than relative path (to makenixpkgs-vet happy) 5. not referenced by nix files outside of the directory, other than`pkgs/top-level/all-packages.nix` 6. not referencing nix files outside of the directory 7. not referencing `default.nix` (since it's changed to `package.nix`) 8. `outPath` doesn't change after migration The tool is here: https://github.com/Aleksanaa/by-name-migrate.
93 lines
1.6 KiB
Nix
93 lines
1.6 KiB
Nix
{ stdenv
|
|
, lib
|
|
, pname
|
|
, version
|
|
, meta
|
|
, fetchurl
|
|
, autoPatchelfHook
|
|
, alsa-lib
|
|
, coreutils
|
|
, db
|
|
, dpkg
|
|
, glib
|
|
, gtk3
|
|
, wrapGAppsHook3
|
|
, libkrb5
|
|
, libsecret
|
|
, nss
|
|
, openssl
|
|
, udev
|
|
, xorg
|
|
, mesa
|
|
, libdrm
|
|
, libappindicator
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
inherit pname version meta;
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/Foundry376/Mailspring/releases/download/${finalAttrs.version}/mailspring-${finalAttrs.version}-amd64.deb";
|
|
hash = "sha256-2F5k8zRRI6x1EQ0k8wvIq1Q3Lnrn2ROp/Mq+H7Vqzlc=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
autoPatchelfHook
|
|
dpkg
|
|
wrapGAppsHook3
|
|
];
|
|
|
|
buildInputs = [
|
|
alsa-lib
|
|
db
|
|
glib
|
|
gtk3
|
|
libkrb5
|
|
libsecret
|
|
nss
|
|
xorg.libxkbfile
|
|
xorg.libXdamage
|
|
xorg.libXScrnSaver
|
|
xorg.libXtst
|
|
xorg.libxshmfence
|
|
mesa
|
|
libdrm
|
|
];
|
|
|
|
runtimeDependencies = [
|
|
coreutils
|
|
openssl
|
|
(lib.getLib udev)
|
|
libappindicator
|
|
libsecret
|
|
];
|
|
|
|
unpackPhase = ''
|
|
runHook preUnpack
|
|
|
|
dpkg -x $src .
|
|
|
|
runHook postUnpack
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/{bin,lib}
|
|
cp -ar ./usr/share $out
|
|
|
|
substituteInPlace $out/share/mailspring/resources/app.asar.unpacked/mailsync \
|
|
--replace-fail dirname ${coreutils}/bin/dirname
|
|
|
|
ln -s $out/share/mailspring/mailspring $out/bin/mailspring
|
|
ln -s ${lib.getLib openssl}/lib/libcrypto.so $out/lib/libcrypto.so.1.0.0
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
postFixup = /* sh */ ''
|
|
substituteInPlace $out/share/applications/Mailspring.desktop \
|
|
--replace-fail Exec=mailspring Exec=$out/bin/mailspring
|
|
'';
|
|
})
|