mirror of
https://github.com/SebastianStork/nixos-config.git
synced 2026-01-21 16:21:34 +01:00
Simplify wrapper imports
This commit is contained in:
parent
43c8adddb6
commit
42ebeaf86e
19 changed files with 298 additions and 248 deletions
|
|
@ -59,6 +59,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
./flake/hosts.nix
|
./flake/hosts.nix
|
||||||
./flake/modules.nix
|
./flake/modules.nix
|
||||||
|
./flake/wrappers.nix
|
||||||
./flake/dev-shells.nix
|
./flake/dev-shells.nix
|
||||||
./flake/formatter.nix
|
./flake/formatter.nix
|
||||||
];
|
];
|
||||||
|
|
|
||||||
19
flake/wrappers.nix
Normal file
19
flake/wrappers.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
flake.nixosModules.wrappers =
|
||||||
|
{
|
||||||
|
self,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
_module.args.wrappers =
|
||||||
|
(lib.concatMapAttrs (
|
||||||
|
name: _: {
|
||||||
|
${lib.removeSuffix ".nix" name} = import "${self}/wrappers/${name}" { inherit inputs pkgs lib; };
|
||||||
|
}
|
||||||
|
))
|
||||||
|
(builtins.readDir "${self}/wrappers");
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
self.nixosModules.nixos
|
self.nixosModules.nixos
|
||||||
../wrappers
|
self.nixosModules.wrappers
|
||||||
];
|
];
|
||||||
|
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
self.nixosModules.home-manager
|
self.nixosModules.home-manager
|
||||||
../wrappers
|
self.nixosModules.wrappers
|
||||||
|
|
||||||
{
|
{
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.bottom = {
|
||||||
basePackage = pkgs.bottom;
|
basePackage = pkgs.bottom;
|
||||||
flags = [ "--group" ];
|
flags = [ "--group" ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.bottom.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,24 +0,0 @@
|
||||||
{
|
|
||||||
inputs,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}@moduleArgs:
|
|
||||||
let
|
|
||||||
assembleWrapper =
|
|
||||||
wrapperConfig:
|
|
||||||
(inputs.wrapper-manager.lib {
|
|
||||||
inherit pkgs;
|
|
||||||
modules = [ { wrappers.wrappedPackage = wrapperConfig; } ];
|
|
||||||
}).config.wrappers.wrappedPackage.wrapped;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
_module.args.wrappers = lib.pipe (builtins.readDir ./.) [
|
|
||||||
(lib.filterAttrs (name: _: name != "default.nix"))
|
|
||||||
(lib.concatMapAttrs (
|
|
||||||
name: _: {
|
|
||||||
${lib.removeSuffix ".nix" name} = import ./${name} { inherit assembleWrapper moduleArgs; };
|
|
||||||
}
|
|
||||||
))
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
@ -1,10 +1,19 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{
|
||||||
let
|
inputs,
|
||||||
inherit (moduleArgs) pkgs;
|
pkgs,
|
||||||
in
|
lib,
|
||||||
assembleWrapper {
|
...
|
||||||
|
}:
|
||||||
|
(inputs.wrapper-manager.lib {
|
||||||
|
inherit pkgs;
|
||||||
|
modules = [
|
||||||
|
{
|
||||||
|
wrappers.firefox = {
|
||||||
basePackage = pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
basePackage = pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
||||||
extraPolicies.ExtensionSettings = import ./extensions.nix { inherit moduleArgs; };
|
extraPolicies.ExtensionSettings = import ./extensions.nix { inherit inputs lib; };
|
||||||
extraPrefs = import ./preferences.nix { inherit moduleArgs; };
|
extraPrefs = import ./preferences.nix { inherit inputs; };
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.firefox.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
{ moduleArgs, ... }:
|
{ inputs, lib, ... }:
|
||||||
let
|
let
|
||||||
inherit (moduleArgs) lib inputs;
|
|
||||||
|
|
||||||
extension = shortId: uuid: {
|
extension = shortId: uuid: {
|
||||||
name = uuid;
|
name = uuid;
|
||||||
value = {
|
value = {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
{ moduleArgs, ... }:
|
{ inputs, ... }:
|
||||||
let
|
let
|
||||||
inherit (moduleArgs) inputs;
|
|
||||||
|
|
||||||
betterfox = builtins.replaceStrings [ "user_pref" ] [ "pref" ] (
|
betterfox = builtins.replaceStrings [ "user_pref" ] [ "pref" ] (
|
||||||
builtins.readFile "${inputs.betterfox}/user.js"
|
builtins.readFile "${inputs.betterfox}/user.js"
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.hypridle = {
|
||||||
basePackage = pkgs.hypridle;
|
basePackage = pkgs.hypridle;
|
||||||
flags =
|
flags =
|
||||||
let
|
let
|
||||||
|
|
@ -32,4 +33,7 @@ assembleWrapper {
|
||||||
"--config"
|
"--config"
|
||||||
hypridle-config
|
hypridle-config
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.hypridle.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.hyprlock = {
|
||||||
basePackage = pkgs.hyprlock;
|
basePackage = pkgs.hyprlock;
|
||||||
flags =
|
flags =
|
||||||
let
|
let
|
||||||
|
|
@ -22,4 +23,7 @@ assembleWrapper {
|
||||||
"--config"
|
"--config"
|
||||||
hyprlock-config
|
hyprlock-config
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.hyprlock.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.hyprpaper = {
|
||||||
basePackage = pkgs.hyprpaper;
|
basePackage = pkgs.hyprpaper;
|
||||||
flags =
|
flags =
|
||||||
let
|
let
|
||||||
|
|
@ -16,4 +17,7 @@ assembleWrapper {
|
||||||
"--config"
|
"--config"
|
||||||
hyprpaper-config
|
hyprpaper-config
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.hyprpaper.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,12 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
|
||||||
inherit (moduleArgs) pkgs;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
theme ? "dark",
|
theme ? "dark",
|
||||||
}:
|
}:
|
||||||
assembleWrapper {
|
(inputs.wrapper-manager.lib {
|
||||||
|
inherit pkgs;
|
||||||
|
modules = [
|
||||||
|
{
|
||||||
|
wrappers.kitty = {
|
||||||
basePackage = pkgs.kitty;
|
basePackage = pkgs.kitty;
|
||||||
programs.kitty.prependFlags =
|
programs.kitty.prependFlags =
|
||||||
let
|
let
|
||||||
|
|
@ -31,4 +32,7 @@ assembleWrapper {
|
||||||
"--override"
|
"--override"
|
||||||
kitty-theme
|
kitty-theme
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.kitty.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.marktext = {
|
||||||
basePackage = pkgs.marktext;
|
basePackage = pkgs.marktext;
|
||||||
flags = [ "--disable-gpu" ];
|
flags = [ "--disable-gpu" ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.marktext.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.obsidian = {
|
||||||
basePackage = pkgs.obsidian;
|
basePackage = pkgs.obsidian;
|
||||||
flags = [ "--disable-gpu" ];
|
flags = [ "--disable-gpu" ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.obsidian.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,17 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{
|
||||||
let
|
inputs,
|
||||||
inherit (moduleArgs) pkgs lib;
|
pkgs,
|
||||||
in
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
{
|
{
|
||||||
theme ? "dark",
|
theme ? "dark",
|
||||||
}:
|
}:
|
||||||
assembleWrapper {
|
(inputs.wrapper-manager.lib {
|
||||||
|
inherit pkgs;
|
||||||
|
modules = [
|
||||||
|
{
|
||||||
|
wrappers.rofi = {
|
||||||
basePackage = pkgs.rofi-wayland;
|
basePackage = pkgs.rofi-wayland;
|
||||||
flags =
|
flags =
|
||||||
let
|
let
|
||||||
|
|
@ -44,4 +50,7 @@ assembleWrapper {
|
||||||
"-config"
|
"-config"
|
||||||
rofi-config
|
rofi-config
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.rofi.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.spotify = {
|
||||||
basePackage = pkgs.spotify;
|
basePackage = pkgs.spotify;
|
||||||
flags = [ "--disable-gpu" ];
|
flags = [ "--disable-gpu" ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.spotify.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.waybar = {
|
||||||
basePackage = pkgs.waybar;
|
basePackage = pkgs.waybar;
|
||||||
flags = [
|
flags = [
|
||||||
"--config"
|
"--config"
|
||||||
|
|
@ -10,4 +11,7 @@ assembleWrapper {
|
||||||
"--style"
|
"--style"
|
||||||
./style.css
|
./style.css
|
||||||
];
|
];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.waybar.wrapped
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
{ assembleWrapper, moduleArgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
let
|
(inputs.wrapper-manager.lib {
|
||||||
inherit (moduleArgs) pkgs;
|
inherit pkgs;
|
||||||
in
|
modules = [
|
||||||
assembleWrapper {
|
{
|
||||||
|
wrappers.webcord = {
|
||||||
basePackage = pkgs.webcord;
|
basePackage = pkgs.webcord;
|
||||||
flags = [ "--disable-gpu" ];
|
flags = [ "--disable-gpu" ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
];
|
||||||
|
}).config.wrappers.webcord.wrapped
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue