about summary refs log tree commit diff
path: root/pkgs/applications/editors/quartus-prime
AgeCommit message (Collapse)AuthorFilesLines
2024-05-11quartus-prime-lite: use exec to avoid one needless processBjørn Forsman1-1/+1
2024-05-11quartus-prime-lite: add version, metaBjørn Forsman1-0/+3
Reference version and meta from the unwrapped derivation in the wrapped/FHS derivation.
2024-05-11quartus-prime-lite: name -> pnameBjørn Forsman1-2/+2
Modernizing.
2024-04-29quartus-prime-lite: add extraProfile parameterBjørn Forsman1-1/+2
For customizing /etc/profile in the FHS env.
2024-04-10quartus-prime-lite: add option to disable Questa simulatorThomas Watson2-17/+20
Saves ~5GB of closure size and eliminates dependency on 32 bit libraries.
2024-04-10quartus-prime-lite: make usable under emulationThomas Watson2-2/+12
2024-04-10quartus-prime-lite: add more qsys requirementsThomas Watson1-0/+2
Needed on certain systems and for certain SoC designs.
2024-01-11quartus-prime-lite: 22.1std.2.922 -> 23.1std.0.991Stephane1-11/+11
2024-01-11quartus-prime-lite: add a testBjørn Forsman1-0/+31
Test that the wrapped quartus can build a SOF file.
2023-12-30quartus-prime-lite: 20.1.1.720 -> 22.1std.2.922Stephane2-29/+34
2023-11-19quartus-prime-lite: fix loading of libudev.so.0Thomas Watson1-3/+2
Loading without a path was broken by nixpkgs commit e2d06c56951459ab3aebfb40c366ab635a021366. Fortunately we don't want libudev.so.0 in modelsim now anyway which was the reason for loading by name only, so we move it back to being 64-bit only and load it by absolute path.
2023-11-15quartus-prime-lite: expose all modelsim programsBjørn Forsman1-2/+1
Just because nixpkgs can split upstream packages and hide certain programs doesn't mean we should. Upstream documents that users should add the ModelSim bin/ path to $PATH: https://www.intel.com/content/www/us/en/docs/programmable/683200/1-2-1-and-2-0-1/setting-up-the-environment.html This answers the comment "Should we install all executables?" -- yes.
2023-10-13quartus-prime-lite: use runtimeShell in wrappersBjørn Forsman1-2/+2
stdenv.shell is a shell for building, runtimeShell is for running, so the latter should be used in wrappers. (The distinction only matters when cross-compiling.)
2023-10-13quartus-prime-lite: test building encrypted device modelBjørn Forsman1-1/+10
Prevent regressions.
2023-10-13quartus-prime-lite: modelsim: fix compiling encrypted device modelsBjørn Forsman1-6/+18
LD_PRELOADing libudev breaks compiling encrypted device models in ModelSim, so only use LD_PRELOAD for non-ModelSim wrappers. Before: $ "$(NIXPKGS_ALLOW_UNFREE=1 nix-build -A quartus-prime-lite)/bin/vlog" "$(NIXPKGS_ALLOW_UNFREE=1 nix-build -A quartus-prime-lite.unwrapped)/modelsim_ase/altera/verilog/src/arriav_atoms_ncrypt.v" [...] ** Error: /nix/store/szcr2q24izqvhz7ybalar43y5xdg172a-quartus-prime-lite-unwrapped-20.1.1.720/modelsim_ase/altera/verilog/src/arriav_atoms_ncrypt.v(38): (vlog-2163) Macro `<protected> is undefined. ** Error: /nix/store/szcr2q24izqvhz7ybalar43y5xdg172a-quartus-prime-lite-unwrapped-20.1.1.720/modelsim_ase/altera/verilog/src/arriav_atoms_ncrypt.v(38): (vlog-2163) Macro `<protected> is undefined. ** Error: (vlog-13069) /nix/store/szcr2q24izqvhz7ybalar43y5xdg172a-quartus-prime-lite-unwrapped-20.1.1.720/modelsim_ase/altera/verilog/src/arriav_atoms_ncrypt.v(38): syntax error in protected region. [...] Errors: 4, Warnings: 0 After: $ "$(NIXPKGS_ALLOW_UNFREE=1 nix-build -A quartus-prime-lite)/bin/vlog" "$(NIXPKGS_ALLOW_UNFREE=1 nix-build -A quartus-prime-lite.unwrapped)/modelsim_ase/altera/verilog/src/arriav_atoms_ncrypt.v" [...] Errors: 0, Warnings: 0
2023-10-13quartus-prime-lite: move passthru towards endBjørn Forsman1-2/+2
Coding style.
2023-10-13quartus-prime-lite: buildFHSEnvChroot -> buildFHSEnvBjørn Forsman1-2/+6
The former is deprecated. The latter is implemented with buildFHSEnvBubblewrap. The reason this package was switched to buildFHSEnvChroot in the first place[1] is fixed by passing `multiArch = true` (which brings e.g. 32-bit dynamic loader /lib/ld-linux.so.2). [1] Commit cae417d315dd27 ("quartus-prime: use buildFHSEnvChroot")
2023-10-13quartus-prime-lite: don't overwrite LD_PRELOADBjørn Forsman1-1/+1
Instead, merge the user provided LD_PRELOAD environment variable with the hardcoded libudev.so.1 entry. User provided libs are loaded first.
2023-10-13quartus-prime-lite: eliminate two unneeded execve syscallsBjørn Forsman1-2/+5
* Set LD_PRELOAD in the profile snippet to eliminate one execve() for `env`. * Set runScript to "" to eliminate one execve() for bash.
2023-10-13quartus-prime-lite: expose all of quartus/bin/*Bjørn Forsman1-2/+1
* Upstream recommends it (adding $QUARTUS_ROOTDIR/bin to $PATH). * It's cool that nixpkgs *can* do these tricks (only expose a subset of programs), but in this case I don't think it's a good idea. For example, before this change I was missing the `jtagconfig` program. * This increases the number of programs in .../bin from 29 to 80.
2023-10-13quartus-prime-lite: add vcom, vdel, vmapBjørn Forsman1-1/+1
These are useful for Modelsim scripting.
2023-10-13quartus-prime-lite: add lmutilBjørn Forsman1-0/+1
It's tool to check the validity of licenses, and vsim suggests running it when it has issues validating a license. (At least in Quartus 22.1.2.)
2023-10-13quartus-prime-lite: add /lib/ld-lsb*.so.3 dynamic loaders to FHS envBjørn Forsman1-0/+5
(In preparation for adding lmutil.) Quartus is a mix of 32- and 64-bit programs, and these "lsb" loaders are required by some of the unwrapped binaries: $ find /nix/store/HASH-quartus-prime-lite-unwrapped-20.1.1.720 -type f -executable | xargs -n1 patchelf --print-interpreter |& grep "ld-lsb" | sort -u /lib64/ld-lsb-x86-64.so.3 /lib/ld-lsb.so.3
2023-10-13quartus-prime-lite: list progs to wrap in sh instead of NixBjørn Forsman1-21/+19
This opens up for using sh globbing (and possibly wrapping *all* programs), something which is not possible when the program list is coded in Nix.
2023-10-13quartus-prime-lite: lower case local shell variablesBjørn Forsman1-6/+6
Upper case shell variables are generally for internal variables (SHELL, BASH_VERSION) or environment variables (PAGER, EDITOR). Other variables should be lower case.
2023-10-13quartus-prime-lite: run mkdir as neededBjørn Forsman1-1/+1
Instead of maintaining both a list of executables to wrap and their directory names, extract the directory names from the executables and run mkdir as needed. Keep DRY.
2023-04-16quartus-prime: use buildFHSEnvChrootAtemu1-2/+2
Does not work with bubblewrap for some reason
2023-04-16quartus-prime: use libxcrypt-legacyAtemu1-1/+1
Needs libxcrypt.so.1
2023-04-16tree-wide: buildFHSUserEnv -> buildFHSEnvAtemu1-2/+2
2023-01-05quartus-prime-lite: add missing libcrypt.so.1Matheus Vieira1-0/+1
2022-08-31quartus-prime-lite: cleanupThomas Watson2-11/+15
Fixes a few issues, listed below. Intel's website redesign broke the requireFile link, but fortunately files can now be downloaded without a user account. The derivation is modified to remove requireFile and download directly instead. Issues with quoting command line arguments are corrected. An issue causing crashes when running in containers is worked around with LD_PRELOAD. The meta.platforms attribute is corrected to the supported processors.
2022-06-23treewide/applications: add `sourceType` `binaryNativeCode` for many packagesRobert Scott1-0/+1
2022-02-25treewide: switch all desktop file generators to new APIK9001-1/+1
Notably: - remove explicit arguments that match the defaults - convert everything to the right Nix types
2022-02-10quartus-prime: add missing libudev0 dependencyJoão Capucho1-0/+1
2021-05-30quartus: formatting fixes from reviewKai Wohlfahrt2-9/+11
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-05-29quartus: 20.1 -> 20.1.1Kai Wohlfahrt1-9/+9
2021-05-29quartus: split out unwrapped packageKai Wohlfahrt2-100/+102
This allows customizing the install process for the unwrapped process, as proposed in #123469, without introducing top-level support for untested modifications. The PR could then be straightforwardly implemented as an overlay, that does: quartus-prime-lite = super.quartus-prime-lite.override { unwrapped = quartus-prime-lite.unwrapped.overrideAttrs (o: { buildCommand = o.buildCommand + '' rm -r $out/nios2eds/bin/gnu find $out/modelsim_ase/altera/{verilog,vhdl}/* ! -name src ! -path '*twentynm*' -delete ''; }); };
2021-01-19quartus-prime-lite: remove hydraPlatformsJonathan Ringer1-0/+1
2020-07-02quartus-prime-lite: 19.1 -> 20.1Kai Wohlfahrt2-23/+9
2020-03-24quartus: Export sub-commandsKai Wohlfahrt1-19/+52
buildFHSUserEnv does not currently support multiple binaries, so doing this manually with wrappers. Pass through original quartus derivation for debugging/overriding
2020-03-23quartus: support more devicesKai Wohlfahrt1-12/+40
2020-01-15quartus: init at 19.1.0.670Kai Wohlfahrt2-0/+130
This requires a FHSUserEnv because the licensing executable checksums itself (I think). The override of libpng is a bit ugly, can this be cleaned up?