diff --git a/pkgs/applications/window-managers/fbpanel/default.nix b/pkgs/applications/window-managers/fbpanel/default.nix index c7bba46ec051..66a3741d3654 100644 --- a/pkgs/applications/window-managers/fbpanel/default.nix +++ b/pkgs/applications/window-managers/fbpanel/default.nix @@ -1,24 +1,53 @@ -{ stdenv, fetchurl, builderDefs, libX11, gtk, pkgconfig, libXmu -, libXpm, libpng, libjpeg, libtiff, librsvg }: +x@{builderDefsPackage + , libX11, gtk, pkgconfig, libXmu + , libXpm, libpng, libjpeg, libtiff, librsvg + , ...}: +builderDefsPackage +(a : +let + helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ + []; - let localDefs = builderDefs.passthru.function { - src = /* put a fetchurl here */ - fetchurl { - url = http://garr.dl.sourceforge.net/sourceforge/fbpanel/fbpanel-4.12.tgz; - sha256 = "0zv0zkq6w4h7dk0ji8bm9cqpj2qxv3ss161mqg9y68shvxvmfrlz"; - }; + buildInputs = map (n: builtins.getAttr n x) + (builtins.attrNames (builtins.removeAttrs x helperArgNames)); + sourceInfo = rec { + baseName="fbpanel"; + version="6.1"; + name="${baseName}-${version}"; + url="mirror://sourceforge/${baseName}/${name}.tbz2"; + hash="e14542cc81ea06e64dd4708546f5fd3f5e01884c3e4617885c7ef22af8cf3965"; + }; +in +rec { + src = a.fetchurl { + url = sourceInfo.url; + sha256 = sourceInfo.hash; + }; + + inherit (sourceInfo) name version; + inherit buildInputs; + + /* doConfigure should be removed if not needed */ + phaseNames = ["setVars" "doUnpack" "fixPaths" "doConfigure" "doMakeInstall"]; + + fixPaths=(a.doPatchShebangs "."); + setVars = a.fullDepEntry '' + export NIX_LDFLAGS="$NIX_LDFLAGS -lX11" + '' []; + + meta = { + description = "${abort ''Specify description''}"; + maintainers = with a.lib.maintainers; + [ + raskin + ]; + platforms = with a.lib.platforms; + linux; + }; + passthru = { + updateInfo = { + downloadPage = "fbpanel.sourceforge.net"; + }; + }; +}) x - buildInputs = [libX11 gtk pkgconfig libXmu libXpm - libpng libjpeg libtiff librsvg]; - configureFlags = []; - }; /* null is a terminator for sumArgs */ - in with localDefs; -stdenv.mkDerivation rec { - name = "fbpanel-4.12"; - builder = writeScript (name + "-builder") - (textClosure localDefs [doConfigure doMakeInstall doForceShare doPropagate]); - meta = { - description = "Just a desktop panel"; - inherit src; - }; -}