| 21 Nov 2024 |
netpleb | so to actually test this, I added to my flake: inputs.nixpkgs-frigate.url = "github:mweinelt/nixpkgs/frigate-libedgetpu"; and then have outputs = inputs@{ self, nixpkgs, nixpkgs-frigate, ...}: ... but how do I pass this down and use it in my config such that it will not conflict with the regular nixpkgs? | 18:17:04 |
@hexa:lossy.network | that is a great question | 18:18:17 |
@hexa:lossy.network | you can pass inputs into specialArgs | 18:18:25 |
@hexa:lossy.network | then you can consume it in every file | 18:19:02 |
netpleb | I basically get this error: error: The option hardware.edgetpu' does not exist. Definition values:And yes, here is myspecialArgs: ``` # The specialArgsparameter passes the # non-default nixpkgs instances to other nix modules specialArgs = { # To use packages from nixpkgs-stable, # we configure some parameters for it first pkgs-stable = import nixpkgs-stable { # Refer to thesystem` parameter from # the outer scope recursively system = system; # To use Chrome, we need to allow the # installation of non-free softwares. config.allowUnfree = true; }; pkgs-frigate = import nixpkgs-frigate { system = system; config.allowUnfree = true; }; }; | 18:19:17 |
@hexa:lossy.network | maybe disabledModules and import from ${nixpkgs-frigate}/modules/services/video/frigate.nix will do? | 18:19:22 |
netpleb | * I basically get this error: error: The option hardware.edgetpu' does not exist. Definition values:And yes, here is myspecialArgs````: # The specialArgsparameter passes the # non-default nixpkgs instances to other nix modules specialArgs = { # To use packages from nixpkgs-stable, # we configure some parameters for it first pkgs-stable = import nixpkgs-stable { # Refer to thesystem` parameter from
the outer scope recursively
system = system;
To use Chrome, we need to allow the
installation of non-free softwares.
config.allowUnfree = true; };
pkgs-frigate = import nixpkgs-frigate {
system = system;
config.allowUnfree = true;
};
};
| 18:19:28 |
@hexa:lossy.network | then import it | 18:19:29 |
netpleb | * I basically get this error: error: The option hardware.edgetpu' does not exist. Definition values:And yes, here is myspecialArgs`:
# The `specialArgs` parameter passes the
# non-default nixpkgs instances to other nix modules
specialArgs = {
# To use packages from nixpkgs-stable,
# we configure some parameters for it first
pkgs-stable = import nixpkgs-stable {
# Refer to the `system` parameter from
# the outer scope recursively
system = system;
# To use Chrome, we need to allow the
# installation of non-free softwares.
config.allowUnfree = true;
};
pkgs-frigate = import nixpkgs-frigate {
system = system;
config.allowUnfree = true;
};
};
| 18:19:53 |
@hexa:lossy.network | import = [ "${nixpkgs-frigate}/nixos/modules/hardware/edgetpu.nix" ];
| 18:20:01 |
@hexa:lossy.network | * import = [ "${pkg-frigate}/nixos/modules/hardware/edgetpu.nix" ];
| 18:20:19 |
@hexa:lossy.network | * import = [ "${pkgs-frigate}/nixos/modules/hardware/edgetpu.nix" ];
| 18:20:22 |
netpleb | ok, I will try that | 18:20:36 |
netpleb | In reply to @hexa:lossy.network maybe disabledModules and import from ${nixpkgs-frigate}/modules/services/video/frigate.nix will do? hmm, this:
disabledModules = [
"${pkgs}/nixos/modules/services/video/frigate.nix"
];
imports = [
"${pkgs-frigate}/nixos/modules/services/video/frigate.nix"
"${pkgs-frigate}/nixos/modules/hardware/edgetpu.nix"
];
environment.systemPackages = [
pkgs-frigate.libedgetpu # userspace driver for coral.ai usb TPU
];
hardware.edgetpu.usb.enable = true;
gives me this error:
error:
… while calling the 'seq' builtin
at /nix/store/c9wv7i0af6mysmy65x6nvyfw5izzxv4g-source/lib/modules.nix:334:18:
333| options = checked options;
334| config = checked (removeAttrs config [ "_module" ]);
| ^
335| _module = checked (config._module);
… while evaluating a branch condition
at /nix/store/c9wv7i0af6mysmy65x6nvyfw5izzxv4g-source/lib/modules.nix:273:9:
272| checkUnmatched =
273| if config._module.check && config._module.freeformType == null && merged.unmatchedDefns != [] then
| ^
274| let
(stack trace truncated; use '--show-trace' to show the full, detailed trace)
error: cannot coerce a set to a string: { _type = "pkgs"; AAAAAASomeThingsFailToEvaluate = «thunk»; AMB-plugins = «thunk»; ArchiSteamFarm = «thunk»; AusweisApp2 = «thunk»; BeatSaberModManager = «thunk»; CHOWTapeModel = «thunk»; ChowCentaur = «thunk»; ChowKick = «thunk»; ChowPhaser = «thunk»; «22875 attributes elided» }
| 19:04:39 |