main
1{
2 inputs,
3 lib,
4 ...
5}: {
6 flake-file.inputs.programsdb = {
7 url = "github:wamserma/flake-programs-sqlite";
8 inputs.nixpkgs.follows = "nixpkgs";
9 };
10
11 flake.modules.nixos.core = {pkgs, ...}: {
12 programs.command-not-found.dbPath = lib.mkForce inputs.programsdb.packages.${pkgs.stdenv.system}.programs-sqlite;
13 };
14
15 flake.modules.homeManager.core = {
16 lib,
17 pkgs,
18 osConfig,
19 config,
20 ...
21 }: {
22 home.packages = [pkgs.sqlite];
23 home.activation.removeExistingNixChannel =
24 lib.mkIf (!osConfig.nix.settings.use-xdg-base-directories)
25 (lib.hm.dag.entryBefore ["checkLinkTargets"] ''
26 rm -f ${config.home.homeDirectory}/.nix-defexpr/channels
27 '');
28 home.file.".nix-defexpr/channels/nixpkgs/programs.sqlite" = {
29 source = inputs.programsdb.packages.${pkgs.stdenv.hostPlatform.system}.programs-sqlite;
30 force = true;
31 };
32 };
33}