!SgYlXivkogarTVcnZO:nixos.org

Nix Flakes

885 Members
179 Servers

Load older messages


SenderMessageTime
30 Jun 2023
@beect:matrix.orgbeect changed their display name from Brendan Taylor to beect.21:53:06
1 Jul 2023
@industrial:matrix.orgIndustrial

Hi. I'm trying to use someone else's flake and run programs that it built:

https://gist.github.com/Industrial/b91a195cfb1628e86b1fbd617ac14633

I'm getting error: Dependency is not of a valid type: element 2 of buildInputs for nix-shell.

I don't understand the structure of the llama-cpp package/flake or how to get the commandline programs from it and make them available in my devShell. I tried using ChatGPT to get it to work but it's not creating a working flake for me :/

(https://github.com/ggerganov/llama.cpp/blob/master/flake.nix)

12:08:16
@industrial:matrix.orgIndustrial I see that it defines a packages.default and also has apps. 12:08:59
@sandro:supersandro.deSandro 🐧the second list entry for buildInputs is something not the package13:37:28
@industrial:matrix.orgIndustrial Yes, so I don't understand how to reference the programs created in the llama.cpp flake so that I can use them in my own flake. 15:40:32
@industrial:matrix.orgIndustrial @Sandro 🐧 Could you perhaps take a look at https://github.com/ggerganov/llama.cpp/blob/master/flake.nix ? 15:48:29
@sandro:supersandro.deSandro 🐧🤷16:58:23
@sandro:supersandro.deSandro 🐧 * 🤷 no idea but I also don't have time to dig into this16:58:33
@mrb0dymassage:matrix.orgmrb0dymassage joined the room.20:56:37
2 Jul 2023
@2xsaiko:tchncs.de@2xsaiko:tchncs.de joined the room.20:08:36
@duponin:alternativebit.fr@duponin:alternativebit.fr left the room.20:23:45
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.dev@enzime:nixos.dev 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

Show newer messages


Back to Room ListRoom Version: 6