Formatted

This commit is contained in:
2025-08-08 13:26:21 +03:00
parent 43e1f62a79
commit a98e77d41a
28 changed files with 381 additions and 325 deletions
+14 -10
View File
@@ -1,15 +1,19 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.home-audio.enable;
in {
options.azos.home-audio.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.home-audio.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
# home.packages = with pkgs; [pavucontrol];
};
config = lib.mkIf isEnabled {
# home.packages = with pkgs; [pavucontrol];
};
}
+16 -12
View File
@@ -1,17 +1,21 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.discord.enable;
in {
options.azos.discord.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.discord.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
discord
];
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
discord
];
};
}
+34 -30
View File
@@ -1,37 +1,41 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.encryption.enable;
in {
options.azos.encryption.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
options.azos.encryption.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
programs.password-store = {
enable = true;
settings = {
PASSWORD_STORE_KEY = "076AA297579A0064";
};
};
config = lib.mkIf isEnabled {
programs.password-store = {
enable = true;
settings = {
PASSWORD_STORE_KEY = "076AA297579A0064";
};
};
home.packages = with pkgs; [
yubikey-personalization
pinentry-gtk2
];
programs.gpg = {
enable = true;
};
services.gpg-agent = {
enable = true;
enableSshSupport = true;
pinentryPackage = pkgs.pinentry-gtk2;
};
home.file.".ssh/config".source = ./ssh-config;
home.file.".ssh/gpg-as-ssh.pub".source = ./gpg-as-ssh.pub;
home.file.".gnupg/sshcontrol".source = ./sshcontrol;
home.packages = with pkgs; [
yubikey-personalization
pinentry-gtk2
];
programs.gpg = {
enable = true;
};
services.gpg-agent = {
enable = true;
enableSshSupport = true;
pinentryPackage = pkgs.pinentry-gtk2;
};
home.file.".ssh/config".source = ./ssh-config;
home.file.".ssh/gpg-as-ssh.pub".source = ./gpg-as-ssh.pub;
home.file.".gnupg/sshcontrol".source = ./sshcontrol;
};
}
+27 -25
View File
@@ -1,34 +1,36 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.git-config.enable;
in {
options.azos.git-config.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.git-config.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
config = lib.mkIf isEnabled {
home.packages = with pkgs; [pass-git-helper unzip];
home.packages = with pkgs; [ pass-git-helper unzip ];
programs.git = {
enable = true;
userName = "Aner Zakobar";
userEmail = "aner@zakobar.com";
signing = {
key = "6D17E295C70E2674";
signByDefault = true;
};
extraConfig = {
credential.helper = "!pass-git-helper $@";
};
programs.git = {
enable = true;
userName = "Aner Zakobar";
userEmail = "aner@zakobar.com";
signing = {
key = "6D17E295C70E2674";
signByDefault = true;
};
extraConfig = {
credential.helper = "!pass-git-helper $@";
};
home.file.".config/pass-git-helper/git-pass-mapping.ini".source =
./pass-git-mapping.ini;
};
home.file.".config/pass-git-helper/git-pass-mapping.ini".source =
./pass-git-mapping.ini;
};
}
+18 -14
View File
@@ -1,19 +1,23 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.kubectl.enable;
in {
options.azos.kubectl.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.kubectl.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
kubectl
kubernetes-helm
velero
];
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
kubectl
kubernetes-helm
velero
];
};
}
+62 -47
View File
@@ -1,73 +1,87 @@
#https://xeiaso.net/talks/asg-2023-nixos/ example
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.mail.enable;
default_account_params = {
realName = "Aner Zakobar";
notmuch.enable = true;
mbsync = {
enable = true;
create = "maildir";
enable = true;
create = "maildir";
};
};
default_gmail_params = default_account_params // {
# lieer.enable = true;
# lieer.sync.enable = true;
flavor = "gmail.com";
# imap = {
# host = "mail.privateemail.com";
# };
};
default_gmail_params =
default_account_params
// {
# lieer.enable = true;
# lieer.sync.enable = true;
flavor = "gmail.com";
# imap = {
# host = "mail.privateemail.com";
# };
};
default_smtp = {
tls = {
enable = true;
certificatesFile = "/etc/ssl/certs/ca-certificates.crt";
};
};
default_gmail_smtp = default_smtp // {
host = "smtp.gmail.com";
};
in {
options.azos.mail.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
default_gmail_smtp =
default_smtp
// {
host = "smtp.gmail.com";
};
in {
options.azos.mail.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
programs= {
notmuch = {
enable = true;
hooks = {
preNew = "mbsync -a";
};
};
mbsync = {
enable = true;
};
msmtp = {
enable = true;
};
lieer = {
enable = true;
config = lib.mkIf isEnabled {
programs = {
notmuch = {
enable = true;
hooks = {
preNew = "mbsync -a";
};
};
services.lieer.enable = true;
accounts.email.accounts = {
gmail = default_gmail_params // {
mbsync = {
enable = true;
};
msmtp = {
enable = true;
};
lieer = {
enable = true;
};
};
services.lieer.enable = true;
accounts.email.accounts = {
gmail =
default_gmail_params
// {
address = "anerisgreat@gmail.com";
userName = "anerisgreat";
# smtp = default_gmail_smtp;
passwordCommand = "pass gmail.com/mbsync-anerisgreat";
};
bgu = default_gmail_params // {
bgu =
default_gmail_params
// {
address = "anerz@post.bgu.ac.il";
userName = "anerz@post.bgu.ac.il";
# smtp = default_gmail_smtp;
passwordCommand = "pass post.bgu.ac.il/mbsync-anerz";
};
zakobar = default_account_params // {
zakobar =
default_account_params
// {
address = "aner@zakobar.com";
msmtp.enable = true;
@@ -81,13 +95,14 @@ in {
# create = "maildir";
# };
smtp = default_smtp // {
port = 587;
host = "mail.privateemail.com";
};
smtp =
default_smtp
// {
port = 587;
host = "mail.privateemail.com";
};
passwordCommand = "pass zakobar.com/mail/aner";
};
};
};
};
}
+14 -10
View File
@@ -1,16 +1,20 @@
#https://xeiaso.net/talks/asg-2023-nixos/ example
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.mpris-proxy.enable;
in {
options.azos.mpris-proxy.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.mpris-proxy.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
services.mpris-proxy.enable = true;
};
config = lib.mkIf isEnabled {
services.mpris-proxy.enable = true;
};
}
+14 -10
View File
@@ -1,15 +1,19 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.qutebrowser-config.enable;
in {
options.azos.qutebrowser-config.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.qutebrowser-config.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
home.file.".config/qutebrowser/config.py".source = ./qutebrowser-config.py;
};
config = lib.mkIf isEnabled {
home.file.".config/qutebrowser/config.py".source = ./qutebrowser-config.py;
};
}
+20 -16
View File
@@ -1,21 +1,25 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.reaper.enable;
in {
options.azos.reaper.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.reaper.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
reaper
helm #TODO this synth had better work
surge
lsp-plugins
vital
];
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
reaper
helm #TODO this synth had better work
surge
lsp-plugins
vital
];
};
}
+16 -12
View File
@@ -1,17 +1,21 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.spotify.enable;
in {
options.azos.spotify.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.spotify.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
spotify
];
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
spotify
];
};
}
+16 -12
View File
@@ -1,17 +1,21 @@
{ lib, config, pkgs, ... }:
let
{
lib,
config,
pkgs,
...
}: let
isEnabled =
config.azos.zoom.enable;
in {
options.azos.zoom.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
options.azos.zoom.enable = lib.mkOption {
default = true;
example = true;
type = lib.types.bool;
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
zoom-us
];
};
config = lib.mkIf isEnabled {
home.packages = with pkgs; [
zoom-us
];
};
}