Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: aaf4dddc1d55
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 3dbe656a25fe
Choose a head ref
  • 4 commits
  • 5 files changed
  • 1 contributor

Commits on Jan 3, 2021

  1. yosys: 0.9+3715 -> 0.9+3803

    Signed-off-by: Austin Seipp <aseipp@pobox.com>
    thoughtpolice committed Jan 3, 2021

    Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    thoughtpolice Austin Seipp
    Copy the full SHA
    57f6640 View commit details
  2. icestorm: 2020.08.19 -> 2020.12.04

    Adds I2C/SPI support for iCE40 u4k devices (iCE5LP4K?)
    
    PyPy3 is apparently broken for now in the wake of the gcc/glibc upgrade,
    so just skip it for now.
    
    Signed-off-by: Austin Seipp <aseipp@pobox.com>
    thoughtpolice committed Jan 3, 2021

    Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    thoughtpolice Austin Seipp
    Copy the full SHA
    9a3b4e1 View commit details
  3. trellis: 2020.11.25 -> 2021.01.02

    Signed-off-by: Austin Seipp <aseipp@pobox.com>
    thoughtpolice committed Jan 3, 2021

    Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    thoughtpolice Austin Seipp
    Copy the full SHA
    b7c5fe8 View commit details
  4. nextpnr: 2020.12.01 -> 2021.01.02, bugfixes, no GUI by default

    Upstream NextPNR has moved to disable the GUI by default; it tends to
    cause the most complications/bug reports and has various complexities
    and failure modes (e.g. I've still had problems getting it working
    efficiently on my Ice Lake laptop.)
    
    Instead, disable GUI support by default, and add a new `nextpnrWithGui`
    derivation that enables it. This cuts the closure size down by 40ish
    percent (~800MB -> ~500MB) and makes it a neglibile amount faster.
    
    It also fixes two bugs:
    
      1) We were using the old `ICEBOX_ROOT` parameter for ice40 support,
         now known as `ICESTORM_ICE40_PREFIX`, and
    
      2) the CMake option `SERIALIZE_CHIPDB` was renamed to `..._CHIPDBS`
         (with an 'S' suffix) which should speed up the build at the cost
         of RAM usage
    
    Signed-off-by: Austin Seipp <aseipp@pobox.com>
    thoughtpolice committed Jan 3, 2021

    Verified

    This commit was signed with the committer’s verified signature. The key has expired.
    thoughtpolice Austin Seipp
    Copy the full SHA
    3dbe656 View commit details
18 changes: 9 additions & 9 deletions pkgs/development/compilers/nextpnr/default.nix
Original file line number Diff line number Diff line change
@@ -3,9 +3,9 @@
, icestorm, trellis
, llvmPackages

, enableGui ? true
, wrapQtAppsHook
, qtbase
, enableGui ? false
, wrapQtAppsHook ? null
, qtbase ? null
, OpenGL ? null
}:

@@ -14,14 +14,14 @@ let
in
with stdenv; mkDerivation rec {
pname = "nextpnr";
version = "2020.12.01";
version = "2021.01.02";

srcs = [
(fetchFromGitHub {
owner = "YosysHQ";
repo = "nextpnr";
rev = "868902fbdf0b476bdccf4d25cbb80ba602d2cc11";
sha256 = "1kb5lhixb7f4q800gjyw9xm9ff1yaq3pgna17f5f0bw6b4ds56zc";
rev = "9b9628047c01a970cfe20f83f2b7129ed109440d";
sha256 = "0pcv96d0n40h2ipywi909hpzlys5b6r4pamc320qk1xxhppmgkmm";
name = "nextpnr";
})
(fetchFromGitHub {
@@ -48,14 +48,14 @@ with stdenv; mkDerivation rec {
[ "-DCURRENT_GIT_VERSION=${lib.substring 0 7 (lib.elemAt srcs 0).rev}"
"-DARCH=generic;ice40;ecp5"
"-DBUILD_TESTS=ON"
"-DICEBOX_ROOT=${icestorm}/share/icebox"
"-DICESTORM_INSTALL_PREFIX=${icestorm}"
"-DTRELLIS_INSTALL_PREFIX=${trellis}"
"-DTRELLIS_LIBDIR=${trellis}/lib/trellis"
"-DUSE_OPENMP=ON"
# warning: high RAM usage
"-DSERIALIZE_CHIPDB=OFF"
"-DSERIALIZE_CHIPDBS=OFF"
]
++ (lib.optional (!enableGui) "-DBUILD_GUI=OFF")
++ (lib.optional enableGui "-DBUILD_GUI=ON")
++ (lib.optional (enableGui && stdenv.isDarwin)
"-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks");

6 changes: 3 additions & 3 deletions pkgs/development/compilers/yosys/default.nix
Original file line number Diff line number Diff line change
@@ -33,13 +33,13 @@

stdenv.mkDerivation rec {
pname = "yosys";
version = "0.9+3715";
version = "0.9+3830";

src = fetchFromGitHub {
owner = "YosysHQ";
repo = "yosys";
rev = "d021f4b4003bb7a374038134c65edd3f67473a92";
sha256 = "0dgdpigqg8mwkry4233p6z6myjnrb1rq32873yhdfwvwqq230x51";
rev = "b72c29465392c8d260ddf55def169438f7fb64b2";
sha256 = "12h3pgj8bjb254q2qaafc3qxwhqdqrx0sxjhgjrfy8cmkdm92dvy";
};

enableParallelBuilding = true;
20 changes: 12 additions & 8 deletions pkgs/development/tools/icestorm/default.nix
Original file line number Diff line number Diff line change
@@ -2,27 +2,31 @@
, pkgconfig, libftdi1
, python3, pypy3

# PyPy yields large improvements in build time and runtime performance,
# and IceStorm isn't intended to be used as a library other than by the
# nextpnr build process (which is also sped up by using PyPy), so we
# use it by default. See 18839e1 for more details.
# PyPy yields large improvements in build time and runtime performance, and
# IceStorm isn't intended to be used as a library other than by the nextpnr
# build process (which is also sped up by using PyPy), so we use it by default.
# See 18839e1 for more details.
#
# FIXME(aseipp, 3/1/2021): pypy seems a bit busted since stdenv upgrade to gcc
# 10/binutils 2.34, so short-circuit this for now in passthru below (done so
# that downstream overrides can't re-enable pypy and break their build somehow)
, usePyPy ? stdenv.hostPlatform.system == "x86_64-linux"
}:

stdenv.mkDerivation rec {
pname = "icestorm";
version = "2020.08.19";
version = "2020.12.04";

passthru = rec {
pythonPkg = if usePyPy then pypy3 else python3;
pythonPkg = if (false && usePyPy) then pypy3 else python3;
pythonInterp = pythonPkg.interpreter;
};

src = fetchFromGitHub {
owner = "YosysHQ";
repo = "icestorm";
rev = "da52117ccd5b4147f64dc7345357ec5439cd7543";
sha256 = "072bl3vmvb06ry0ci3b1sfjpm3iigb874khzja4azcai969ybp4k";
rev = "7afc64b480212c9ac2ce7cb1622731a69a7d212c";
sha256 = "0vxhqs2fampglg3xlfwb35229iv96kvlwp1gyxrdrmlpznhkqdrk";
};

nativeBuildInputs = [ pkgconfig ];
8 changes: 4 additions & 4 deletions pkgs/development/tools/trellis/default.nix
Original file line number Diff line number Diff line change
@@ -5,18 +5,18 @@

stdenv.mkDerivation rec {
pname = "trellis";
version = "2020.11.25";
version = "2021.01.02";

# git describe --tags
realVersion = with stdenv.lib; with builtins;
"1.0-476-g${substring 0 7 (elemAt srcs 0).rev}";
"1.0-482-g${substring 0 7 (elemAt srcs 0).rev}";

srcs = [
(fetchFromGitHub {
owner = "SymbiFlow";
repo = "prjtrellis";
rev = "a441cd9d0390648e96bf27096626eb2c904096de";
sha256 = "1rsck44n4mf9v3vfac51ksrhcs84s7q297nq1kjkzzvmsx09gd9k";
rev = "60c05b3f4e71fd78d4fba5c31f9974694245199e";
sha256 = "1k37mxwxv9fpm6xnrxlqqap7zqh2dvgqncphj3asi2rz0kh07ppf";
name = "trellis";
})

5 changes: 4 additions & 1 deletion pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
@@ -10076,7 +10076,10 @@ in

neko = callPackage ../development/compilers/neko { };

nextpnr = libsForQt5.callPackage ../development/compilers/nextpnr {
nextpnr = callPackage ../development/compilers/nextpnr { };

nextpnrWithGui = libsForQt5.callPackage ../development/compilers/nextpnr {
enableGui = true;
inherit (darwin.apple_sdk.frameworks) OpenGL;
};