summaryrefslogtreecommitdiff
path: root/pkgs/build-support/fetchbzr (follow)
Commit message (Expand)AuthorAgeFilesLines
* treewide: load structured attributes in all bash builders consistently•••It's hard to put the sourcing of ./.attrs.sh into all builder consistently - mistakes will happen. Thus, load structured attrs once in make-derivation and then source the remaining builder on top. This should fix quite a few builders with structured attributes in principle. Most importantly it helps substitute / substituteAll, which are required for bootstrap on some platforms. Wolfgang Walther2024-12-291-3/+0
* build-support: fix nix-prefetch-* on macOS (#358685)Jörg Thalheim2024-12-131-1/+3
|\
| * build-support: Simplify tmpdir creation with coreutils•••macOS 10.12 doesn't have a usable --tmpdir flag on the builtin mktemp, but we can make use of coreutil's mktemp instead. Jonathan del Strother2024-11-251-1/+1
| * build-support: fix nix-prefetch-* on macOS•••Since nix 2.20, `nix-store --add-fixed` doesn't accept paths where the parent directory is a symlink. On macOS, /tmp is a symlink to /private/tmp, which causes a "'/tmp' is a symlink" error: ``` $ nix run github:nixos/nixpkgs/24.11-beta#nix-prefetch-git -- --url https://github.com/IFTTT/polo.git --rev 316aa2ac210a45a7fc400ab921831493d5dd21b8 --hash sha256 Initialized empty Git repository in /private/tmp/git-checkout-tmp-1Bf9bIv7/polo-316aa2a/.git/ remote: Enumerating objects: 51, done. remote: Counting objects: 100% (51/51), done. remote: Compressing objects: 100% (42/42), done. remote: Total 51 (delta 8), reused 19 (delta 5), pack-reused 0 (from 0) Unpacking objects: 100% (51/51), 19.57 KiB | 541.00 KiB/s, done. From https://github.com/IFTTT/polo * branch HEAD -> FETCH_HEAD Switched to a new branch 'fetchgit' removing `.git'... error: path '/tmp' is a symlink ``` Avoid this by resolving /tmp to a real directory in all the prefetch scripts Jonathan del Strother2024-11-251-1/+3
* | treewide: format all inactive Nix files•••After final improvements to the official formatter implementation, this commit now performs the first treewide reformat of Nix files using it. This is part of the implementation of RFC 166. Only "inactive" files are reformatted, meaning only files that aren't being touched by any PR with activity in the past 2 months. This is to avoid conflicts for PRs that might soon be merged. Later we can do a full treewide reformat to get the rest, which should not cause as many conflicts. A CI check has already been running for some time to ensure that new and already-formatted files are formatted, so the files being reformatted here should also stay formatted. This commit was automatically created and can be verified using nix-build https://github.com/infinisil/treewide-nixpkgs-reformat-script/archive/a08b3a4d199c6124ac5b36a889d9099b4383463f.tar.gz \ --argstr baseRev b32a0943687d2a5094a6d92f25a4b6e16a76b5b7 result/bin/apply-formatting $NIXPKGS_PATH Silvan Mosberger2024-12-101-2/+11
|/
* nix-prefetch-bzr: emit SRI hashes by defaultnicoo2024-09-171-1/+1
* fetchbzr: support `hash` attributenicoo2024-09-171-11/+12
* treewide: refactor `.attrs.sh` detection•••When specifying the `builder` attribute in `stdenv.mkDerivation`, this will be effectively transformed into builtins.derivation { builder = stdenv.shell; args = [ "-e" builder ]; } This also means that `default-builder.sh` is never sourced and as a result it's not guaranteed that `$NIX_ATTRS_SH_FILE` is set to a correct location[1]. Also, we need to source `.attrs.sh` to source `$stdenv`. So, the following is done now: * If `$NIX_ATTRS_SH_FILE` points to a correct location, then use it. Directly using `.attrs.sh` is problematic for `nix-shell(1)` usage (see previous commit for more context), so prefer the environment variable if possible. * Otherwise, if `.attrs.sh` exists, then use it. See [1] for when this can happen. * If neither applies, it can be assumed that `__structuredAttrs` is turned off and thus nothing needs to be done. [1] It's possible that it doesn't exist at all - in case of Nix 2.3 or it can point to a wrong location on older Nix versions with a bug in `__structuredAttrs`. Maximilian Bosch2023-10-041-1/+1
* fetchbzr: set cache directory to tmpdir•••Breezy >3.3 writes the connections information to a cache directory, which fails on sandbox. Mario Rodas2023-03-011-1/+1
* treewide: remove usages of header and stopNest•••they're obsolete Artturin2023-01-161-3/+1
* treewide: source .attrs in builders•••if theres a source $stdenv then this is needed for structuredAttrs Artturin2022-12-081-0/+1
* treewide: editorconfig fixes•••- remove trailing whitespace - use spaces for indentation zowoq2021-01-201-1/+1
* treewide: replace bazaar with breezyrnhmjoj2020-05-251-2/+2
* treewide: Fetchers should use `stdenvNoCC`.John Ericson2018-01-101-2/+2
* treewide: Fixed output fetch* derivations should use `nativeBuildInputs`John Ericson2018-01-091-1/+1
* fetchbzr: do not write logs to non-existing homeJoerg Thalheim2017-10-301-1/+1
* nix-prefetch-bzr: match path name to fetchbzr name•••fetchbzr always uses the derivation name `bzr-export`. nix-prefetch-bzr should use the same name for its output. This avoids duplicate downloads and problems with forbidden characters in bazaar repository names. Thomas Tuegel2015-12-191-2/+1
* build-support: Fix nix-prefetch-* on OS X.•••Fixes a regression on OS X introduced by f83af95. Don't use --tmpdir for mktemp, because that flag doesn't exist on OS X. However, using -t is deprecated in GNU coreutils, so as suggested by @ip1981 we're now using parameter expansion on ${TMPDIR:-/tmp} to provide /tmp as a fallback if TMPDIR is not set and use it instead. Also use this approach for nix-prefetch-cvs now in order to stay consistent. Reported-by: Vladimir Kirillov <proger@wilab.org.ua> Tested-by: Igor Pashev <pashev.igor@gmail.com> Signed-off-by: aszlig <aszlig@redmoonstudios.org> aszlig2014-08-271-1/+1
* build-support: Use mktemp -d in nix-prefetch-*.•••Instead of relying on $$ to not collide with an existing path. Quoting the Bash manual about $$: > Expands to the process ID of the shell. In a () subshell, it expands > to the process ID of the current shell, not the subshell. So, this is different from $BASHPID: > Expands to the process ID of the current bash process. This differs > from $$ under certain circumstances, such as subshells that do not > require bash to be re-initialized. But even $BASHPID is prone to race conditions if the process IDs wrap around, so to be on the safe side, we're using mktemp here. Closes #3784. Signed-off-by: aszlig <aszlig@redmoonstudios.org> aszlig2014-08-251-4/+3
* fetchbzr, fetchdarcs, fetchhg: use `rev` attr•••This makes it match the behaviour of fetchgit and fetchsvn, so it's easier to write scripts that support all of them. Benno Fünfstück2014-06-282-4/+4
* nix-prefetch-{bzr,hg,svn}: print fetched revisionBenno Fünfstück2014-06-111-0/+2
* - fetchbzr and nix-prefetch-bzr now only export, instead of cloning•••- The option for cloning in nix-prefetch-bzr is removed - ssl certificates are now ignored by fetchbzr This means that no .bzr directory is downloaded. Without this change, the hash of the result is unpredictable, probably because of timestamping in the .bzr directory. Currently, the only package using fetchbzr is kicad. Michael Ashton2013-03-312-7/+2
* added nix-prefetch-bzr•••svn path=/nixpkgs/trunk/; revision=25806 Rob Vermaas2011-02-081-0/+79
* Add `fetchbzr', to retrieve remote Bazaar repositories.•••svn path=/nixpkgs/trunk/; revision=12924 Ludovic Courtès2008-09-262-0/+24