about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/science/electronics
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2020-05-12 14:45:39 +0000
committerAlyssa Ross <hi@alyssa.is>2020-05-12 14:56:01 +0000
commiteb7dadee9c0f903f1152f8dd4165453bfa48ccf4 (patch)
treea6bd66dcbec895aae167465672af08a1ca70f089 /nixpkgs/pkgs/applications/science/electronics
parent3879b925f5dae3a0eb5c98b10c1ac5a0e4d729a3 (diff)
parent683c68232e91f76386db979c461d8fbe2a018782 (diff)
downloadnixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.gz
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.bz2
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.lz
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.xz
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.zst
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.zip
Merge commit '683c68232e91f76386db979c461d8fbe2a018782'
Diffstat (limited to 'nixpkgs/pkgs/applications/science/electronics')
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/caneda/default.nix4
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/eagle/eagle.nix4
-rwxr-xr-xnixpkgs/pkgs/applications/science/electronics/kicad/update.sh30
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix28
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/librepcb/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch10
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch19
-rw-r--r--nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix36
8 files changed, 104 insertions, 33 deletions
diff --git a/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix b/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix
index 6f832013e8ca..c90ceac6788f 100644
--- a/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/caneda/default.nix
@@ -1,6 +1,6 @@
-{stdenv, fetchFromGitHub, cmake, qtbase, qttools, qtsvg, qwt }:
+{ mkDerivation, stdenv, fetchFromGitHub, cmake, qtbase, qttools, qtsvg, qwt }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "caneda";
   version = "0.3.1";
 
diff --git a/nixpkgs/pkgs/applications/science/electronics/eagle/eagle.nix b/nixpkgs/pkgs/applications/science/electronics/eagle/eagle.nix
index 7c5942d825a9..58bdd5c722da 100644
--- a/nixpkgs/pkgs/applications/science/electronics/eagle/eagle.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/eagle/eagle.nix
@@ -13,11 +13,11 @@ let
   in
   mkDerivation rec {
     pname = "eagle";
-    version = "9.6.0";
+    version = "9.6.1";
 
     src = fetchurl {
       url = "https://eagle-updates.circuits.io/downloads/${builtins.replaceStrings ["."] ["_"] version}/Autodesk_EAGLE_${version}_English_Linux_64bit.tar.gz";
-      sha256 = "1crkyc7ws2zz5dfs00h6rj4z2hyqb97kp6r4hxhmcgg5647ij4z8";
+      sha256 = "1iq4aahrh4g3549vbr7gka5y2h7f17n3yafzl21njc2mkqb12jdw";
     };
 
     desktopItem = makeDesktopItem {
diff --git a/nixpkgs/pkgs/applications/science/electronics/kicad/update.sh b/nixpkgs/pkgs/applications/science/electronics/kicad/update.sh
index 7dc0b008b6c2..f048ccde4ec8 100755
--- a/nixpkgs/pkgs/applications/science/electronics/kicad/update.sh
+++ b/nixpkgs/pkgs/applications/science/electronics/kicad/update.sh
@@ -1,6 +1,8 @@
 #!/usr/bin/env nix-shell
 #!nix-shell -i bash -p coreutils git nix curl
 
+set -e
+
 # this script will generate versions.nix in the right location
 # this should contain the versions' revs and hashes
 # the stable revs are stored only for ease of skipping
@@ -50,12 +52,11 @@ for arg in "$@"; do
 done
 
 here="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-now=$(date --iso-8601)
+now=$(date --iso-8601 --utc)
 
 file="${here}/versions.nix"
 # just in case this runs in parallel
-rand="$(head -c 3 /dev/urandom | base64)"
-tmp="${here}/,versions.nix.${rand}"
+tmp="${here}/,versions.nix.${RANDOM}"
 
 # libraries currently on github, move to $gitlab/libraries planned
 libs=( symbols templates footprints packages3d )
@@ -112,16 +113,16 @@ for version in "${all_versions[@]}"; do
 
     echo "Checking src" >&2
     src_rev="$(${get_rev} "${gitlab}"/code/kicad.git "${version}" | cut -f1)"
-    ret="$(grep -sm 1 "\"${pname}\"" -A 4 "${file}" | grep -sm 1 "${src_rev}")"
+    has_rev="$(grep -sm 1 "\"${pname}\"" -A 4 "${file}" | grep -sm 1 "${src_rev}" || true)"
     has_hash="$(grep -sm 1 "\"${pname}\"" -A 5 "${file}" | grep -sm 1 "sha256")"
-    if [[ -n ${ret} && -n ${has_hash} && -z ${clean} ]]; then
+    if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
       echo "Reusing old ${pname}.src.sha256, already latest .rev" >&2
       grep -sm 1 "\"${pname}\"" -A 5 "${file}" | grep -sm 1 "rev" -A 1
     else
           printf "%8srev =\t\t\t\"%s\";\n" "" "${src_rev}"
           printf "%8ssha256 =\t\t\"%s\";\n" \
             "" "$(${prefetch} "${gitlab_pre}${src_rev}")"
-          (( count++ ))
+          count=$((count+1))
     fi
         printf "%6s};\n" ""
       printf "%4s};\n" ""
@@ -132,25 +133,25 @@ for version in "${all_versions[@]}"; do
 
         echo "Checking i18n" >&2
         i18n_rev="$(${get_rev} "${i18n}" "${version}" | cut -f1)"
-        ret="$(grep -sm 1 "\"${pname}\"" -A 11 "${file}" | grep -sm 1 "${i18n_rev}")"
+        has_rev="$(grep -sm 1 "\"${pname}\"" -A 11 "${file}" | grep -sm 1 "${i18n_rev}" || true)"
         has_hash="$(grep -sm 1 "\"${pname}\"" -A 12 "${file}" | grep -sm 1 "i18n.sha256")"
-        if [[ -n ${ret} && -n ${has_hash} && -z ${clean} ]]; then
+        if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
           echo "Reusing old kicad-i18n-${today}.src.sha256, already latest .rev" >&2
           grep -sm 1 "\"${pname}\"" -A 12 "${file}" | grep -sm 1 "i18n" -A 1
         else
           printf "%8si18n.rev =\t\t\"%s\";\n" "" "${i18n_rev}"
           printf "%8si18n.sha256 =\t\t\"%s\";\n" "" \
             "$(${prefetch} "${i18n_pre}${i18n_rev}")"
-          (( count++ ))
+          count=$((count+1))
         fi
 
           for lib in "${libs[@]}"; do
             echo "Checking ${lib}" >&2
             url="${github}-${lib}.git"
             lib_rev="$(${get_rev} "${url}" "${version}" | cut -f1)"
-            ret="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" -A 1)"
+            has_rev="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" || true)"
             has_hash="$(grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}.sha256")"
-            if [[ -n ${ret} && -n ${has_hash} && -z ${clean} ]]; then
+            if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
               echo "Reusing old kicad-${lib}-${today}.src.sha256, already latest .rev" >&2
               grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}" -A 1
             else
@@ -161,7 +162,7 @@ for version in "${all_versions[@]}"; do
               printf "\"%s\";\n" "${lib_rev}"
               printf "%8s%s.sha256 =\t\"%s\";\n" "" \
               "${lib}" "$(${prefetch} "${github}-${lib}/archive/${lib_rev}.tar.gz")"
-              (( count++ ))
+              count=$((count+1))
             fi
           done
         printf "%6s};\n" ""
@@ -175,6 +176,11 @@ done
 printf "}\n"
 } > "${tmp}"
 
+if grep '""' "${tmp}"; then
+	echo "empty value detected, out of space?" >&2
+	exit "1"
+fi
+
 mv "${tmp}" "${file}"
 
 printf "\nFinished\nMoved output to %s\n\n" "${file}" >&2
diff --git a/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix b/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
index 6b9a981a87c4..174532d69625 100644
--- a/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/kicad/versions.nix
@@ -27,25 +27,25 @@
   };
   "kicad-unstable" = {
     kicadVersion = {
-      version =			"2020-02-10";
+      version =			"2020-04-25";
       src = {
-        rev =			"1190e60dd426d246661e478db3287f266ec6cda2";
-        sha256 =		"0cgfad07j69cks97llj4hf3kga0d5qf728s89xwxrzcwm06k62bi";
+        rev =			"3759799d1e03b2da6a0dcd72273e4978880fc8f1";
+        sha256 =		"0ba14fla8m5zli68wfjkfc4ymvj4j8z92y3jigxs8hys0450bybi";
       };
     };
     libVersion = {
-      version =			"2020-02-10";
+      version =			"2020-04-25";
       libSources = {
-        i18n.rev =		"26786c4ca804bad7eb072f1ef381f00b5a2ff3ee";
-        i18n.sha256 =		"0iqr1xfw4s677afjy9bn5y41z4isp327f9y90wypkxiwwq3dfkfl";
-        symbols.rev =		"35b7da2d211d7cc036b37ad7f5e40ef03faa1bc7";
-        symbols.sha256 =	"0wbfw1swbfvfp47cn48pxpqlygjs3xh568ydrrs51v3w102x8y64";
-        templates.rev =		"0c0490897f803ab8b7c3dad438b7eb1f80e0417c";
-        templates.sha256 =	"0cs3bm3zb5ngw5ldn0lzw5bvqm4kvcidyrn76438alffwiz2b15g";
-        footprints.rev =	"9357b6f09312966c57fec9f66a516941d79c3038";
-        footprints.sha256 =	"0cgah1q0h012ffwfl220k7qb6hgbs0i91spq2j4v3lgpfr4g638d";
-        packages3d.rev =	"de368eb739abe41dfc3163e0e370477e857f9cc1";
-        packages3d.sha256 =	"0b3p5v8g24h6l7q3sbqz7ns0gnrf9l89glj86m5ybhizvls9vrrs";
+        i18n.rev =		"fc14baa52ca56a58b0048ab860bf31887d3cf8eb";
+        i18n.sha256 =		"05nayab7dkjyq7g3i9q7k55hcckpc0cmq4bbklmxx16rx4rbhzc6";
+        symbols.rev =		"0f9ff2d17237f90bb649bf0a52b6d454f68197e8";
+        symbols.sha256 =	"1a54428syn2xksc00n2bvh1alrx2vrqmp7cg7d2rn8nlq8yk4qd5";
+        templates.rev =		"7db8d4d0ea0711f1961d117853547fb3edbc3857";
+        templates.sha256 =	"1hppcsrkn4dk6ggby6ckh0q65qxkywrbyxa4lwpaf7pxjyv498xg";
+        footprints.rev =	"61df6d8853b4c68cca0ac87784c0a33cff9394d3";
+        footprints.sha256 =	"0blmhk8pwd4mi6rlsr4lf4lq7j01h6xbpbvr3pm8pmw8zylhi54v";
+        packages3d.rev =	"88bcf2e817fe000bb2c05e14489afc3b1a4e10ed";
+        packages3d.sha256 =	"0z9p1fn5xbz940kr5jz2ibzf09hpdi1c9izmabkffvrnfy6408x6";
       };
     };
   };
diff --git a/nixpkgs/pkgs/applications/science/electronics/librepcb/default.nix b/nixpkgs/pkgs/applications/science/electronics/librepcb/default.nix
index 7e0894fb337d..de01b095e381 100644
--- a/nixpkgs/pkgs/applications/science/electronics/librepcb/default.nix
+++ b/nixpkgs/pkgs/applications/science/electronics/librepcb/default.nix
@@ -2,14 +2,14 @@
 
 mkDerivation {
   pname = "librepcb";
-  version = "0.1.3";
+  version = "0.1.4";
 
   src = fetchFromGitHub {
     owner = "LibrePCB";
     repo = "LibrePCB";
     fetchSubmodules = true;
-    rev = "56bc60d347ff67df0fe1d57807d03f0606de557f";
-    sha256 = "0z6jn5zawp0x5i9zda7l787jnsv3yl8aqwnpii3g4hsnf2q3hhrh";
+    rev = "ae04eef5a71b5ba66ae2cee6b631c1c933ace535";
+    sha256 = "0wk5qny1jb6n4mwyyrs7syir3hmwxlwazcd80bpxharmsj7p0rzc";
   };
 
   enableParallelBuilding = true;
diff --git a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch
new file mode 100644
index 000000000000..1cef96ea1408
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch
@@ -0,0 +1,10 @@
+diff --git a/scripts/makedbh b/scripts/makedbh
+index 01e4fa5..d6299c6 100755
+--- a/scripts/makedbh
++++ b/scripts/makedbh
+@@ -1,4 +1,4 @@
+-#!/bin/csh -f
++#!/usr/bin/env tcsh
+ #
+ # makes the "database.h" (1st argument, $1) file from "database.h.in"
+ # (2nd argument, $2), setting various mask operation definitions
diff --git a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch
new file mode 100644
index 000000000000..37ae35195503
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch
@@ -0,0 +1,19 @@
+diff --git a/database/DBio.c b/database/DBio.c
+index 93c4b0b..292ea5f 100644
+--- a/database/DBio.c
++++ b/database/DBio.c
+@@ -2378,12 +2378,12 @@ DBCellWriteFile(cellDef, f)
+ 
+ #define FPRINTF(f,s)\
+ {\
+-     if (fprintf(f,s) == EOF) goto ioerror;\
++     if (fprintf(f,"%s",s) == EOF) goto ioerror;\
+      DBFileOffset += strlen(s);\
+ }
+ #define FPRINTR(f,s)\
+ {\
+-     if (fprintf(f,s) == EOF) return 1;\
++     if (fprintf(f,"%s",s) == EOF) return 1;\
+      DBFileOffset += strlen(s);\
+ }
+ 
diff --git a/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix
new file mode 100644
index 000000000000..62b830547e53
--- /dev/null
+++ b/nixpkgs/pkgs/applications/science/electronics/magic-vlsi/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, m4, tcsh, libX11, tcl, tk, cairo, ncurses, mesa_glu, python3 }:
+
+stdenv.mkDerivation {
+  pname = "magic-vlsi";
+  version = "8.3.5";
+
+  src = fetchurl {
+    url = "http://opencircuitdesign.com/magic/archive/magic-8.3.5.tgz";
+    sha256 = "0wv4zmxlqjfaakgp802icn0cd9f8ylkz2sppix83axq8p5cg90yq";
+  };
+
+  buildInputs = [ m4 tcsh libX11 tcl tk cairo ncurses mesa_glu ];
+  nativeBuildInputs = [ python3 ];
+
+  configureFlags = [
+    "--with-tcl=${tcl}"
+    "--with-tk=${tk}"
+    "--disable-werror"
+  ];
+
+  postPatch = ''
+    patchShebangs scripts/*
+  '';
+
+  patches = [
+    ./0001-strip-bin-prefix.patch
+    ./0002-fix-format-security.patch
+  ];
+
+  meta = with stdenv.lib; {
+    description = "VLSI layout tool written in Tcl";
+    homepage = "http://opencircuitdesign.com/magic/";
+    license = licenses.mit;
+    maintainers = [ maintainers.dkudriavtsev ];
+  };
+}