Compare commits
No commits in common. "38f3ac0ce5883f6aee526b91240bca153019584b" and "20db71996c678e75c999d733a713805691fa9991" have entirely different histories.
38f3ac0ce5
...
20db71996c
|
@ -157,7 +157,7 @@ in
|
||||||
enable = false;
|
enable = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# Because I still need to play sysadmin
|
# Because I stilll need to play sysadmin
|
||||||
ssh-server.enable = true;
|
ssh-server.enable = true;
|
||||||
# Recipe manager
|
# Recipe manager
|
||||||
tandoor-recipes = {
|
tandoor-recipes = {
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
" Use dark color scheme
|
" Use dark color scheme
|
||||||
colorscheme dark
|
colorscheme dark
|
||||||
|
|
||||||
" Make tridactyl open Vim in my preferred terminal
|
" Make tridactyl open Vim in my prefered terminal
|
||||||
set editorcmd @editorcmd@
|
set editorcmd @editorcmd@
|
||||||
|
|
||||||
" Remove editor file after use
|
" Remove editor file after use
|
||||||
|
|
|
@ -58,7 +58,7 @@ in
|
||||||
{
|
{
|
||||||
config.accounts.email.accounts = {
|
config.accounts.email.accounts = {
|
||||||
personal = lib.mkMerge [
|
personal = lib.mkMerge [
|
||||||
# Common configuration
|
# Common configuraton
|
||||||
(mkConfig {
|
(mkConfig {
|
||||||
domain = "belanyi.fr";
|
domain = "belanyi.fr";
|
||||||
address = "bruno";
|
address = "bruno";
|
||||||
|
@ -70,7 +70,7 @@ in
|
||||||
];
|
];
|
||||||
|
|
||||||
gmail = lib.mkMerge [
|
gmail = lib.mkMerge [
|
||||||
# Common configuration
|
# Common configuraton
|
||||||
(mkConfig {
|
(mkConfig {
|
||||||
domain = "gmail.com";
|
domain = "gmail.com";
|
||||||
address = "brunobelanyi";
|
address = "brunobelanyi";
|
||||||
|
|
|
@ -30,7 +30,7 @@ in
|
||||||
});
|
});
|
||||||
|
|
||||||
default = { ${config.my.home.terminal.program} = { }; };
|
default = { ${config.my.home.terminal.program} = { }; };
|
||||||
defaultText = literalExpression ''
|
defaultText = litteralExpression ''
|
||||||
{ ''${config.my.home.terminal.program} = { }; };
|
{ ''${config.my.home.terminal.program} = { }; };
|
||||||
'';
|
'';
|
||||||
example = { xterm-256color = { }; };
|
example = { xterm-256color = { }; };
|
||||||
|
|
|
@ -100,9 +100,6 @@ in
|
||||||
# Shell
|
# Shell
|
||||||
bash-language-server
|
bash-language-server
|
||||||
shfmt
|
shfmt
|
||||||
|
|
||||||
# Generic
|
|
||||||
typos-lsp
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
" Basic configuration {{{
|
" Basic configuraion {{{
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
" Use UTF-8
|
" Use UTF-8
|
||||||
set encoding=utf-8
|
set encoding=utf-8
|
||||||
|
|
|
@ -42,7 +42,7 @@ end
|
||||||
|
|
||||||
--- shared LSP configuration callback
|
--- shared LSP configuration callback
|
||||||
--- @param client native client configuration
|
--- @param client native client configuration
|
||||||
--- @param bufnr int? buffer number of the attached client
|
--- @param bufnr int? buffer number of the attched client
|
||||||
M.on_attach = function(client, bufnr)
|
M.on_attach = function(client, bufnr)
|
||||||
-- Format on save
|
-- Format on save
|
||||||
lsp_format.on_attach(client, bufnr)
|
lsp_format.on_attach(client, bufnr)
|
||||||
|
|
|
@ -84,11 +84,3 @@ if utils.is_executable("starpls") then
|
||||||
on_attach = lsp.on_attach,
|
on_attach = lsp.on_attach,
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Generic
|
|
||||||
if utils.is_executable("typos-lsp") then
|
|
||||||
lspconfig.typos_lsp.setup({
|
|
||||||
capabilities = capabilities,
|
|
||||||
on_attach = lsp.on_attach,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ in
|
||||||
service = "some-service-name";
|
service = "some-service-name";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
description = "list of block configurations, merged with the defaults";
|
description = "list of block configurations, merged with the defauls";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
let
|
let
|
||||||
cfg = config.my.home.wm.screen-lock;
|
cfg = config.my.home.wm.screen-lock;
|
||||||
|
|
||||||
notificationCmd =
|
notficationCmd =
|
||||||
let
|
let
|
||||||
duration = toString (cfg.notify.delay * 1000);
|
duration = toString (cfg.notify.delay * 1000);
|
||||||
notifyCmd = "${lib.getExe pkgs.libnotify} -u critical -t ${duration}";
|
notifyCmd = "${lib.getExe pkgs.libnotify} -u critical -t ${duration}";
|
||||||
|
@ -48,7 +48,7 @@ in
|
||||||
"-notify"
|
"-notify"
|
||||||
"${toString cfg.notify.delay}"
|
"${toString cfg.notify.delay}"
|
||||||
"-notifier"
|
"-notifier"
|
||||||
notificationCmd
|
notficationCmd
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -11,7 +11,7 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
# File types
|
# File types
|
||||||
mime.enable = true;
|
mime.enable = true;
|
||||||
# File associations
|
# File associatons
|
||||||
mimeApps = {
|
mimeApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
|
@ -12,7 +12,7 @@ setopt rc_quotes
|
||||||
setopt auto_resume
|
setopt auto_resume
|
||||||
# Show history expansion before running a command
|
# Show history expansion before running a command
|
||||||
setopt hist_verify
|
setopt hist_verify
|
||||||
# Append commands to history as they are executed
|
# Append commands to history as they are exectuted
|
||||||
setopt inc_append_history_time
|
setopt inc_append_history_time
|
||||||
# Remove useless whitespace from commands
|
# Remove useless whitespace from commands
|
||||||
setopt hist_reduce_blanks
|
setopt hist_reduce_blanks
|
||||||
|
|
|
@ -11,7 +11,7 @@ in
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
# This section must be *after* the one configured by `libinput`
|
# This section must be *after* the one configured by `libinput`
|
||||||
# for the `ScrollMethod` configuration to not be overridden
|
# for the `ScrollMethod` configuration to not be overriden
|
||||||
inputClassSections = lib.mkAfter [
|
inputClassSections = lib.mkAfter [
|
||||||
# MX Ergo
|
# MX Ergo
|
||||||
''
|
''
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Configuration that spans across system and home, or are almagations of modules
|
# Configuration that spans accross system and home, or are almagations of modules
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# A low-resource, full-featured git forge.
|
# A low-ressource, full-featured git forge.
|
||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
let
|
let
|
||||||
cfg = config.my.services.forgejo;
|
cfg = config.my.services.forgejo;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# A low-resource, full-featured git forge.
|
# A low-ressource, full-featured git forge.
|
||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
let
|
let
|
||||||
cfg = config.my.services.gitea;
|
cfg = config.my.services.gitea;
|
||||||
|
|
|
@ -59,12 +59,14 @@ let
|
||||||
|
|
||||||
extraConfig = mkOption {
|
extraConfig = mkOption {
|
||||||
type = types.attrs; # FIXME: forward type of virtualHosts
|
type = types.attrs; # FIXME: forward type of virtualHosts
|
||||||
example = {
|
example = litteralExample ''
|
||||||
|
{
|
||||||
locations."/socket" = {
|
locations."/socket" = {
|
||||||
proxyPass = "http://127.0.0.1:8096/";
|
proxyPass = "http://127.0.0.1:8096/";
|
||||||
proxyWebsockets = true;
|
proxyWebsockets = true;
|
||||||
};
|
};
|
||||||
};
|
}
|
||||||
|
'';
|
||||||
default = { };
|
default = { };
|
||||||
description = ''
|
description = ''
|
||||||
Any extra configuration that should be applied to this virtual host.
|
Any extra configuration that should be applied to this virtual host.
|
||||||
|
@ -98,7 +100,8 @@ in
|
||||||
virtualHosts = mkOption {
|
virtualHosts = mkOption {
|
||||||
type = types.attrsOf virtualHostOption;
|
type = types.attrsOf virtualHostOption;
|
||||||
default = { };
|
default = { };
|
||||||
example = {
|
example = litteralExample ''
|
||||||
|
{
|
||||||
gitea = {
|
gitea = {
|
||||||
subdomain = "git";
|
subdomain = "git";
|
||||||
port = 8080;
|
port = 8080;
|
||||||
|
@ -115,7 +118,8 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
}
|
||||||
|
'';
|
||||||
description = ''
|
description = ''
|
||||||
List of virtual hosts to set-up using default settings.
|
List of virtual hosts to set-up using default settings.
|
||||||
'';
|
'';
|
||||||
|
@ -159,21 +163,25 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
example = {
|
example = litteralExample ''
|
||||||
|
{
|
||||||
alice = {
|
alice = {
|
||||||
passwordHashFile = "/var/lib/nginx-sso/alice/password-hash.txt";
|
passwordHashFile = "/var/lib/nginx-sso/alice/password-hash.txt";
|
||||||
totpSecretFile = "/var/lib/nginx-sso/alice/totp-secret.txt";
|
totpSecretFile = "/var/lib/nginx-sso/alice/totp-secret.txt";
|
||||||
};
|
};
|
||||||
};
|
}
|
||||||
|
'';
|
||||||
description = "Definition of users";
|
description = "Definition of users";
|
||||||
};
|
};
|
||||||
|
|
||||||
groups = mkOption {
|
groups = mkOption {
|
||||||
type = with types; attrsOf (listOf str);
|
type = with types; attrsOf (listOf str);
|
||||||
example = {
|
example = litteralExample ''
|
||||||
|
{
|
||||||
root = [ "alice" ];
|
root = [ "alice" ];
|
||||||
users = [ "alice" "bob" ];
|
users = [ "alice" "bob" ];
|
||||||
};
|
}
|
||||||
|
'';
|
||||||
description = "Groups of users";
|
description = "Groups of users";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -13,7 +13,7 @@ in
|
||||||
example = "/run/secrets/password.env";
|
example = "/run/secrets/password.env";
|
||||||
description = ''
|
description = ''
|
||||||
The path to a file containing the PASSWORD environment variable
|
The path to a file containing the PASSWORD environment variable
|
||||||
definition for Podgrab's authentication.
|
definition for Podgrab's authentification.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@ in
|
||||||
service = {
|
service = {
|
||||||
# Only allow registration of users through the CLI
|
# Only allow registration of users through the CLI
|
||||||
enableregistration = false;
|
enableregistration = false;
|
||||||
# Use the host's timezone
|
# Ues the host's timezone
|
||||||
timezone = config.time.timeZone;
|
timezone = config.time.timeZone;
|
||||||
# Use UNIX socket for serving the API
|
# Use UNIX socket for serving the API
|
||||||
unixsocket = socketPath;
|
unixsocket = socketPath;
|
||||||
|
|
|
@ -206,7 +206,7 @@ in
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
# Additional interface is only used to get access to "LAN" from wireguard
|
# Additional inteface is only used to get access to "LAN" from wireguard
|
||||||
(lib.mkIf cfg.internal.enable {
|
(lib.mkIf cfg.internal.enable {
|
||||||
networking.wg-quick.interfaces."${cfg.internal.name}" = mkInterface [
|
networking.wg-quick.interfaces."${cfg.internal.name}" = mkInterface [
|
||||||
"${cfg.net.v4.subnet}.0/${toString cfg.net.v4.mask}"
|
"${cfg.net.v4.subnet}.0/${toString cfg.net.v4.mask}"
|
||||||
|
|
|
@ -30,7 +30,7 @@ stdenvNoCC.mkDerivation {
|
||||||
description = "Unified host lists, ready to be used by unbound";
|
description = "Unified host lists, ready to be used by unbound";
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
This is a simple derivation based on StevenBlack's unified hosts list.
|
This is a simple derivation based on StevenBlack's unified hosts list.
|
||||||
The files have been modified for easy use with unbound.
|
The files have been modified for easy use wih unbound.
|
||||||
'';
|
'';
|
||||||
homepage = "https://github.com/StevenBlack/hosts";
|
homepage = "https://github.com/StevenBlack/hosts";
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
|
|
Loading…
Reference in a new issue