refactor(repo): reformat to nixfmt; relicense to 0BSD
This commit is contained in:
parent
035fb24038
commit
db2564d828
39 changed files with 451 additions and 318 deletions
|
@ -3,19 +3,20 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.programs.sleep-or-die;
|
||||
inherit (lib) mkOption mkEnableOption types mkIf;
|
||||
sleep-or-die = let
|
||||
image =
|
||||
if cfg.image == null
|
||||
then ""
|
||||
else "-i ${cfg.image}";
|
||||
sound =
|
||||
if cfg.sound == null
|
||||
then ""
|
||||
else "ffplay -nodisp -autoexit ${cfg.sound}";
|
||||
in
|
||||
inherit (lib)
|
||||
mkOption
|
||||
mkEnableOption
|
||||
types
|
||||
mkIf
|
||||
;
|
||||
sleep-or-die =
|
||||
let
|
||||
image = if cfg.image == null then "" else "-i ${cfg.image}";
|
||||
sound = if cfg.sound == null then "" else "ffplay -nodisp -autoexit ${cfg.sound}";
|
||||
in
|
||||
pkgs.writeShellApplication {
|
||||
name = "sod";
|
||||
runtimeInputs = [
|
||||
|
@ -28,7 +29,8 @@
|
|||
shutdown +60 "This was automatically invoked by 'sleep-or-die'"
|
||||
'';
|
||||
};
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.programs.sleep-or-die = {
|
||||
enable = mkEnableOption "sleep-or-die";
|
||||
|
||||
|
|
|
@ -3,12 +3,16 @@
|
|||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
ezaOptions = "--colour=always --icons=never --group-directories-first --octal-permissions";
|
||||
cfg = config.alqueva.shells.aliases;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.shells.aliases = {
|
||||
enable = (lib.mkEnableOption "default aliases") // {default = true;};
|
||||
enable = (lib.mkEnableOption "default aliases") // {
|
||||
default = true;
|
||||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment = {
|
||||
|
|
|
@ -2,20 +2,23 @@
|
|||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.system.dconf;
|
||||
inherit (lib) types;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.system.dconf = {
|
||||
enable = lib.mkEnableOption "configuration with DConf";
|
||||
luminosity = lib.mkOption {
|
||||
type = types.enum ["dark" "light" "default"];
|
||||
type = types.enum [
|
||||
"dark"
|
||||
"light"
|
||||
"default"
|
||||
];
|
||||
default = "dark";
|
||||
description = "The luminosity you want to use for GTK.";
|
||||
apply = lum:
|
||||
if lum == "default"
|
||||
then lum
|
||||
else "prefer-${lum}";
|
||||
apply = lum: if lum == "default" then lum else "prefer-${lum}";
|
||||
};
|
||||
theme = lib.mkOption {
|
||||
type = types.str;
|
||||
|
@ -43,29 +46,27 @@ in {
|
|||
extraDconfPackages = lib.mkOption {
|
||||
type = types.listOf types.package;
|
||||
description = "Extra packages to install for DConf.";
|
||||
default = [];
|
||||
default = [ ];
|
||||
};
|
||||
extraDconfSettings = lib.mkOption {
|
||||
type = types.attrsOf types.anything;
|
||||
description = "Extra settings you want to apply to DConf.";
|
||||
default = {};
|
||||
default = { };
|
||||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
programs.dconf = {
|
||||
profiles.user.databases = [
|
||||
{
|
||||
settings =
|
||||
{
|
||||
"org/gnome/desktop/interface" = {
|
||||
color-scheme = cfg.luminosity;
|
||||
cursor-size = cfg.cursor.size;
|
||||
cursor-theme = cfg.cursor.theme;
|
||||
icon-theme = cfg.icon.theme;
|
||||
gtk-theme = cfg.theme;
|
||||
};
|
||||
}
|
||||
// cfg.extraDconfSettings;
|
||||
settings = {
|
||||
"org/gnome/desktop/interface" = {
|
||||
color-scheme = cfg.luminosity;
|
||||
cursor-size = cfg.cursor.size;
|
||||
cursor-theme = cfg.cursor.theme;
|
||||
icon-theme = cfg.icon.theme;
|
||||
gtk-theme = cfg.theme;
|
||||
};
|
||||
} // cfg.extraDconfSettings;
|
||||
}
|
||||
];
|
||||
packages = cfg.extraDconfPackages;
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{lib, ...}: {
|
||||
{ lib, ... }:
|
||||
{
|
||||
imports = lib.pipe (builtins.readDir ./.) [
|
||||
(lib.filterAttrs
|
||||
(n: _v: n != "default.nix" && lib.last (lib.stringToCharacters n) != "~"))
|
||||
(lib.mapAttrsToList
|
||||
(n: _v: ./${n}))
|
||||
(lib.filterAttrs (n: _v: n != "default.nix" && lib.last (lib.stringToCharacters n) != "~"))
|
||||
(lib.mapAttrsToList (n: _v: ./${n}))
|
||||
];
|
||||
}
|
||||
|
|
|
@ -2,9 +2,11 @@
|
|||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.programs.git;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.programs.git = {
|
||||
enable = lib.mkEnableOption "git";
|
||||
};
|
||||
|
|
|
@ -3,12 +3,14 @@
|
|||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.wms.niri;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.wms.niri = {
|
||||
enable = lib.mkEnableOption "niri";
|
||||
package = lib.mkPackageOption pkgs "niri" {};
|
||||
package = lib.mkPackageOption pkgs "niri" { };
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
@ -28,7 +30,7 @@ in {
|
|||
];
|
||||
};
|
||||
};
|
||||
configPackages = [cfg.package];
|
||||
configPackages = [ cfg.package ];
|
||||
extraPortals = [
|
||||
pkgs.xdg-desktop-portal-gnome
|
||||
pkgs.xdg-desktop-portal-gtk
|
||||
|
@ -36,7 +38,7 @@ in {
|
|||
};
|
||||
|
||||
services = {
|
||||
displayManager.sessionPackages = [cfg.package];
|
||||
displayManager.sessionPackages = [ cfg.package ];
|
||||
gnome.gnome-keyring.enable = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -3,17 +3,19 @@
|
|||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.shells.nushell;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.shells.nushell = {
|
||||
enable = lib.mkEnableOption "Nushell";
|
||||
package = lib.mkPackageOption pkgs "nushell" {};
|
||||
package = lib.mkPackageOption pkgs "nushell" { };
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment = {
|
||||
systemPackages = [cfg.package];
|
||||
systemPackages = [ cfg.package ];
|
||||
shells = [
|
||||
(lib.getExe' cfg.package "nu")
|
||||
"/run/current-system/sw/bin/nu"
|
||||
|
|
|
@ -3,9 +3,11 @@
|
|||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.system.pipewire;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.system.pipewire = {
|
||||
enable = lib.mkEnableOption "PipeWire";
|
||||
};
|
||||
|
|
|
@ -3,9 +3,11 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.wms.river;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.wms.river = {
|
||||
enable = lib.mkEnableOption "River";
|
||||
};
|
||||
|
@ -35,8 +37,7 @@ in {
|
|||
};
|
||||
|
||||
environment.systemPackages = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
inherit (pkgs)
|
||||
wf-recorder
|
||||
rofi-wayland
|
||||
kitty
|
||||
|
|
|
@ -2,9 +2,11 @@
|
|||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.programs.openssh;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.programs.openssh = {
|
||||
enable = lib.mkEnableOption "OpenSSH";
|
||||
};
|
||||
|
|
|
@ -3,10 +3,12 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.support;
|
||||
inherit (lib) mkEnableOption;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.support = {
|
||||
wayland = mkEnableOption "wayland support";
|
||||
};
|
||||
|
|
|
@ -3,17 +3,23 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.programs.swaybg;
|
||||
inherit (lib) types;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.programs.swaybg = {
|
||||
enable = lib.mkEnableOption "swaybg";
|
||||
package = lib.mkPackageOption pkgs "swaybg" {};
|
||||
package = lib.mkPackageOption pkgs "swaybg" { };
|
||||
wallpaper = lib.mkOption {
|
||||
default = "";
|
||||
description = "The wallpaper you want to use with swaybg.";
|
||||
type = types.oneOf [types.str types.package types.path];
|
||||
type = types.oneOf [
|
||||
types.str
|
||||
types.package
|
||||
types.path
|
||||
];
|
||||
};
|
||||
mode = lib.mkOption {
|
||||
default = "fill";
|
||||
|
@ -21,7 +27,7 @@ in {
|
|||
type = types.str;
|
||||
};
|
||||
extraServiceConfig = {
|
||||
default = {};
|
||||
default = { };
|
||||
description = "Extra settings you want to apply to the systemd service.";
|
||||
type = types.attrsOf types.anything;
|
||||
};
|
||||
|
@ -31,9 +37,9 @@ in {
|
|||
systemd.user.services.swaybg = {
|
||||
inherit (cfg.package.meta) description;
|
||||
|
||||
wantedBy = ["graphical-session.target"];
|
||||
after = ["graphical-session-pre.target"];
|
||||
partOf = ["graphical-session.target"];
|
||||
wantedBy = [ "graphical-session.target" ];
|
||||
after = [ "graphical-session-pre.target" ];
|
||||
partOf = [ "graphical-session.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${lib.getExe' cfg.package "swaybg"} -i ${cfg.wallpaper} -m ${cfg.mode}";
|
||||
|
|
|
@ -2,27 +2,35 @@
|
|||
config,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
inherit (lib.options) mkEnableOption mkOption;
|
||||
inherit (lib.types) attrsOf listOf submodule str package;
|
||||
inherit (lib.types)
|
||||
attrsOf
|
||||
listOf
|
||||
submodule
|
||||
str
|
||||
package
|
||||
;
|
||||
users = config.alqueva.users;
|
||||
in {
|
||||
in
|
||||
{
|
||||
options.alqueva.users = mkOption {
|
||||
type = attrsOf (submodule {
|
||||
options = {
|
||||
tmpfiles = mkOption {
|
||||
description = "tmpfiles";
|
||||
type = listOf str;
|
||||
default = [];
|
||||
default = [ ];
|
||||
};
|
||||
packages = mkOption {
|
||||
type = listOf package;
|
||||
default = [];
|
||||
default = [ ];
|
||||
description = "Packages installed to the the defined user.";
|
||||
};
|
||||
groups = mkOption {
|
||||
type = listOf str;
|
||||
default = [];
|
||||
default = [ ];
|
||||
description = "Groups to add the defined user to.";
|
||||
};
|
||||
shell = mkOption {
|
||||
|
@ -30,30 +38,30 @@ in {
|
|||
default = config.programs.bash.package;
|
||||
description = "Shell the user wants to use.";
|
||||
};
|
||||
enable = (mkEnableOption "this user.") // {default = true;};
|
||||
enable = (mkEnableOption "this user.") // {
|
||||
default = true;
|
||||
};
|
||||
};
|
||||
});
|
||||
description = "Users to have on the system.";
|
||||
default = {};
|
||||
default = { };
|
||||
};
|
||||
|
||||
config = let
|
||||
enabledUsers = lib.filterAttrs (_: user: user.enable == true) users;
|
||||
in {
|
||||
users.users =
|
||||
builtins.mapAttrs (un: uc: {
|
||||
config =
|
||||
let
|
||||
enabledUsers = lib.filterAttrs (_: user: user.enable == true) users;
|
||||
in
|
||||
{
|
||||
users.users = builtins.mapAttrs (un: uc: {
|
||||
description = un;
|
||||
isNormalUser = true;
|
||||
extraGroups = uc.groups;
|
||||
inherit (uc) packages shell;
|
||||
initialPassword = "password";
|
||||
})
|
||||
enabledUsers;
|
||||
}) enabledUsers;
|
||||
|
||||
systemd.user.tmpfiles.users =
|
||||
builtins.mapAttrs (_: uc: {
|
||||
systemd.user.tmpfiles.users = builtins.mapAttrs (_: uc: {
|
||||
rules = uc.tmpfiles;
|
||||
})
|
||||
enabledUsers;
|
||||
};
|
||||
}) enabledUsers;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -3,15 +3,16 @@
|
|||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: let
|
||||
}:
|
||||
let
|
||||
cfg = config.alqueva.shells.xonsh;
|
||||
aliasesToPyDict = aliases:
|
||||
lib.concatStringsSep "\n"
|
||||
(lib.mapAttrsToList (k: v: "aliases['${k}'] = '${v}'") aliases);
|
||||
in {
|
||||
aliasesToPyDict =
|
||||
aliases: lib.concatStringsSep "\n" (lib.mapAttrsToList (k: v: "aliases['${k}'] = '${v}'") aliases);
|
||||
in
|
||||
{
|
||||
options.alqueva.shells.xonsh = {
|
||||
enable = lib.mkEnableOption "xonsh";
|
||||
package = lib.mkPackageOption pkgs "xonsh" {};
|
||||
package = lib.mkPackageOption pkgs "xonsh" { };
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue