@ -1,12 +1,12 @@
{ lib , appimageTools , fetchurl }: let
{ lib , appimageTools , fetchurl , nodePackages }: let
pname = " f l e x o p t i x - a p p " ;
version = " 5 . 9 . 0 " ;
version = " 5 . 1 1 . 0 " ;
name = " ${ pname } - ${ version } " ;
src = fetchurl {
name = " ${ name } . A p p I m a g e " ;
url = " h t t p s : / / f l e x b o x . r e c o n f i g u r e . m e / d o w n l o a d / e l e c t r o n / l i n u x / x 6 4 / F L E X O P T I X % 2 0 A p p . ${ version } . A p p I m a g e " ;
sha256 = " 0 g b q a j 9 b 1 1 m x x 0 k n m m h 2 d 5 8 6 3 k a s l b b 3 r 6 c 4 h 8 r j h g 8 q y 4 c w s 7 h j " ;
sha256 = " s h a 2 5 6 : 1 h z d b 2 f b k w p s f 0 d 3 w s 4 z 3 2 b l k 6 5 4 9 j w h f 1 l r l q m c x h z q f v k r 4 g i n " ;
} ;
udevRules = fetchurl {
@ -14,12 +14,20 @@
sha256 = " 0 m r 1 b h g v a v q 1 a x 4 2 0 6 z 1 v r 2 y 6 4 s 3 r 6 7 6 w 9 j j l 9 y s z i k l b r s v k 5 r r " ;
} ;
appimageContents = appimageTools . extractType2 {
inherit name src ;
} ;
appimageContents = ( appimageTools . extract { inherit name src ; } ) . overrideAttrs ( oA : {
buildCommand = ''
$ { oA . buildCommand }
# Get rid of the autoupdater
$ { nodePackages . asar } /bin/asar extract $ out/resources/app.asar app
sed - i ' s/async isUpdateAvailable . * /async isUpdateAvailable ( updateInfo ) { return false ; /g ' app/node_modules/electron-updater/out/AppUpdater.js
$ { nodePackages . asar } /bin/asar pack app $ out/resources/app.asar
'' ;
} ) ;
in appimageTools . wrapType2 {
inherit name src ;
in appimageTools . wrapAppImage {
inherit name ;
src = appimageContents ;
multiPkgs = null ; # no 32bit needed
extraPkgs = { pkgs , . . . } @ args : [
@ -27,11 +35,14 @@ in appimageTools.wrapType2 {
] ++ appimageTools . defaultFhsEnvArgs . multiPkgs args ;
extraInstallCommands = ''
# Add desktop convencience stuff
mv $ out/bin / { ${ name } , ${ pname } }
install - Dm444 $ { appimageContents } /flexoptix-app.desktop - t $ out/share/applications
install - Dm444 $ { appimageContents } /flexoptix-app.png - t $ out/share/pixmaps
substituteInPlace $ out/share/applications/flexoptix-app.desktop \
- - replace ' Exec = AppRun' " E x e c = $ o u t / b i n / ${ pname } "
- - replace ' Exec = AppRun' " E x e c = $ o u t / b i n / ${ pname } - - "
# Add udev rules
mkdir - p $ out/lib/udev/rules.d
ln - s $ { udevRules } $ out/lib/udev/rules.d/99-tprogrammer.rules
'' ;