Merge pull request #80035 from dtzWill/update/stretchly-0.21.1-electron7-simplify

stretchly: 0.21.0 -> 0.21.1, use system electron, simplify
This commit is contained in:
Aaron Andersen 2020-03-25 19:26:31 -04:00 committed by GitHub
commit a15e0daf99
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 42 additions and 166 deletions

View File

@ -1,177 +1,38 @@
{ GConf { stdenv, lib, fetchurl, makeWrapper, wrapGAppsHook, electron
, alsaLib
, at-spi2-atk
, at-spi2-core
, atk
, buildFHSUserEnv
, cairo
, common-updater-scripts , common-updater-scripts
, coreutils , writeShellScript
, cups
, dbus
, expat
, fetchurl
, fontconfig
, gdk-pixbuf
, glib
, gtk2
, gtk3
, lib
, libX11
, libXScrnSaver
, libXcomposite
, libXcursor
, libXdamage
, libXext
, libXfixes
, libXi
, libXrandr
, libXrender
, libXtst
, libappindicator
, libdrm
, libnotify
, libpciaccess
, libpng12
, libuuid
, libxcb
, nspr
, nss
, pango
, pciutils
, pulseaudio
, runtimeShell
, stdenv
, udev
, wrapGAppsHook
, writeScript
, file
}: }:
let stdenv.mkDerivation rec {
libs = [ pname = "stretchly";
GConf version = "0.21.1";
alsaLib
at-spi2-atk src = fetchurl {
at-spi2-core url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
atk sha256 = "0776pywyqylwd33m85l4wdr89x0q9xkrjgliag10fp1bswz844lf";
cairo };
cups
dbus nativeBuildInputs = [
expat wrapGAppsHook
fontconfig
gdk-pixbuf
glib
gtk2
gtk3
libX11
libXScrnSaver
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libXrandr
libXrender
libXtst
libappindicator
libdrm
libnotify
libpciaccess
libpng12
libuuid
libxcb
nspr
nss
pango
pciutils
pulseaudio
stdenv.cc.cc.lib
udev
]; ];
libPath = lib.makeLibraryPath libs; installPhase = ''
runHook preInstall
stretchly = mkdir -p $out/bin $out/share/${pname}/
stdenv.mkDerivation rec { mv resources/app.asar $out/share/${pname}/
pname = "stretchly";
version = "0.21.0";
src = fetchurl { makeWrapper ${electron}/bin/electron $out/bin/${pname} \
url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz"; --add-flags $out/share/${pname}/app.asar \
sha256 = "1gyyr22xq8s4miiacs8wqhp7lxnwvkvlwhngnq8671l62s6iyjzl"; "''${gappsWrapperArgs[@]}" \
}; --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}"
nativeBuildInputs = [ runHook postInstall
wrapGAppsHook '';
coreutils
];
buildInputs = libs;
dontPatchELF = true;
dontBuild = true;
dontConfigure = true;
installPhase = ''
mkdir -p $out/bin $out/lib/stretchly
cp -r ./* $out/lib/stretchly/
ln -s $out/lib/stretchly/stretchly $out/bin/
'';
preFixup = ''
patchelf --set-rpath "${libPath}" $out/lib/stretchly/libffmpeg.so
patchelf --set-rpath "${libPath}" $out/lib/stretchly/libEGL.so
patchelf --set-rpath "${libPath}" $out/lib/stretchly/libGLESv2.so
patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libEGL.so
patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libGLESv2.so
patchelf \
--set-rpath "$out/lib/stretchly:${libPath}" \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
$out/lib/stretchly/stretchly
patchelf \
--set-rpath "$out/lib/stretchly:${libPath}" \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
$out/lib/stretchly/chrome-sandbox
'';
meta = with stdenv.lib; {
description = "A break time reminder app";
longDescription = ''
stretchly is a cross-platform electron app that reminds you to take
breaks when working on your computer. By default, it runs in your tray
and displays a reminder window containing an idea for a microbreak for 20
seconds every 10 minutes. Every 30 minutes, it displays a window
containing an idea for a longer 5 minute break.
'';
homepage = https://hovancik.net/stretchly;
downloadPage = https://hovancik.net/stretchly/downloads/;
license = licenses.bsd2;
maintainers = with maintainers; [ cdepillabout ];
platforms = platforms.linux;
};
};
in
buildFHSUserEnv {
inherit (stretchly) meta;
name = "stretchly";
targetPkgs = pkgs: [
stretchly
];
runScript = "stretchly";
passthru = { passthru = {
updateScript = writeScript "update-stretchly" '' updateScript = writeShellScript "update-stretchly" ''
#!${runtimeShell}
set -eu -o pipefail set -eu -o pipefail
# get the latest release version # get the latest release version
@ -179,9 +40,23 @@ buildFHSUserEnv {
echo "updating to $latest_version..." echo "updating to $latest_version..."
${common-updater-scripts}/bin/update-source-version stretchly.passthru.stretchlyWrapped "$latest_version" ${common-updater-scripts}/bin/update-source-version stretchly "$latest_version"
''; '';
};
stretchlyWrapped = stretchly; meta = with stdenv.lib; {
description = "A break time reminder app";
longDescription = ''
stretchly is a cross-platform electron app that reminds you to take
breaks when working on your computer. By default, it runs in your tray
and displays a reminder window containing an idea for a microbreak for 20
seconds every 10 minutes. Every 30 minutes, it displays a window
containing an idea for a longer 5 minute break.
'';
homepage = https://hovancik.net/stretchly;
downloadPage = https://hovancik.net/stretchly/downloads/;
license = licenses.bsd2;
maintainers = with maintainers; [ cdepillabout ];
platforms = platforms.linux;
}; };
} }

View File

@ -22038,7 +22038,8 @@ in
stp = callPackage ../applications/science/logic/stp { }; stp = callPackage ../applications/science/logic/stp { };
stretchly = callPackage ../applications/misc/stretchly { stretchly = callPackage ../applications/misc/stretchly {
inherit (gnome2) GConf; # Error on launch w/electron_8
electron = electron_7;
}; };
stumpish = callPackage ../applications/window-managers/stumpish {}; stumpish = callPackage ../applications/window-managers/stumpish {};