Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
I'd like to reduce the number of Github notifications and
review requests I receive.
|
|
|
|
|
|
We can use use `stdenv.hostPlatform.isStatic` instead, and move the
logic per package. The least opionated benefit of this is that it makes
it much easier to replace packages with modified ones, as there is no
longer any issue of overlay order.
CC @FRidh @matthewbauer
|
|
|
|
This adds a warning to the top of each “boot” package that reads:
Note: this package is used for bootstrapping fetchurl, and thus cannot
use fetchpatch! All mutable patches (generated by GitHub or cgit) that
are needed here should be included directly in Nixpkgs as files.
This makes it clear to maintainer that they may need to treat this
package a little differently than others. Importantly, we can’t use
fetchpatch here due to using <nix/fetchurl.nix>. To avoid having stale
hashes, we need to include patches that are subject to changing
overtime (for instance, gitweb’s patches contain a version number at
the bottom).
|
|
tarballs.nixos.org is omitted from the change because urls from there
are always hashed and checked
|
|
|
|
|
|
|
|
this should always work, even on android / iOS toolchains
|
|
* treewide: remove unused variables
* making ofborg happy
|
|
|
|
We don’t have full C++ support for things like threads or exceptions.
|
|
|
|
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
|
|
|
|
|
|
The prebuilt was previously broken in building GMP. We add a
--disable-assembly flag to put get GMP to avoid pulling in assembly
stuff that breaks.
/cc @ericson2314
|
|
The user's choice is still always respected
|
|
Following legacy packing conventions, `isArm` was defined just for
32-bit ARM instruction set. This is confusing to non packagers though,
because Aarch64 is an ARM instruction set.
The official ARM overview for ARMv8[1] is surprisingly not confusing,
given the overall state of affairs for ARM naming conventions, and
offers us a solution. It divides the nomenclature into three levels:
```
ISA: ARMv8 {-A, -R, -M}
/ \
Mode: Aarch32 Aarch64
| / \
Encoding: A64 A32 T32
```
At the top is the overall v8 instruction set archicture. Second are the
two modes, defined by bitwidth but differing in other semantics too, and
buttom are the encodings, (hopefully?) isomorphic if they encode the
same mode.
The 32 bit encodings are mostly backwards compatible with previous
non-Thumb and Thumb encodings, and if so we can pun the mode names to
instead mean "sets of compatable or isomorphic encodings", and then
voilà we have nice names for 32-bit and 64-bit arm instruction sets
which do not use the word ARM so as to not confused either laymen or
experienced ARM packages.
[1]: https://developer.arm.com/products/architecture/a-profile
|
|
In anticipation of what I outline in #33599, I only simplify exactly those
`doCheck`s which are equal to `hostPlatform != buildPlatform`. I also stick a
comment next to them so I can grep for them later.
|
|
|
|
Bootstrap tools has since been bumped
|
|
Homepage link "http://.../" is a permanent redirect to "https://.../" and should be updated
https://repology.org/repository/nix_stable/problems
|
|
* pkgs: refactor needless quoting of homepage meta attribute
A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.
* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit
* Fixed some instances
|
|
|
|
|
|
The old forms presumably predates, or were made in ignorance of,
`let inherit`. This way is better style as the scoping as more lexical,
something which Nix can (or might already!) take advantage of.
|
|
Keep all versions consistent so that e.g. 'gmp.dev' is always available,
regardless of version.
|
|
Make either 'bin' or 'out' the first output.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The following parameters are now available:
* hardeningDisable
To disable specific hardening flags
* hardeningEnable
To enable specific hardening flags
Only the cc-wrapper supports this right now, but these may be reused by
other wrappers, builders or setup hooks.
cc-wrapper supports the following flags:
* fortify
* stackprotector
* pie (disabled by default)
* pic
* strictoverflow
* format
* relro
* bindnow
|
|
|
|
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
|
|
|
|
Referrers should have been fixed in previous commits already.
|
|
|
|
Many non-conflict problems weren't (fully) resolved in this commit yet.
|
|
|
|
The config.guess script tries to detect various ARM optimization flags
via /proc/cpuinfo. This is not only impure, but the detection is also
broken on multicore machines; on my quad-core system the machine type is
autodetected as 'neon neon neon neon-unknown-linux-gnueabihf':
checking build system type... Invalid configuration `neon': machine `neon' not recognized
configure: error: /nix/store/bafimhdj1yaxj6m1hvq7wvhwwizc939x-bootstrap-tools/bin/sh ./config.sub neon
neon
neon
neon-unknown-linux-gnueabihf failed
builder for ‘/nix/store/1npm2358bpvclj5w7fqjjwg72vbb0d79-gmp-6.0.0a.drv’ failed with exit code 1
Override the system type with the output of GNU config.guess to avoid
the autodetection.
|