refactor(lib): add lib output to flake

This is needed so we can use subattributes of flake.lib
This commit is contained in:
Mohammad Rafiq 2025-07-07 14:03:38 +08:00
parent db23edd468
commit a83523bbf1
No known key found for this signature in database
6 changed files with 33 additions and 4 deletions

14
nix/flake-parts/lib.nix Normal file
View file

@ -0,0 +1,14 @@
{ lib, inputs, ... }:
let
inherit (lib.options) mkOption;
inherit (lib.types) lazyAttrsOf raw;
inherit (inputs.flake-parts.lib) mkSubmoduleOptions;
in
{
options.flake = mkSubmoduleOptions {
lib = mkOption {
type = lazyAttrsOf raw;
default = { };
};
};
}

View file

@ -4,7 +4,7 @@ let
inherit (lib.attrsets) mapAttrs;
in
{
flake.lib = {
flake.lib.modules = {
/**
Return an attribute set for use with a option that needs to be used for all users.

15
nix/lib/options.nix Normal file
View file

@ -0,0 +1,15 @@
{ lib, ... }:
let
inherit (lib.options) mkOption;
inherit (lib.types) str;
in
{
flake.lib.options = {
mkStrOption =
default:
mkOption {
inherit default;
type = str;
};
};
}

View file

@ -1,6 +1,6 @@
{ inputs, config, ... }:
let
inherit (cfg.lib) forAllUsers';
inherit (cfg.lib.modules) forAllUsers';
cfg = config.flake;
hm = inputs.home-manager;
globalCfg = {

View file

@ -1,7 +1,7 @@
{ config, lib, ... }:
let
cfg = config.flake;
inherit (cfg.lib) forAllUsers';
inherit (cfg.lib.modules) forAllUsers';
inherit (lib.attrsets) mapAttrs';
in
{

View file

@ -1,7 +1,7 @@
{ config, lib, ... }:
let
cfg = config.flake;
inherit (cfg.lib) forAllUsers';
inherit (cfg.lib.modules) forAllUsers';
inherit (lib.lists) optional;
in
{