!zghijEASpYQWYFzriI:nixos.org

Hydra

385 Members
109 Servers

Load older messages


SenderMessageTime
17 Aug 2022
@linus:schreibt.jetzt@linus:schreibt.jetztYou can also combine the impure path with a system feature which is required by the derivations, so people (and hydra) don't "accidentally" try to build them on a system that doesn't have the toolchain set up appropriately10:25:51
@linus:schreibt.jetzt@linus:schreibt.jetztAnd with impure-paths you can literally use a binary cache as opposed to just binary-cache style ;)10:26:18
@leons:is.currently.online@leons:is.currently.onlineHm, that does indeed sound like a rather elegant solution. Forces users to install the toolchains to a fixed path though, if they want to obtain the (input-hash) identical derivations though, right?10:27:04
@linus:schreibt.jetzt@linus:schreibt.jetztNo, if they use the binary cache they can get them from there10:27:29
@linus:schreibt.jetzt@linus:schreibt.jetzt(but yes if they want to build them locally)10:27:41
@leons:is.currently.online@leons:is.currently.onlineThanks for this advice! I'll see how I can make it work :D10:29:52
@enemycube:matrix.orgenemycube joined the room.17:03:16
@bradbqc1:matrix.orgBrad Bondurant joined the room.17:25:07
@bradbqc1:matrix.orgBrad Bondurant +1 for extra-sandbox-paths, also check out buildFHSUserEnv for running binaries that expect FHS paths to be present. Here's an example environment for Vivado https://git.m-labs.hk/M-Labs/nix-scripts/src/branch/master/artiq-fast/vivado.nix 17:31:01
@bradbqc1:matrix.orgBrad Bondurant Also, has anyone figured out a good way to do proper CI/CD with Hydra using flakes? I have several repositories, each with their own flake, and then a central flake that pulls them in and defines the hydraJobs. With legacy builds it was easy - just specify a repository as an input, and as long as the revision isn't pinned then any new commits will trigger a build. In addition to the restrictive lock flags Hydra uses (https://github.com/NixOS/hydra/issues/1160), it seems that flake support is just... bad. e.g. flake inputs aren't even recorded in Hydra's DB. I've been working on patches to Hydra to allow "unlocked" flakes, but that's a good chunk of work and I'm wondering if I can hack something else together more easily. 17:38:11
@bradbqc1:matrix.orgBrad Bondurant One idea I've had is to have a separate jobset that just does something like a nix flake update and copies the flake.nix and flake.lock to the output, and then use that flake as the input for the real jobset, but I'm not sure if that's doable 17:40:03
@bradbqc1:matrix.orgBrad BondurantAnd the absolute hackiest idea I've had is to put the flake in a local file on the server and make a cron job that updates it periodically17:42:07
@casey:hubns.netcransomi don't know if i'm up to date with all the methods, but i think the current general practice was something like your cron job - another task that runs nix flake update, commits, and pushes.17:44:50
@bradbqc1:matrix.orgBrad Bondurantthat's a bummer :/ talk about a messy git history17:47:57
@greaka:greaka.degreaka joined the room.20:18:07
@denna:matrix.org@denna:matrix.org joined the room.22:09:00
18 Aug 2022
@florian:web3.foundationFlorian | W3F changed their profile picture.09:20:15
@grahamc:nixos.org@grahamc:nixos.org Brad Bondurant: we made this a bit ago to make that easier, maybe it'll help you: https://github.com/DeterminateSystems/update-flake-lock 15:15:19
@bradbqc1:matrix.orgBrad Bondurant grahamc (he/him): Thank you! Funnily enough I had just settled on a very similar solution (my repos are on GitLab) and this'll be a great reference to have! 15:37:23
@bradbqc1:matrix.orgBrad Bondurant
In reply to @bradbqc1:matrix.org
+1 for extra-sandbox-paths, also check out buildFHSUserEnv for running binaries that expect FHS paths to be present. Here's an example environment for Vivado https://git.m-labs.hk/M-Labs/nix-scripts/src/branch/master/artiq-fast/vivado.nix
Leon: just wanted to make sure you see this since I suspect there's a good chance you're using Vivado and there are other nix files in this repo that do exactly what it sounds like you're trying to do -- they build the bitstreams using Vivado and then publish them in a binary cache which users can then pull from without needing any Vivado stuff
15:42:19
@leons:is.currently.online@leons:is.currently.online Brad Bondurant: that's a pretty good pointer, thanks! 15:43:38
@leons:is.currently.online@leons:is.currently.onlineIn case you care, this is my Vivado package currently: https://git.sr.ht/~lschuermann/nix-litex/tree/main/item/pkgs/vivado/vivado-2020_1.nix15:44:42
@leons:is.currently.online@leons:is.currently.onlineIt's been working well for me, and has less quirks that one might think, but yeah it's a slight hassle to get the installer into the Nix store and has the redistribution / cache issues where you really don't want Xilinx to get angry at you for mirroring their software :)15:46:09
@bradbqc1:matrix.orgBrad Bondurant Oh wow, you wrote a whole derivation for Vivado -- impressive lol. We just use the FHS environment to run the provided installer (and resulting binaries) and then extra-sandbox-paths to make it usable from within a build 15:48:50
@leons:is.currently.online@leons:is.currently.onlineYeah, that is indeed much saner, but spending 2 days running the Vivado installer in a Nix derivation until it works tracks for me :D it's originally based on https://github.com/lukaslaobeyer/nix-fpgapkgs15:55:11
@leons:is.currently.online@leons:is.currently.online * Yeah, that is indeed much saner, but spending 2 days running the Vivado installer in a Nix derivation until it works tracks for me :D it's originally based on https://github.com/lukaslaobeyer/nix-fpgapkgs (Brad Bondurant this isn't really on topic for Hydra anymore, sent you a DM) 15:56:31
@rimuru:gentoo.chat@rimuru:gentoo.chat changed their profile picture.16:51:22
19 Aug 2022
@kayla.fire:matrix.orgkayla (she/they) changed their display name from kayla.fire to kayla (she/they).01:39:48
@k900:0upti.meK900
In reply to @k900:0upti.me
OK whomst do I poke here to get https://github.com/NixOS/hydra/pull/1243 merged
Bump again :
08:38:07
@k900:0upti.meK900
In reply to @k900:0upti.me
OK whomst do I poke here to get https://github.com/NixOS/hydra/pull/1243 merged
* Bump again :P
08:38:08

Show newer messages


Back to Room ListRoom Version: 6