!SgYlXivkogarTVcnZO:nixos.org

Nix Flakes

895 Members
182 Servers

Load older messages


SenderMessageTime
3 Jul 2023
@joe:sigwinch.ukJoe Harrison joined the room.10:34:26
6 Jul 2023
@bitzoom:matrix.orgbitzoom joined the room.18:14:40
7 Jul 2023
@penguincoder:matrix.wolfie.pw@penguincoder:matrix.wolfie.pw joined the room.15:41:06
@penguincoder:matrix.wolfie.pw@penguincoder:matrix.wolfie.pw

Does anyone have an example for a multiple-project flake.nix (aka microservices) example? I have one repo that boots the entire stack and then each project has their own build requirements. Can/should I use a single flake.nix (and lockfile) so that the entire stack moves forward at the same time or should I separate them all out so that each can move independently?

I haven't found a good example so far.

15:42:55
@roberthensing:matrix.orgRobert Hensing (roberth) If you like to keep your system clean, here's a NixOS PR to disable nix-channel: https://github.com/NixOS/nixpkgs/pull/242098 17:10:00
8 Jul 2023
@sandro:supersandro.deSandro 🐧
In reply to @penguincoder:matrix.wolfie.pw

Does anyone have an example for a multiple-project flake.nix (aka microservices) example? I have one repo that boots the entire stack and then each project has their own build requirements. Can/should I use a single flake.nix (and lockfile) so that the entire stack moves forward at the same time or should I separate them all out so that each can move independently?

I haven't found a good example so far.

flake.nix are expected to be always at the repo root
12:44:34
@penguincoder:matrix.wolfie.pw@penguincoder:matrix.wolfie.pwThat makes sense. What about the lock file? Is there any good way to have one repo track the same revision of nixpkgs in another repo? If I can do that, I think I can make the rest work perfectly.13:41:48
@dariof4:matrix.orgdariof4
In reply to @penguincoder:matrix.wolfie.pw
That makes sense. What about the lock file? Is there any good way to have one repo track the same revision of nixpkgs in another repo? If I can do that, I think I can make the rest work perfectly.
I'm not exactly sure what you want to do, but maybe inputs.nixpkgs.follows would help https://nixos.wiki/wiki/Flakes#Input_schema
13:59:13
9 Jul 2023
@enzime:nixos.devEnzime left the room.10:53:59
10 Jul 2023
@poweruser64:matrix.orgPowerUser64 Is there a way to satisfy dlopen() when running cmake from inside a mkShell? I'm making a flake for developing bespoke synth (flake code here), but one of core the libraries it uses (JUCE) likes to dlopen things sometimes, which is problematic when running on NixOS or when trying to run in a reproducible manner, like on a non-NixOS system that happens to have the libs in their expected locations. 06:17:37
@poweruser64:matrix.orgPowerUser64 My current build process is to cd to the directory (using direnv to get all needed packages), then run the build script created by writeScriptBin 06:19:06
@poweruser64:matrix.orgPowerUser64which runs cmake and such06:19:23
@2xsaiko:tchncs.de@2xsaiko:tchncs.de PowerUser64: usually I think you'd patch dlopen calls to point to absolute paths (if the library path is known at build time) or looked up relative to environment variables, like for example QT_PLUGIN_PATH. Ask in the #nix:nixos.org channel though, I think that's the better place to ask for how to do this 14:38:24
@petrichor:envs.net@petrichor:envs.net joined the room.15:51:50
@petrichor:envs.net@petrichor:envs.netsince gitea archive api is compatible with github's is it possible to use a gitea repository as a flake input and have it use the same "fetch an archive" optimisation that's used for github?15:53:34
@petrichor:envs.net@petrichor:envs.netor do i need to use "git+https://gitea.example.com/user/repo"?15:54:25
@petrichor:envs.net@petrichor:envs.net

ah, just looking at https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-references

looks like github and sourcehut supported, but i guess i could use the tarball type for gitea/forgejo for now

15:57:36
@2xsaiko:tchncs.de@2xsaiko:tchncs.deis there a good way to use flakes with the pijul VCS? I'd love to try out pijul because it seems like it improves upon git in a lot of ways, but the lack of flake support is the main reason why I've held off for now16:22:19
@petrichor:envs.net@petrichor:envs.net
In reply to @petrichor:envs.net

ah, just looking at https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#flake-references

looks like github and sourcehut supported, but i guess i could use the tarball type for gitea/forgejo for now

fwiw, it was as simple as:

url = "https://<host>/api/v1/repos/<user>/<repo>/archive/<ref>.tar.gz";
18:50:38
@petrichor:envs.net@petrichor:envs.net i tried github:<user>/<repo>?host=<host> but it tried to use /api/v3/… which isn't supported by gitea 18:51:41
@petrichor:envs.net@petrichor:envs.net but seems like it should be fairly straightforward to implement a gitea: scheme 18:52:24
@moots:matrix.orgmoots joined the room.21:07:07
@danielhep:matrix.orgdanielhep joined the room.21:43:41
@twitchy0:matrix.orgtwitchy0 I use git+ssh://<host>/user/repo for gitea 23:33:25
11 Jul 2023
@emilazy:matrix.orgemily
In reply to @2xsaiko:tchncs.de
is there a good way to use flakes with the pijul VCS? I'd love to try out pijul because it seems like it improves upon git in a lot of ways, but the lack of flake support is the main reason why I've held off for now
no but someone was working on it
00:15:44
@emilazy:matrix.orgemilyhttps://github.com/NixOS/nixpkgs/pull/240808 is the first step00:15:55
@2xsaiko:tchncs.de@2xsaiko:tchncs.deoh cool! (though, having flake compat would require completely different implementation in nix itself from what I understand, right?)00:21:05
@emilazy:matrix.orgemilyyeah00:38:57
@emilazy:matrix.orgemilyit was more "Nix isn't going to add a fetcher for something Nixpkgs doesn't even support"00:39:05
@poweruser64:matrix.orgPowerUser64
In reply to @2xsaiko:tchncs.de
PowerUser64: usually I think you'd patch dlopen calls to point to absolute paths (if the library path is known at build time) or looked up relative to environment variables, like for example QT_PLUGIN_PATH. Ask in the #nix:nixos.org channel though, I think that's the better place to ask for how to do this
Thanks! I was actually able to find help on the nixos forum. It turned out I needed to use NIX_LDFLAGS to make ld give the program the things it needed.
00:49:01

Show newer messages


Back to Room ListRoom Version: 6