| 5 Jul 2021 |
fufexan | Gytis told me that it can be either | 19:43:31 |
fufexan | * Gytis told me that it can be either overlay or overlays | 19:43:40 |
David Arnold (blaggacao) | Wait a sec, need to refresh working memory over here. | 19:43:48 |
fufexan | sure thing | 19:43:52 |
fufexan | seems like it doesn't throw any error when I use overlays andoverlays = utils.lib.exporters.internalOverlays { inherit (self) pkgs inputs; }; | 19:45:56 |
fufexan | but packages.${system} is empty 🤔 | 19:46:11 |
David Arnold (blaggacao) | So memory refresh resulted in:
- First the contructor needs to consume
self.overlays to become a builder
- Then the builder needs to consume
channels to build
| 19:47:27 |
fufexan | right, it does that | 19:47:59 |
fufexan | {
description = "NUR packages";
inputs = {
nixpkgs.url = github:NixOS/nixpkgs;
utils.url = github:gytis-ivaskevicius/flake-utils-plus/staging;
nixpkgs-osu.url = "github:NixOS/nixpkgs/73b982e62194a5d85827d87b0851aee06932979f";
nixpkgs-kak.url = "github:NixOS/nixpkgs/e5920f73965ce9fd69c93b9518281a3e8cb77040";
kakoune-cr = { url = "github:alexherbo2/kakoune.cr"; flake = false; };
picom-jonaburg = { url = "github:jonaburg/picom"; flake = false; };
};
outputs = { self, nixpkgs, utils, ... }@inputs:
utils.lib.systemFlake rec {
inherit self inputs;
overlay = import ./pkgs { inherit inputs; };
overlays = utils.lib.exporters.internalOverlays { inherit (self) pkgs inputs; };
# build all packages defined in ./pkgs/default.nix for their respective systems
outputsBuilder = channels: {
packages = utils.lib.exporters.fromOverlays self.overlays channels;
};
};
}
this is my flake if it helps
| 19:48:28 |
fufexan | and this is everything I have (not properly wired together right now) https://github.com/fufexan/nur/tree/wip | 19:53:20 |
David Arnold (blaggacao) | Let me check how we use that in divnix/digga. | 19:54:15 |
David Arnold (blaggacao) | Looks the same, hmmm. | 19:56:45 |
David Arnold (blaggacao) | What does builtins.trace self.overlays reveal? | 19:57:50 |
fufexan | you mean this? packages = utils.lib.exporters.fromOverlays (builtins.trace self.overlays) channels; | 19:59:53 |
@gtrunsec:matrix.org | Is it a good example to here? https://github.com/hardenedlinux/nixpkgs-hardenedlinux | 20:03:24 |
@gtrunsec:matrix.org | I'm not sure if this will help you understand the fup | 20:04:15 |
fufexan | I already use fup in my nixos config | 20:04:45 |
fufexan | the thing is, I have some of the apps I wanna package here in that repo and it all works fine, and I don't know why it doesn't in this repo | 20:05:10 |
@gtrunsec:matrix.org | I know, that is what I did. | 20:07:46 |
fufexan | hold on, I'll modify the structure to match my dotfiles and see if anything happens | 20:08:45 |
Pacman99 | In reply to @fufexan:matrix.org but packages.${system} is empty 🤔 Have you applied any overlays to your channel? | 20:09:10 |
fufexan | nope, I just found that out | 20:10:34 |
fufexan | it seems to be working when I add them | 20:10:48 |
David Arnold (blaggacao) | Alright, strange the error then, though. | 20:14:10 |
David Arnold (blaggacao) | Would a code branch help that checks for self.overlays being different from {}? | 20:15:04 |
fufexan | I believe so | 20:15:36 |
David Arnold (blaggacao) | * Would a code branch help that asserts for `self.overlays` being different from `{}`? | 20:15:40 |
fufexan | well maybe not really, since it says value is a function, not a set | 20:16:02 |
fufexan | * well maybe not really, since it says value is a function while a set was expected | 20:16:14 |
David Arnold (blaggacao) | That's the error that puzzles me. | 20:16:18 |