1
0
mirror of https://github.com/kmein/niveum synced 2026-03-29 08:41:07 +02:00

13 Commits

Author SHA1 Message Date
github-actions[bot]
83db512254 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/b72aa95f7f096382bff3aea5f8fde645bca07422' (2023-06-30)
  → 'github:NixOS/nixpkgs/d8bb6c681cf86265fdcf3cc3119f757bbb085835' (2023-07-07)
• Updated input 'nixpkgs-unstable':
    'github:NixOS/nixpkgs/3eb8ccf3b3922be5586a263e7d6f4f98e3acf728' (2023-07-02)
  → 'github:NixOS/nixpkgs/651beb2a23fb0ae7939c5e0d3c645f487fdaa448' (2023-07-09)
• Updated input 'nur':
    'github:nix-community/NUR/8993e5d37ab3ec80883751b5d86d48e9b74bed43' (2023-07-02)
  → 'github:nix-community/NUR/7a85833f758ac5ad9f6e3620cf1445f7907073e3' (2023-07-09)
• Updated input 'retiolum':
    'git+https://git.thalheim.io/Mic92/retiolum?ref=refs/heads/master&rev=5204150c92b7c412a3331337ef73b0eb0f01f6ba' (2023-07-01)
  → 'git+https://git.thalheim.io/Mic92/retiolum?ref=refs/heads/master&rev=4e2f9841ea09012261fca1c7e734f449ca39d55a' (2023-07-08)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/ef95001485c25edb43ea236bdb03640b9073abef' (2023-07-01)
  → 'github:oxalica/rust-overlay/7a29283cc242c2486fc67f60b431ef708046d176' (2023-07-08)
2023-07-09 01:01:41 +00:00
b953ccae12 feat(neovim): completion via cmp 2023-07-04 22:11:22 +02:00
4f5782fbc4 feat: kick beets down the stairs 2023-07-04 21:43:37 +02:00
8ae328ad19 fix(ci): submodules and it works! 2023-07-04 17:06:32 +02:00
9148ab5ba8 Revert "chore: get secrets via input, mock for CI"
This reverts commit 3138fd23ef.
2023-07-04 16:28:26 +02:00
17bf958923 Merge remote-tracking branch 'origin/update_flake_lock_action' 2023-07-04 15:03:26 +02:00
e08ffb4d44 feat(notemenu): use as flake package 2023-07-04 10:12:38 +02:00
0cbf18fb1a feat(themes): switch gtk theme 2023-07-04 09:56:23 +02:00
332d192aaf fix(secrets): fysi email 2023-07-04 09:48:57 +02:00
f52a5c43c3 feat(i3status-rust): time every 10 seconds 2023-07-04 09:41:46 +02:00
94315fae99 chore: format 2023-07-04 09:40:29 +02:00
76232658c2 feat(htop): no tree 2023-07-04 09:40:12 +02:00
bcac6e29d5 feat: migrate notes workflow to obsidian completely 2023-07-04 09:40:00 +02:00
38 changed files with 227 additions and 199 deletions

View File

@@ -9,7 +9,7 @@ jobs:
matrix:
system: [makanek,manakish,kabsa,zaatar,ful]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Install QEMU (ARM)
run: sudo apt-get install -y qemu-user-static
if: ${{ matrix.system == 'ful' }}
@@ -22,9 +22,16 @@ jobs:
- name: Install Nix (x86_64)
uses: cachix/install-nix-action@v16
if: ${{ matrix.system != 'ful' }}
- run: |
rm -rf secrets
- name: nixos-rebuild dry-build
run: |
# remove secrets: ref https://stackoverflow.com/questions/1260748/how-do-i-remove-a-submodule/36593218
git submodule deinit -f secrets
rm -rf .git/modules/secrets
git rm -f secrets
# recreate secrets
mkdir secrets
cat secrets.txt | while read -r path; do echo dummy > $path; done
find
- run: nix run nixpkgs#nixos-rebuild -- dry-build --override-input secrets ./secrets --flake .#${{matrix.system}}
cat secrets.txt | while read -r path; do touch $path; done
git add secrets
nix run nixpkgs#nixos-rebuild -- dry-build --flake $GITHUB_WORKSPACE#${{matrix.system}}

View File

@@ -2,7 +2,6 @@
pkgs,
config,
lib,
inputs,
...
}: let
defaults = {
@@ -20,43 +19,43 @@
in {
age.secrets = {
email-password-cock = {
file = inputs.secrets + "/email-password-cock.age";
file = ../secrets/email-password-cock.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
email-password-fysi = {
file = inputs.secrets + "/secrets/email-password-fysi.age";
file = ../secrets/email-password-fysi.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
email-password-posteo = {
file = inputs.secrets + "/email-password-posteo.age";
file = ../secrets/email-password-posteo.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
email-password-meinhark = {
file = inputs.secrets + "/email-password-meinhark.age";
file = ../secrets/email-password-meinhark.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
email-password-meinhaki = {
file = inputs.secrets + "/email-password-meinhaki.age";
file = ../secrets/email-password-meinhaki.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
email-password-dslalewa = {
file = inputs.secrets + "/email-password-dslalewa.age";
file = ../secrets/email-password-dslalewa.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
email-password-fsklassp = {
file = inputs.secrets + "/email-password-fsklassp.age";
file = ../secrets/email-password-fsklassp.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";

View File

@@ -2,7 +2,6 @@
config,
lib,
pkgs,
inputs,
...
}: let
inherit (import ../lib) tmpfilesConfig;
@@ -41,7 +40,7 @@ in {
};
systemd.user.services.nextcloud-syncer = {
enable = true;
enable = false;
wants = ["network-online.target"];
wantedBy = ["default.target"];
startAt = "*:00/10";
@@ -98,7 +97,7 @@ in {
];
age.secrets.mega-password = {
file = inputs.secrets + "/mega-password.age";
file = ../secrets/mega-password.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";

View File

@@ -37,13 +37,13 @@ in {
{
age.secrets = {
di-fm-key = {
file = inputs.secrets + "/di-fm-key.age";
file = ../secrets/di-fm-key.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
restic = {
file = inputs.secrets + "/restic.age";
file = ../secrets/restic.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
@@ -76,7 +76,7 @@ in {
};
age.secrets = {
kfm-password.file = inputs.secrets + "/kfm-password.age";
kfm-password.file = ../secrets/kfm-password.age;
};
home-manager.users.me.xdg.enable = true;
@@ -228,7 +228,6 @@ in {
./alacritty.nix
./backup.nix
./bash.nix
./beets.nix
./bluetooth.nix
./aerc.nix
./ccc.nix

View File

@@ -20,7 +20,7 @@
show_thread_names = false;
sort_descending = true;
sort_key = "PERCENT_CPU";
tree_view = true;
tree_view = false;
update_process_names = false;
right_meters = ["Uptime" "Tasks" "LoadAverage" "Battery"];
left_meters = ["LeftCPUs2" "RightCPUs2" "Memory" "Swap"];

View File

@@ -1,9 +1,15 @@
{
config,
pkgs,
inputs,
lib,
...
}: let
inherit (lib.strings) fileContents;
inherit (import ../lib) sshPort;
eduroam = {
identity = fileContents <secrets/eduroam/identity>;
password = fileContents <secrets/eduroam/password>;
};
hu-berlin-cifs-options = [
"uid=${toString config.users.users.me.uid}"
"gid=${toString config.users.groups.users.gid}"
@@ -29,7 +35,7 @@ in {
options = hu-berlin-cifs-options;
};
age.secrets.cifs-credentials-hu-berlin.file = inputs.secrets + "/cifs-credentials-hu-berlin.age";
age.secrets.cifs-credentials-hu-berlin.file = ../secrets/cifs-credentials-hu-berlin.age;
home-manager.users.me.programs.ssh = {
matchBlocks = {

View File

@@ -3,7 +3,6 @@
pkgs,
lib,
niveumPackages,
inputs,
...
}: let
inherit (import ../lib) defaultApplications colours;
@@ -66,13 +65,13 @@
in {
age.secrets = {
github-token-i3status-rust = {
file = inputs.secrets + "/github-token-i3status-rust.age";
file = ../secrets/github-token-i3status-rust.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
openweathermap-api-key = {
file = inputs.secrets + "/openweathermap-api-key.age";
file = ../secrets/openweathermap-api-key.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
@@ -271,25 +270,7 @@ in {
"${modifier}+0" = "exec ${niveumPackages.menu-calc}/bin/=";
"${modifier}+d" = "exec ${pkgs.writers.writeDash "run" ''exec rofi -modi run,ssh,window -show run''}";
"${modifier}+Shift+d" = "exec ${
pkgs.writers.writeDash "notemenu" ''
set -efu
PATH=$PATH:${
lib.makeBinPath [pkgs.rofi pkgs.findutils pkgs.coreutils]
}
cd ~/notes
note_file=$({
echo diary/$(date -I).md
echo diary/$(date -I -d yesterday).md
find . ! -name '.*' -type f -printf "%T@ %p\n" | sort --reverse --numeric-sort | cut --delimiter=" " --fields=2-
} | rofi -dmenu -i -p 'notes')
if test "$note_file"
then
alacritty --working-directory ~/notes -e "$EDITOR" "$note_file"
fi
''
}";
"${modifier}+Shift+d" = "exec ${niveumPackages.notemenu}/bin/notemenu";
"${modifier}+p" = "exec rofi-pass";
"${modifier}+Shift+p" = "exec rofi-pass --insert";
"${modifier}+u" = "exec ${niveumPackages.unicodmenu}/bin/unicodmenu";

View File

@@ -1,7 +1,7 @@
{
config,
pkgs,
inputs,
lib,
...
}: let
davHome = "~/.local/share/dav";
@@ -18,13 +18,13 @@
in {
age.secrets = {
nextcloud-password-kieran = {
file = inputs.secrets + "/nextcloud-password-kieran.age";
file = ../secrets/nextcloud-password-kieran.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";
};
nextcloud-password-fysi = {
file = inputs.secrets + "/nextcloud-password-fysi.age";
file = ../secrets/nextcloud-password-fysi.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";

View File

@@ -1,8 +1,10 @@
{
config,
pkgs,
lib,
inputs,
niveumPackages,
unstablePackages,
...
}: let
worldradio = pkgs.callPackage ../packages/worldradio.nix {};
@@ -289,7 +291,7 @@ in {
];
age.secrets.home-assistant-token = {
file = inputs.secrets + "/home-assistant-token.age";
file = ../secrets/home-assistant-token.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";

View File

@@ -1,6 +1,6 @@
{
pkgs,
inputs,
lib,
config,
...
}: let
@@ -22,7 +22,7 @@ in {
command = "${autorenkalender}/bin/autorenkalender";
};
age.secrets.telegram-token-kmein.file = inputs.secrets + "/telegram-token-kmein.age";
age.secrets.telegram-token-kmein.file = ../../secrets/telegram-token-kmein.age;
niveum.passport.services = [
{

View File

@@ -1,6 +1,7 @@
{
config,
pkgs,
lib,
inputs,
...
}: let
@@ -47,9 +48,9 @@ in {
];
age.secrets = {
telegram-token-reverse.file = inputs.secrets + "/telegram-token-reverse.age";
telegram-token-betacode.file = inputs.secrets + "/telegram-token-betacode.age";
telegram-token-proverb.file = inputs.secrets + "/telegram-token-proverb.age";
telegram-token-reverse.file = ../../secrets/telegram-token-reverse.age;
telegram-token-betacode.file = ../../secrets/telegram-token-betacode.age;
telegram-token-proverb.file = ../../secrets/telegram-token-proverb.age;
};
systemd.services.telegram-reverse = {

View File

@@ -1,7 +1,7 @@
{
pkgs,
config,
inputs,
lib,
...
}: let
nachtischsatan-bot = {tokenFile}:
@@ -36,7 +36,7 @@ in {
serviceConfig.Restart = "always";
};
age.secrets.telegram-token-nachtischsatan.file = inputs.secrets + "/telegram-token-nachtischsatan.age";
age.secrets.telegram-token-nachtischsatan.file = ../../secrets/telegram-token-nachtischsatan.age;
niveum.passport.services = [
{

View File

@@ -19,6 +19,7 @@
${pkgs.coreutils}/bin/chown ${config.users.users.me.name}:users /var/theme/current_theme
${pkgs.xorg.xrdb}/bin/xrdb -merge /var/theme/config/xresources
${pkgs.procps}/bin/pkill -HUP xsettingsd
${pkgs.glib}/bin/gsettings set org.gnome.desktop.interface gtk-theme "$(cat /var/theme/config/gtk-theme)" || :
else
echo "theme $1 not found"
fi
@@ -54,6 +55,9 @@ in {
};
environment.etc = {
"themes/light/gtk-theme".text = ''
Adwaita
'';
"themes/light/xsettings.conf".text = ''
Net/ThemeName "Adwaita"
'';
@@ -61,8 +65,11 @@ in {
*background: #ffffff
*foreground: #000000
'';
"themes/dark/gtk-theme".text = ''
Dracula
'';
"themes/dark/xsettings.conf".text = ''
Net/ThemeName "Adwaita-dark"
Net/ThemeName "Dracula"
'';
"themes/dark/xresources".text = ''
*background: #000000

View File

@@ -1,7 +1,7 @@
{
config,
pkgs,
inputs,
lib,
...
}: let
inherit (import ../lib) localAddresses;
@@ -20,7 +20,7 @@ in {
];
age.secrets.traadfri-key = {
file = inputs.secrets + "/traadfri-key.age";
file = ../secrets/traadfri-key.age;
owner = config.users.users.me.name;
group = config.users.users.me.group;
mode = "400";

46
flake.lock generated
View File

@@ -190,11 +190,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1688109178,
"narHash": "sha256-BSdeYp331G4b1yc7GIRgAnfUyaktW2nl7k0C577Tttk=",
"lastModified": 1688764204,
"narHash": "sha256-FsvK+tIvelCI0tWwlMDKfiyb7P/KfxpGbXMrdCKiT8s=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b72aa95f7f096382bff3aea5f8fde645bca07422",
"rev": "d8bb6c681cf86265fdcf3cc3119f757bbb085835",
"type": "github"
},
"original": {
@@ -222,11 +222,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1688258489,
"narHash": "sha256-Ve3r2lv3bTJh/0/2IRhF5+4uco3YlqIjFPDd3rs4frw=",
"lastModified": 1688862802,
"narHash": "sha256-TnmgzHyr9G6x8swT7r/a9edX9ahNkN2RJJhJkt+XxaI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3eb8ccf3b3922be5586a263e7d6f4f98e3acf728",
"rev": "651beb2a23fb0ae7939c5e0d3c645f487fdaa448",
"type": "github"
},
"original": {
@@ -254,11 +254,11 @@
},
"nur": {
"locked": {
"lastModified": 1688258911,
"narHash": "sha256-nu6KIfmhQqCMo+tecCMOP13TH8BLrm8hpDqF6ckz8Ik=",
"lastModified": 1688863826,
"narHash": "sha256-6LJMOQdugKK0cR02bfyiL+ulzxx4sVRMI6hmCqd+z9U=",
"owner": "nix-community",
"repo": "NUR",
"rev": "8993e5d37ab3ec80883751b5d86d48e9b74bed43",
"rev": "7a85833f758ac5ad9f6e3620cf1445f7907073e3",
"type": "github"
},
"original": {
@@ -293,11 +293,11 @@
},
"retiolum": {
"locked": {
"lastModified": 1688225912,
"narHash": "sha256-YXiHX9YmZ1ApZ3g58+nJrJA+H35stAvIAaewUnG1eZg=",
"lastModified": 1688824809,
"narHash": "sha256-Qe1ooPYuM10EI2rE4CORV9rXoh8yrdbR5mhgJiuzXJ0=",
"ref": "refs/heads/master",
"rev": "5204150c92b7c412a3331337ef73b0eb0f01f6ba",
"revCount": 307,
"rev": "4e2f9841ea09012261fca1c7e734f449ca39d55a",
"revCount": 311,
"type": "git",
"url": "https://git.thalheim.io/Mic92/retiolum"
},
@@ -322,7 +322,6 @@
"retiolum": "retiolum",
"rust-overlay": "rust-overlay",
"scripts": "scripts",
"secrets": "secrets",
"telebots": "telebots",
"tinc-graph": "tinc-graph",
"traadfri": "traadfri",
@@ -339,11 +338,11 @@
]
},
"locked": {
"lastModified": 1688178944,
"narHash": "sha256-4fef6jlv73WW6FLXssEa88WaTVEU268ipI6fatg9vRE=",
"lastModified": 1688783586,
"narHash": "sha256-HHaM2hk2azslv1kH8zmQxXo2e7i5cKgzNIuK4yftzB0=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "ef95001485c25edb43ea236bdb03640b9073abef",
"rev": "7a29283cc242c2486fc67f60b431ef708046d176",
"type": "github"
},
"original": {
@@ -378,19 +377,6 @@
"type": "github"
}
},
"secrets": {
"flake": false,
"locked": {
"lastModified": 1,
"narHash": "sha256-pQpattmS9VmO3ZIQUFn66az8GSmB4IvYhTTCFn6SUmo=",
"path": "./secrets",
"type": "path"
},
"original": {
"path": "./secrets",
"type": "path"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,

View File

@@ -13,7 +13,6 @@
nixpkgs-unstable.url = "github:NixOS/nixpkgs/master";
nur.url = "github:nix-community/NUR";
recht.url = "github:kmein/recht";
secrets.url = "path:./secrets";
scripts.url = "github:kmein/scripts";
retiolum.url = "git+https://git.thalheim.io/Mic92/retiolum";
rust-overlay.url = "github:oxalica/rust-overlay";
@@ -39,7 +38,6 @@
scripts.inputs.flake-utils.follows = "flake-utils";
scripts.inputs.nixpkgs.follows = "nixpkgs";
scripts.inputs.rust-overlay.follows = "rust-overlay";
secrets.flake = false;
tinc-graph.inputs.flake-utils.follows = "flake-utils";
tinc-graph.inputs.nixpkgs.follows = "nixpkgs";
tinc-graph.inputs.rust-overlay.follows = "rust-overlay";
@@ -73,7 +71,7 @@
${pkgs.findutils}/bin/find secrets -not -path '*/.*' -type f > secrets.txt
'');
};
deploy = {
deploy = {
type = "app";
program = toString (pkgs.writers.writeDash "deploy" ''
if [ $# -eq 0 ]
@@ -307,6 +305,7 @@
new-mac = pkgs.callPackage packages/new-mac.nix {};
nix-git = pkgs.callPackage packages/nix-git.nix {};
nix-index-update = pkgs.callPackage packages/nix-index-update.nix {inherit system;};
notemenu = pkgs.callPackage packages/notemenu.nix {};
opustags = pkgs.callPackage packages/opustags.nix {};
pls = pkgs.callPackage packages/pls.nix {};
qrpaste = pkgs.callPackage packages/qrpaste.nix {};

View File

@@ -187,7 +187,7 @@ in {
{block = "load";}
{
block = "custom";
interval = 1;
interval = 10;
json = true;
command = pkgs.writers.writeDash "time" ''
${pkgs.jq}/bin/jq -n \

View File

@@ -1,3 +1,39 @@
local cmp = require'cmp'
cmp.setup({
mapping = cmp.mapping.preset.insert({
['<C-b>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
}, {
{ name = 'buffer' },
})
})
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
cmp.setup.cmdline({ '/', '?' }, {
mapping = cmp.mapping.preset.cmdline(),
sources = {
{ name = 'buffer' }
}
})
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
cmp.setup.cmdline(':', {
mapping = cmp.mapping.preset.cmdline(),
sources = cmp.config.sources({
{ name = 'path' }
}, {
{ name = 'cmdline' }
})
})
local capabilities = require('cmp_nvim_lsp').default_capabilities()
local opts = { noremap=true, silent=true }
vim.keymap.set('n', '<space>e', vim.diagnostic.open_float, opts)
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts)
@@ -37,18 +73,18 @@ local lsp_flags = {
language_servers = {
pyright = {}, -- pyright
-- tsserver = {}, -- typescript-language-server
-- elmls = {}, -- elm-language-server
tsserver = {}, -- typescript-language-server
elmls = {}, -- elm-language-server
-- denols = {}, -- deno built in
-- bashls = {}, -- bash-language-server
hls = {}, -- haskell-language-server
-- html = {}, -- vscode-langservers-extracted
-- jsonls = {}, -- vscode-langservers-extracted
html = {}, -- vscode-langservers-extracted
jsonls = {}, -- vscode-langservers-extracted
nil_ls = {}, -- github:oxalica/nil
-- rnix = {}, -- rnix-lsp
-- jqls = {}, -- jq-lsp
rust_analyzer = { ["rust-analyzer"] = {} },
-- eslint?
eslint = {},
-- volar? vls?
texlab = {
texlab = {
@@ -82,5 +118,6 @@ for server, settings in pairs(language_servers) do
on_attach = on_attach,
flags = lsp_flags,
settings = settings,
capabilities = capabilities
}
end

View File

@@ -30,10 +30,6 @@ noremap <leader>i mzgg=G`z
" replace all
nnoremap S :%s//g<Left><Left>
nnoremap <Leader>a <Plug>(ale_hover)
nnoremap <Leader>d <Plug>(ale_go_to_definition_in_tab)
nnoremap <Leader>rf <Plug>(ale_find_references)
" Hit `%` on `if` to jump to `else`.
runtime macros/matchit.vim
@@ -67,6 +63,16 @@ set foldlevelstart=30
iabbrev ddate <C-R>=strftime("%F")<CR>
iabbrev dtime <C-R>=strftime("%F %T")<CR>
fun! TrimWhitespace()
let l:save = winsaveview()
keeppatterns %s/\s\+$//e
call winrestview(l:save)
endfun
command! TrimWhitespace call TrimWhitespace()
autocmd BufWritePre * if !&binary && &ft !=# 'mail'
\| call TrimWhitespace()
\| endif
let g:netrw_banner=0
let g:netrw_browse_split=4
let g:netrw_altv=1 " open splits to the right
@@ -152,8 +158,6 @@ autocmd bufreadpre * setlocal foldmethod=indent
set completeopt=noinsert,menuone,noselect
set complete+=kspell
let g:SuperTabDefaultCompletionType = 'context'
let g:haskell_enable_quantification = 1
let g:haskell_enable_recursivedo = 1
let g:haskell_enable_arrowsyntax = 1
@@ -162,34 +166,3 @@ let g:haskell_enable_pattern_synonyms = 1
let g:pandoc#syntax#conceal#use = 0
let g:pandoc#modules#disabled = []
let g:pandoc#spell#default_langs = ['en', 'de']
let g:ale_linters = {
\ 'css': ['csslint'],
\ 'haskell': ['ghc', 'cabal-ghc', 'hlint', 'ormolu'],
\ 'html': ['tidy', 'proselint'],
\ 'latex': ['lacheck', 'chktex', 'proselint'],
\ 'pandoc': ['proselint'],
\ 'ruby': ['rubocop'],
\ 'json': ['jsonlint'],
\ 'rust': ['cargo'],
\ 'python': ['pyls'],
\}
let g:ale_fixers = {
\ '*': ['remove_trailing_lines', 'trim_whitespace'],
\ 'javascript': ['prettier'],
\ 'typescript': ['prettier'],
\ 'css': ['prettier'],
\ 'html': ['prettier'],
\ 'json': ['jq'],
\ 'python': ['black'],
\ 'rust': ['rustfmt']
\}
let g:ale_set_quickfix = 1
let g:ale_fix_on_save = 1
autocmd bufnewfile,bufread elm.json let g:ale_fix_on_save = 0
let g:ale_completion_enabled = 1
let g:vimwiki_list = [{'path': '~/notes/',
\ 'syntax': 'markdown', 'ext': '.md'}]

28
packages/notemenu.nix Normal file
View File

@@ -0,0 +1,28 @@
{
writers,
lib,
rofi,
findutils,
coreutils,
noteDirectory ? "~/cloud/syncthing/obsidian",
currentDates ? false,
}:
writers.writeDashBin "notemenu" ''
set -efu
PATH=$PATH:${
lib.makeBinPath [rofi findutils coreutils]
}
cd ${noteDirectory}
note_file=$({
${lib.optionalString currentDates ''
echo $(date -I).md
echo $(date -I -d yesterday).md
''}
find . -not -path '*/.*' -type f -printf "%T@ %p\n" | sort --reverse --numeric-sort | cut --delimiter=" " --fields=2-
} | rofi -dmenu -i -p 'notes')
if test "$note_file"
then
alacritty --working-directory ${noteDirectory} -e "$EDITOR" "$note_file"
fi
''

View File

@@ -8,13 +8,18 @@
}: (neovim.override {
configure = {
customRC = ''
source ${../lib/vim/init.vim}
luafile ${../lib/vim/init.lua}
source ${../lib/vim/init.vim}
'';
packages.nvim = with vimPlugins; {
start = [
ale
nvim-cmp
cmp-buffer
cmp-path
cmp-nvim-lsp
cmp-cmdline
fzf-vim
fzfWrapper
supertab

View File

@@ -1,5 +1,5 @@
{
inputs,
lib,
config,
pkgs,
...
@@ -36,19 +36,19 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/ful-retiolum-privateKey-rsa.age";
file = ../../secrets/ful-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/ful-retiolum-privateKey-ed25519.age";
file = ../../secrets/ful-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
root.file = inputs.secrets + "/ful-root.age";
restic.file = inputs.secrets + "/restic.age";
root.file = ../../secrets/ful-root.age;
restic.file = ../../secrets/restic.age;
};
services.restic.backups.niveum = {

View File

@@ -1,6 +1,7 @@
{
inputs,
config,
pkgs,
lib,
...
}: let
inherit (import ../../lib) retiolumAddresses;
@@ -25,20 +26,20 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/kabsa-retiolum-privateKey-rsa.age";
file = ../../secrets/kabsa-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/kabsa-retiolum-privateKey-ed25519.age";
file = ../../secrets/kabsa-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
restic.file = inputs.secrets + "/restic.age";
syncthing-cert.file = inputs.secrets + "/kabsa-syncthing-cert.age";
syncthing-key.file = inputs.secrets + "/kabsa-syncthing-key.age";
restic.file = ../../secrets/restic.age;
syncthing-cert.file = ../../secrets/kabsa-syncthing-cert.age;
syncthing-key.file = ../../secrets/kabsa-syncthing-key.age;
};
environment.systemPackages = [pkgs.minecraft pkgs.zeroad];

View File

@@ -1,5 +1,5 @@
{
inputs,
lib,
config,
pkgs,
...
@@ -84,18 +84,18 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/makanek-retiolum-privateKey-rsa.age";
file = ../../secrets/makanek-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/makanek-retiolum-privateKey-ed25519.age";
file = ../../secrets/makanek-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
restic.file = inputs.secrets + "/restic.age";
restic.file = ../../secrets/restic.age;
};
system.stateVersion = "20.03";

View File

@@ -1,6 +1,7 @@
{
config,
pkgs,
lib,
inputs,
...
}: let
@@ -46,7 +47,7 @@ in {
};
};
age.secrets.telegram-token-menstruation.file = inputs.secrets + "/telegram-token-menstruation.age";
age.secrets.telegram-token-menstruation.file = ../../secrets/telegram-token-menstruation.age;
systemd.services.menstruation-backend = {
wants = ["network-online.target"];

View File

@@ -2,7 +2,6 @@
lib,
config,
pkgs,
inputs,
...
}: let
lokiConfig = import ./loki.nix;
@@ -242,19 +241,19 @@ in {
age.secrets = {
email-password-cock = {
file = inputs.secrets + "/email-password-cock.age";
file = ../../../secrets/email-password-cock.age;
owner = "grafana";
group = "grafana";
mode = "440";
};
grafana-password-admin = {
file = inputs.secrets + "/grafana-password-admin.age";
file = ../../../secrets/grafana-password-admin.age;
owner = "grafana";
group = "grafana";
mode = "440";
};
alertmanager-token-reporters = {
file = inputs.secrets + "/alertmanager-token-reporters.age";
file = ../../../secrets/alertmanager-token-reporters.age;
owner = "prometheus";
group = "prometheus";
mode = "440";

View File

@@ -1,7 +1,6 @@
{
pkgs,
config,
inputs,
lib,
...
}: let
@@ -9,13 +8,13 @@
in {
age.secrets = {
nextcloud-password-database = {
file = inputs.secrets + "/nextcloud-password-database.age";
file = ../../secrets/nextcloud-password-database.age;
owner = "nextcloud";
group = "nextcloud";
mode = "440";
};
nextcloud-password-admin = {
file = inputs.secrets + "/nextcloud-password-admin.age";
file = ../../secrets/nextcloud-password-admin.age;
owner = "nextcloud";
group = "nextcloud";
mode = "440";

View File

@@ -1,5 +1,5 @@
{
inputs,
pkgs,
config,
...
}: {
@@ -11,7 +11,7 @@
};
age.secrets.onlyoffice-key = {
file = inputs.secrets + "/onlyoffice-jwt-key.age";
file = ../../secrets/onlyoffice-jwt-key.age;
owner = "onlyoffice";
};

View File

@@ -45,7 +45,7 @@ in {
};
};
age.secrets.maxmind-license-key.file = inputs.secrets + "/maxmind-license-key.age";
age.secrets.maxmind-license-key.file = ../../secrets/maxmind-license-key.age;
niveum.passport.services = [
{

View File

@@ -1,5 +1,6 @@
{
inputs,
pkgs,
lib,
config,
...
}: let
@@ -18,7 +19,7 @@ in {
};
};
age.secrets.miniflux-credentials.file = inputs.secrets + "/miniflux-credentials.age";
age.secrets.miniflux-credentials.file = ../../secrets/miniflux-credentials.age;
services.postgresqlBackup = {
enable = true;

View File

@@ -1,7 +1,7 @@
{
lib,
pkgs,
inputs,
config,
...
}: let
inherit (import ../../lib) kieran;
@@ -205,7 +205,7 @@ in {
};
age.secrets.weechat-sec = {
file = inputs.secrets + "/weechat-sec.conf.age";
file = ../../secrets/weechat-sec.conf.age;
path = "/var/lib/weechat/sec.conf";
owner = "weechat";
group = "weechat";

View File

@@ -1,4 +1,8 @@
{inputs, ...}: let
{
config,
pkgs,
...
}: let
inherit (import ../../lib) retiolumAddresses;
in {
imports = [
@@ -12,19 +16,19 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/manakish-retiolum-privateKey-rsa.age";
file = ../../secrets/manakish-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/manakish-retiolum-privateKey-ed25519.age";
file = ../../secrets/manakish-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
syncthing-cert.file = inputs.secrets + "/manakish-syncthing-cert.age";
syncthing-key.file = inputs.secrets + "/manakish-syncthing-key.age";
syncthing-cert.file = ../../secrets/manakish-syncthing-cert.age;
syncthing-key.file = ../../secrets/manakish-syncthing-key.age;
};
niveum = {

View File

@@ -1,5 +1,5 @@
{
inputs,
config,
pkgs,
...
}: let
@@ -15,13 +15,13 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/tabula-retiolum-privateKey-rsa.age";
file = ../../secrets/tabula-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/tabula-retiolum-privateKey-ed25519.age";
file = ../../secrets/tabula-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";

View File

@@ -1,5 +1,5 @@
{
inputs,
config,
pkgs,
...
}: let
@@ -15,13 +15,13 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/tahina-retiolum-privateKey-rsa.age";
file = ../../secrets/tahina-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/tahina-retiolum-privateKey-ed25519.age";
file = ../../secrets/tahina-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";

View File

@@ -1,7 +1,7 @@
{
config,
pkgs,
inputs,
lib,
...
}: let
inherit (import ../../lib) retiolumAddresses restic;
@@ -31,18 +31,18 @@ in {
age.secrets = {
retiolum-rsa = {
file = inputs.secrets + "/zaatar-retiolum-privateKey-rsa.age";
file = ../../secrets/zaatar-retiolum-privateKey-rsa.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
retiolum-ed25519 = {
file = inputs.secrets + "/zaatar-retiolum-privateKey-ed25519.age";
file = ../../secrets/zaatar-retiolum-privateKey-ed25519.age;
mode = "400";
owner = "tinc.retiolum";
group = "tinc.retiolum";
};
restic.file = inputs.secrets + "/restic.age";
restic.file = ../../secrets/restic.age;
};
services.restic.backups.moodle-dl = {

View File

@@ -2,7 +2,6 @@
config,
pkgs,
lib,
inputs,
...
}: let
moodle-dl-package = pkgs.moodle-dl.overrideAttrs (old:
@@ -14,14 +13,14 @@ in {
age.secrets = {
/*
moodle-dl-tokens = {
file = inputs.secrets + "/zaatar-moodle-dl-tokens.json.age";
file = ../../secrets/zaatar-moodle-dl-tokens.json.age;
owner = "moodle-dl";
group = "moodle-dl";
mode = "400";
};
*/
moodle-dl-basicAuth = {
file = inputs.secrets + "/zaatar-moodle-dl-basicAuth.age";
file = ../../secrets/zaatar-moodle-dl-basicAuth.age;
owner = "nginx";
group = "nginx";
mode = "400";

View File

@@ -2,7 +2,6 @@
config,
pkgs,
lib,
inputs,
...
}: let
firewall = (import ../../lib).firewall lib;
@@ -103,14 +102,14 @@ in {
age.secrets = {
ympd-basicAuth = {
file = inputs.secrets + "/zaatar-ympd-basicAuth.age";
file = ../../secrets/zaatar-ympd-basicAuth.age;
owner = "nginx";
group = "nginx";
mode = "400";
};
syncthing-cert.file = inputs.secrets + "/zaatar-syncthing-cert.age";
syncthing-key.file = inputs.secrets + "/zaatar-syncthing-key.age";
di-fm-key.file = inputs.secrets + "/di-fm-key.age";
syncthing-cert.file = ../../secrets/zaatar-syncthing-cert.age;
syncthing-key.file = ../../secrets/zaatar-syncthing-key.age;
di-fm-key.file = ../../secrets/di-fm-key.age;
};
services.nginx = {

View File

@@ -1,8 +1,4 @@
{
config,
inputs,
...
}: {
{config, ...}: {
services.spotifyd = {
enable = true;
settings = {
@@ -25,8 +21,8 @@
};
age.secrets = {
spotify-username.file = inputs.secrets + "/spotify-username.age";
spotify-password.file = inputs.secrets + "/spotify-password.age";
spotify-username.file = ../../secrets/spotify-username.age;
spotify-password.file = ../../secrets/spotify-password.age;
};
# ref https://github.com/NixOS/nixpkgs/issues/71362#issuecomment-753461502