nur-packages

My NUR packages
git clone git://git.sikmir.ru/nur-packages
Log | Files | Refs | README | LICENSE

package.nix (1577B)


      1 {
      2   lib,
      3   stdenv,
      4   fetchzip,
      5   gcc-arm-embedded,
      6   zip,
      7   platform ? null,
      8   platformsub ? null,
      9   fi2key ? null,
     10   fi2iv ? null,
     11 }:
     12 
     13 let
     14   version = "1.6.1";
     15   revision = "6315"; # check on http://mighty-hoernsche.de/
     16   branch = "release-${lib.replaceStrings [ "." ] [ "_" ] (lib.versions.majorMinor version)}";
     17   optFI2 = fi2key != null && fi2iv != null;
     18   batchBuild = platform == null || platformsub == null;
     19 in
     20 stdenv.mkDerivation {
     21   pname = "chdk";
     22   inherit version;
     23 
     24   src = fetchzip {
     25     url = "https://app.assembla.com/spaces/chdk/subversion/source/${revision}/branches/${branch}?_format=zip";
     26     extension = "zip";
     27     stripRoot = false;
     28     hash = "sha256-uka+Hn0gUoJS0XX5lqcY/crUx29KQSPrL2/OAg0vQKM=";
     29   };
     30 
     31   nativeBuildInputs = [
     32     gcc-arm-embedded
     33     zip
     34   ];
     35 
     36   buildFlags = [
     37     "DEF_SVN_REF=${revision}"
     38     "HOSTCC=${stdenv.cc.targetPrefix}cc"
     39   ]
     40   ++ lib.optionals (optFI2 && !batchBuild) [
     41     "OPT_FI2=1"
     42     "FI2KEY=${fi2key}"
     43     "FI2IV=${fi2iv}"
     44   ]
     45   ++ lib.optionals (!batchBuild) [
     46     "PLATFORM=${platform}"
     47     "PLATFORMSUB=${platformsub}"
     48     "firzipsubcomplete"
     49   ]
     50   ++ lib.optional batchBuild "batch-zip-complete";
     51 
     52   env.NIX_CFLAGS_COMPILE = "-Wno-format-security";
     53 
     54   installPhase = ''
     55     runHook preInstall
     56     install -Dm644 bin/*.zip -t $out
     57     runHook postInstall
     58   '';
     59 
     60   meta = {
     61     description = "Canon Hack Development Kit";
     62     homepage = "https://chdk.fandom.com/wiki/CHDK";
     63     license = lib.licenses.gpl2;
     64     platforms = lib.platforms.unix;
     65     maintainers = [ lib.maintainers.sikmir ];
     66     skip.ci = true;
     67   };
     68 }