Compare commits
No commits in common. "sway-systemd" and "main" have entirely different histories.
sway-syste
...
main
264 changed files with 5740 additions and 4857 deletions
9
.editorconfig
Normal file
9
.editorconfig
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
end_of_line = lf
|
||||||
|
charset = utf-8
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
insert_final_newline = true
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
node_modules/
|
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -1,3 +0,0 @@
|
||||||
[submodule "dotdrop"]
|
|
||||||
path = dotdrop
|
|
||||||
url = https://github.com/deadc0de6/dotdrop.git
|
|
50
.husky/pre-commit
Executable file
50
.husky/pre-commit
Executable file
|
@ -0,0 +1,50 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Source husky
|
||||||
|
# shellcheck disable=SC1091
|
||||||
|
. "$(dirname -- "$0")/_/husky.sh"
|
||||||
|
|
||||||
|
echo "FunctionalHacker's dotfile pre-commit hook start"
|
||||||
|
printf "Using shell: %s \n" "$(readlink /proc/$$/exe)"
|
||||||
|
|
||||||
|
# All staged files
|
||||||
|
staged_files=$(git diff --name-only --cached --diff-filter=d)
|
||||||
|
|
||||||
|
# Run taplo on staged TOML files
|
||||||
|
staged_toml=$(echo "$staged_files" | grep '.toml$' || true)
|
||||||
|
num_staged_toml=$(echo "$staged_toml" | grep -vce '^$' || true)
|
||||||
|
if [ "$num_staged_toml" -gt 0 ]; then
|
||||||
|
printf '\nFormatting %s staged TOML files with taplo\n' "$num_staged_toml"
|
||||||
|
taplo format "$staged_toml"
|
||||||
|
printf "Re-staging\n"
|
||||||
|
git add $staged_toml
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Run lua-format on staged Lua files
|
||||||
|
staged_lua=$(echo "$staged_files" | grep '.lua$' || true)
|
||||||
|
num_staged_lua=$(echo "$staged_lua" | grep -vce '^$' || true)
|
||||||
|
if [ "$num_staged_lua" -gt 0 ]; then
|
||||||
|
printf '\nFormatting %s staged Lua files with stylua\n' "$num_staged_lua"
|
||||||
|
|
||||||
|
for file in $staged_lua; do
|
||||||
|
stylua "$file"
|
||||||
|
done
|
||||||
|
|
||||||
|
printf "Re-staging\n\n"
|
||||||
|
git add $staged_lua
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Run shfmt on staged shell scripts
|
||||||
|
staged_sh=$(echo "$staged_files" | grep -E '(.sh$|pre-commit)' || true)
|
||||||
|
num_staged_sh=$(echo "$staged_sh" | grep -vce '^$' || true)
|
||||||
|
if [ "$num_staged_sh" -gt 0 ]; then
|
||||||
|
printf '\nFormatting %s staged shell scripts with shfmt\n' "$num_staged_sh"
|
||||||
|
shfmt -w $staged_sh
|
||||||
|
printf "Re-staging\n\n"
|
||||||
|
git add $staged_sh
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Run prettier on all other staged files
|
||||||
|
# that are supported
|
||||||
|
printf "\nRunning prettier on all supported files\n"
|
||||||
|
npx pretty-quick --staged
|
1
.ignore
Normal file
1
.ignore
Normal file
|
@ -0,0 +1 @@
|
||||||
|
dotdrop/
|
3
.prettierignore
Normal file
3
.prettierignore
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
package-lock.json
|
||||||
|
lazy-lock.json
|
||||||
|
dotdrop/
|
4
.prettierrc.toml
Normal file
4
.prettierrc.toml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
"$schema" = "https://json.schemastore.org/prettierrc.json"
|
||||||
|
trailingComma = "es5"
|
||||||
|
singleQuote = true
|
||||||
|
tabWidth = 2
|
21
LICENSE
21
LICENSE
|
@ -1,21 +0,0 @@
|
||||||
MIT License
|
|
||||||
|
|
||||||
Copyright (c) 2019 Marko Korhonen
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
14
LICENSE.adoc
Normal file
14
LICENSE.adoc
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
== The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) {localyear} Marko Korhonen
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”),
|
||||||
|
to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||||
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
23
README.adoc
Normal file
23
README.adoc
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
= FunctionalHacker's dotfiles
|
||||||
|
|
||||||
|
image:https://i.imgur.com/lz1Q4Zz.png?raw=true%22[screenshot of my
|
||||||
|
setup]
|
||||||
|
|
||||||
|
My personal dotfiles for my workstations, mostly for easy access for
|
||||||
|
myself but feel free to steal them for yourself!
|
||||||
|
|
||||||
|
I’m using https://github.com/deadc0de6/dotdrop[dotdrop] to manage and
|
||||||
|
ease deployment of my dotfiles.
|
||||||
|
|
||||||
|
== Mirrors
|
||||||
|
|
||||||
|
This repository lives at https://git.korhonen.cc/FunctionalHacker/dotfiles[my git server],
|
||||||
|
but it is also mirrored to:
|
||||||
|
|
||||||
|
* https://gitlab.com/FunctionalHacker/dotfiles[GitLab]
|
||||||
|
* https://github.com/FunctionalHacker/dotfiles[GitHub]
|
||||||
|
* https://bitbucket.org/FunctionalHacker/dotfiles[Bitbucket]
|
||||||
|
* https://codeberg.org/FunctionalHacker/dotfiles[codeberg]
|
||||||
|
|
||||||
|
If you have any ideas for improvements, questions or anything of this
|
||||||
|
sort, you can open an issue or a pull request at any of the mirrors.
|
16
README.md
16
README.md
|
@ -1,16 +0,0 @@
|
||||||
# FunctionalHacker's dotfiles
|
|
||||||

|
|
||||||
|
|
||||||
My personal dotfiles for my workstations, mostly for easy access for myself
|
|
||||||
but feel free to steal them for yourself!
|
|
||||||
|
|
||||||
I'm using [dotdrop](https://github.com/deadc0de6/dotdrop) to manage and ease deployment of my dotfiles.
|
|
||||||
|
|
||||||
## Mirrors
|
|
||||||
This repository lives at [My git server](https://git.korhonen.cc/FunctionalHacker/dotfiles), but it is also mirrored to:
|
|
||||||
- [GitLab](https://gitlab.com/FunctionalHacker/dotfiles)
|
|
||||||
- [GitHub](https://github.com/FunctionalHacker/dotfiles)
|
|
||||||
- [Bitbucket](https://bitbucket.org/FunctionalHacker/dotfiles)
|
|
||||||
- [codeberg](https://codeberg.org/FunctionalHacker/dotfiles)
|
|
||||||
|
|
||||||
If you have any ideas for improvements, questions or anything of this sort, you can open an issue or a pull request in either my git server (registrations open for anyone), or any of the mirrors.
|
|
282
config-root.toml
Normal file
282
config-root.toml
Normal file
|
@ -0,0 +1,282 @@
|
||||||
|
[actions]
|
||||||
|
mkinitcpio = "mkinitcpio -P"
|
||||||
|
|
||||||
|
[config]
|
||||||
|
backup = true
|
||||||
|
banner = true
|
||||||
|
create = true
|
||||||
|
dotpath = "root"
|
||||||
|
ignoreempty = false
|
||||||
|
keepdot = true
|
||||||
|
link_dotfile_default = "nolink"
|
||||||
|
link_on_import = "nolink"
|
||||||
|
longkey = false
|
||||||
|
showdiff = false
|
||||||
|
workdir = "~/.config/sdotdrop"
|
||||||
|
|
||||||
|
[dotfiles."f_60-uinput-permissions.rules"]
|
||||||
|
dst = "/etc/udev/rules.d/60-uinput-permissions.rules"
|
||||||
|
src = "etc/udev/rules.d/60-uinput-permissions.rules"
|
||||||
|
|
||||||
|
[dotfiles."f_yubikey_udev.rules"]
|
||||||
|
dst = "/etc/udev/rules.d/20-yubikey.rules"
|
||||||
|
src = "etc/udev/rules.d/20-yubikey.rules"
|
||||||
|
|
||||||
|
[dotfiles.d_bin]
|
||||||
|
dst = "/usr/local/bin"
|
||||||
|
src = "usr/local/bin"
|
||||||
|
|
||||||
|
[dotfiles.d_network]
|
||||||
|
src = "etc/systemd/network"
|
||||||
|
dst = "/etc/systemd/network"
|
||||||
|
|
||||||
|
[dotfiles."f_networkd.conf"]
|
||||||
|
src = "etc/systemd/networkd.conf"
|
||||||
|
dst = "/etc/systemd/networkd.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_99-sysctl.conf"]
|
||||||
|
dst = "/etc/sysctl.d/99-sysctl.conf"
|
||||||
|
src = "etc/sysctl.d/99-sysctl.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_adb.service"]
|
||||||
|
dst = "/etc/systemd/system/adb.service"
|
||||||
|
src = "etc/systemd/system/adb.service"
|
||||||
|
|
||||||
|
[dotfiles."f_clamd.conf"]
|
||||||
|
dst = "/etc/clamav/clamd.conf"
|
||||||
|
src = "etc/clamav/clamd.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_cryptissue]
|
||||||
|
dst = "/etc/cryptissue"
|
||||||
|
src = "etc/cryptissue"
|
||||||
|
|
||||||
|
[dotfiles."f_detected.sh"]
|
||||||
|
dst = "/etc/clamav/detected.sh"
|
||||||
|
src = "etc/clamav/detected.sh"
|
||||||
|
|
||||||
|
[dotfiles."f_freetype2.sh"]
|
||||||
|
dst = "/etc/profile.d/freetype2.sh"
|
||||||
|
src = "etc/profile.d/freetype2.sh"
|
||||||
|
|
||||||
|
[dotfiles."f_fonts.conf"]
|
||||||
|
dst = "/etc/fonts/local.conf"
|
||||||
|
src = "etc/fonts/local.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_locale.conf"]
|
||||||
|
dst = "/etc/locale.conf"
|
||||||
|
src = "etc/locale.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_locale.gen"]
|
||||||
|
dst = "/etc/locale.gen"
|
||||||
|
src = "etc/locale.gen"
|
||||||
|
|
||||||
|
[dotfiles."f_logind.conf"]
|
||||||
|
dst = "/etc/systemd/logind.conf"
|
||||||
|
src = "etc/systemd/logind.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_bluetooth.conf"]
|
||||||
|
dst = "/etc/bluetooth/main.conf"
|
||||||
|
src = "etc/bluetooth/main.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_pacman.conf"]
|
||||||
|
dst = "/etc/pacman.conf"
|
||||||
|
src = "etc/pacman.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_pacman_zsh_hook]
|
||||||
|
dst = "/etc/pacman.d/hooks/zsh.hook"
|
||||||
|
src = "etc/pacman.d/hooks/zsh.hook"
|
||||||
|
|
||||||
|
[dotfiles."f_plymouthd.conf"]
|
||||||
|
src = "etc/plymouth/plymouthd.conf"
|
||||||
|
dst = "/etc/plymouth/plymouthd.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_sshd_config]
|
||||||
|
dst = "/etc/ssh/sshd_config"
|
||||||
|
src = "etc/ssh/sshd_config"
|
||||||
|
|
||||||
|
[dotfiles."f_welcomemessage.conf"]
|
||||||
|
dst = "/etc/welcomemessage.conf"
|
||||||
|
src = "etc/welcomemessage.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_99-conbee-usb-serial.rules"]
|
||||||
|
src = "etc/udev/rules.d/99-conbee-usb-serial.rules"
|
||||||
|
dst = "/etc/udev/rules.d/99-conbee-usb-serial.rules"
|
||||||
|
|
||||||
|
[dotfiles."f_99-lowbat.rules"]
|
||||||
|
src = "etc/udev/rules.d/99-lowbat.rules"
|
||||||
|
dst = "/etc/udev/rules.d/99-lowbat.rules"
|
||||||
|
|
||||||
|
[dotfiles."f_sleep.conf"]
|
||||||
|
src = "etc/systemd/sleep.conf"
|
||||||
|
dst = "/etc/systemd/sleep.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_fstab]
|
||||||
|
src = "etc/fstab"
|
||||||
|
dst = "/etc/fstab"
|
||||||
|
|
||||||
|
[dotfiles.f_ignore]
|
||||||
|
src = ".ignore"
|
||||||
|
dst = "/.ignore"
|
||||||
|
|
||||||
|
[dotfiles."f_mkinitcpio.conf"]
|
||||||
|
src = "etc/mkinitcpio.conf"
|
||||||
|
dst = "/etc/mkinitcpio.conf"
|
||||||
|
actions = ["mkinitcpio"]
|
||||||
|
|
||||||
|
[dotfiles."f_vconsole.conf"]
|
||||||
|
src = "etc/vconsole.conf"
|
||||||
|
dst = "/etc/vconsole.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_20-quiet-printk.conf"]
|
||||||
|
src = "etc/sysctl.d/20-quiet-printk.conf"
|
||||||
|
dst = "/etc/sysctl.d/20-quiet-printk.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_system.conf"]
|
||||||
|
src = "etc/systemd/system.conf"
|
||||||
|
dst = "/etc/systemd/system.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_cpupower]
|
||||||
|
src = "etc/default/cpupower"
|
||||||
|
dst = "/etc/default/cpupower"
|
||||||
|
|
||||||
|
[dotfiles."f_pacserve.service.conf"]
|
||||||
|
src = "etc/pacserve/pacserve.service.conf"
|
||||||
|
dst = "/etc/pacserve/pacserve.service.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_mkinitcpio_linux.preset"]
|
||||||
|
src = "etc/mkinitcpio.d/linux.preset"
|
||||||
|
dst = "/etc/mkinitcpio.d/linux.preset"
|
||||||
|
|
||||||
|
[dotfiles.f_cmdline]
|
||||||
|
src = "etc/kernel/cmdline"
|
||||||
|
dst = "/etc/kernel/cmdline"
|
||||||
|
actions = ["mkinitcpio"]
|
||||||
|
|
||||||
|
[dotfiles."f_timesyncd.conf"]
|
||||||
|
src = "etc/systemd/timesyncd.conf"
|
||||||
|
dst = "/etc/systemd/timesyncd.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_sudoers_pacman]
|
||||||
|
src = "etc/sudoers.d/pacman"
|
||||||
|
dst = "/etc/sudoers.d/pacman"
|
||||||
|
|
||||||
|
[dotfiles."f_doas.conf"]
|
||||||
|
src = "etc/doas.conf"
|
||||||
|
dst = "/etc/doas.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_flexo.toml"]
|
||||||
|
src = "etc/flexo/flexo.toml"
|
||||||
|
dst = "/etc/flexo/flexo.toml"
|
||||||
|
|
||||||
|
[profiles.locale]
|
||||||
|
dotfiles = ["f_locale.conf", "f_locale.gen"]
|
||||||
|
|
||||||
|
[profiles.pacman]
|
||||||
|
dotfiles = [
|
||||||
|
"f_pacman.conf",
|
||||||
|
"f_pacman_zsh_hook",
|
||||||
|
"f_pacserve.service.conf",
|
||||||
|
"f_sudoers_pacman",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.Mirkwood]
|
||||||
|
dotfiles = [
|
||||||
|
"d_bin",
|
||||||
|
"f_20-quiet-printk.conf",
|
||||||
|
"f_60-uinput-permissions.rules",
|
||||||
|
"f_99-lowbat.rules",
|
||||||
|
"f_adb.service",
|
||||||
|
"f_bluetooth.conf",
|
||||||
|
"f_cmdline",
|
||||||
|
"f_cpupower",
|
||||||
|
"f_cryptissue",
|
||||||
|
"f_doas.conf",
|
||||||
|
"f_fonts.conf",
|
||||||
|
"f_freetype2.sh",
|
||||||
|
"f_ignore",
|
||||||
|
"f_logind.conf",
|
||||||
|
"f_mkinitcpio.conf",
|
||||||
|
"f_mkinitcpio_linux.preset",
|
||||||
|
"f_plymouthd.conf",
|
||||||
|
"f_sshd_config",
|
||||||
|
"f_system.conf",
|
||||||
|
"f_timesyncd.conf",
|
||||||
|
"f_welcomemessage.conf",
|
||||||
|
"f_flexo.toml",
|
||||||
|
]
|
||||||
|
include = ["locale", "pacman"]
|
||||||
|
|
||||||
|
[profiles.VentoyArch]
|
||||||
|
dotfiles = [
|
||||||
|
"d_bin",
|
||||||
|
"f_cmdline",
|
||||||
|
"f_doas.conf",
|
||||||
|
"f_fonts.conf",
|
||||||
|
"f_freetype2.sh",
|
||||||
|
"f_ignore",
|
||||||
|
"f_logind.conf",
|
||||||
|
"f_mkinitcpio.conf",
|
||||||
|
"f_mkinitcpio_linux.preset",
|
||||||
|
"f_plymouthd.conf",
|
||||||
|
"f_system.conf",
|
||||||
|
"f_timesyncd.conf",
|
||||||
|
]
|
||||||
|
include = ["locale", "pacman"]
|
||||||
|
|
||||||
|
[profiles.Shire]
|
||||||
|
dotfiles = [
|
||||||
|
"d_bin",
|
||||||
|
"f_20-quiet-printk.conf",
|
||||||
|
"f_60-uinput-permissions.rules",
|
||||||
|
"f_99-lowbat.rules",
|
||||||
|
"f_adb.service",
|
||||||
|
"f_bluetooth.conf",
|
||||||
|
"f_cmdline",
|
||||||
|
"f_cpupower",
|
||||||
|
"f_doas.conf",
|
||||||
|
"f_fonts.conf",
|
||||||
|
"f_freetype2.sh",
|
||||||
|
"f_ignore",
|
||||||
|
"f_logind.conf",
|
||||||
|
"f_mkinitcpio.conf",
|
||||||
|
"f_mkinitcpio_linux.preset",
|
||||||
|
"f_plymouthd.conf",
|
||||||
|
"f_sshd_config",
|
||||||
|
"f_system.conf",
|
||||||
|
]
|
||||||
|
include = ["locale", "pacman"]
|
||||||
|
|
||||||
|
[profiles.Moria]
|
||||||
|
include = ["locale", "pacman"]
|
||||||
|
dotfiles = [
|
||||||
|
"f_99-sysctl.conf",
|
||||||
|
"f_cmdline",
|
||||||
|
"f_cpupower",
|
||||||
|
"f_doas.conf",
|
||||||
|
"f_adb.service",
|
||||||
|
"f_mkinitcpio.conf",
|
||||||
|
"f_mkinitcpio_linux.preset",
|
||||||
|
"f_plymouthd.conf",
|
||||||
|
"f_sshd_config",
|
||||||
|
"f_flexo.toml",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.Tirion]
|
||||||
|
dotfiles = ["f_doas.conf", "f_ignore", "f_sshd_config"]
|
||||||
|
|
||||||
|
[profiles.Gondor]
|
||||||
|
include = ["locale", "pacman"]
|
||||||
|
dotfiles = ["f_doas.conf", "f_sshd_config"]
|
||||||
|
|
||||||
|
[profiles.localhost]
|
||||||
|
include = ["locale"]
|
||||||
|
|
||||||
|
[profiles.Edoras]
|
||||||
|
include = ["pacman"]
|
||||||
|
|
||||||
|
[profiles.mko-laptop]
|
||||||
|
dotfiles = ["f_cpupower", "f_doas.conf", "f_timesyncd.conf"]
|
||||||
|
|
||||||
|
[profiles.Evendim]
|
||||||
|
include = ["locale", "pacman"]
|
||||||
|
dotfiles = ["f_doas.conf", "f_sshd_config"]
|
161
config-root.yaml
161
config-root.yaml
|
@ -1,161 +0,0 @@
|
||||||
config:
|
|
||||||
backup: true
|
|
||||||
banner: true
|
|
||||||
create: true
|
|
||||||
dotpath: root
|
|
||||||
ignoreempty: false
|
|
||||||
keepdot: true
|
|
||||||
link_dotfile_default: nolink
|
|
||||||
link_on_import: nolink
|
|
||||||
longkey: false
|
|
||||||
showdiff: false
|
|
||||||
workdir: ~/.config/sdotdrop
|
|
||||||
dotfiles:
|
|
||||||
f_60-uinput-permissions.rules:
|
|
||||||
dst: /etc/udev/rules.d/60-uinput-permissions.rules
|
|
||||||
src: etc/udev/rules.d/60-uinput-permissions.rules
|
|
||||||
d_bin:
|
|
||||||
dst: /usr/local/bin
|
|
||||||
src: usr/local/bin
|
|
||||||
d_network:
|
|
||||||
src: etc/systemd/network
|
|
||||||
dst: /etc/systemd/network
|
|
||||||
f_networkd.conf:
|
|
||||||
src: etc/systemd/networkd.conf
|
|
||||||
dst: /etc/systemd/networkd.conf
|
|
||||||
f_99-sysctl.conf:
|
|
||||||
dst: /etc/sysctl.d/99-sysctl.conf
|
|
||||||
src: etc/sysctl.d/99-sysctl.conf
|
|
||||||
f_adb.service:
|
|
||||||
dst: /etc/systemd/system/adb.service
|
|
||||||
src: etc/systemd/system/adb.service
|
|
||||||
f_clamd.conf:
|
|
||||||
dst: /etc/clamav/clamd.conf
|
|
||||||
src: etc/clamav/clamd.conf
|
|
||||||
f_cryptissue:
|
|
||||||
dst: /etc/cryptissue
|
|
||||||
src: etc/cryptissue
|
|
||||||
f_detected.sh:
|
|
||||||
dst: /etc/clamav/detected.sh
|
|
||||||
src: etc/clamav/detected.sh
|
|
||||||
f_freetype2.sh:
|
|
||||||
dst: /etc/profile.d/freetype2.sh
|
|
||||||
src: etc/profile.d/freetype2.sh
|
|
||||||
f_fonts.conf:
|
|
||||||
dst: /etc/fonts/local.conf
|
|
||||||
src: etc/fonts/local.conf
|
|
||||||
f_locale.conf:
|
|
||||||
dst: /etc/locale.conf
|
|
||||||
src: etc/locale.conf
|
|
||||||
f_locale.gen:
|
|
||||||
dst: /etc/locale.gen
|
|
||||||
src: etc/locale.gen
|
|
||||||
f_logind.conf:
|
|
||||||
dst: /etc/systemd/logind.conf
|
|
||||||
src: etc/systemd/logind.conf
|
|
||||||
f_bluetooth.conf:
|
|
||||||
dst: /etc/bluetooth/main.conf
|
|
||||||
src: etc/bluetooth/main.conf
|
|
||||||
f_pacman.conf:
|
|
||||||
dst: /etc/pacman.conf
|
|
||||||
src: etc/pacman.conf
|
|
||||||
f_sshd_config:
|
|
||||||
dst: /etc/ssh/sshd_config
|
|
||||||
src: etc/ssh/sshd_config
|
|
||||||
f_welcomemessage.conf:
|
|
||||||
dst: /etc/welcomemessage.conf
|
|
||||||
src: etc/welcomemessage.conf
|
|
||||||
f_getty.conf:
|
|
||||||
src: etc/systemd/system/getty@tty1.service.d/override.conf
|
|
||||||
dst: /etc/systemd/system/getty@tty1.service.d/override.conf
|
|
||||||
f_99-conbee-usb-serial.rules:
|
|
||||||
src: etc/udev/rules.d/99-conbee-usb-serial.rules
|
|
||||||
dst: /etc/udev/rules.d/99-conbee-usb-serial.rules
|
|
||||||
f_99-lowbat.rules:
|
|
||||||
src: etc/udev/rules.d/99-lowbat.rules
|
|
||||||
dst: /etc/udev/rules.d/99-lowbat.rules
|
|
||||||
f_sleep.conf:
|
|
||||||
src: etc/systemd/sleep.conf
|
|
||||||
dst: /etc/systemd/sleep.conf
|
|
||||||
f_fstab:
|
|
||||||
src: etc/fstab
|
|
||||||
dst: /etc/fstab
|
|
||||||
f_ignore:
|
|
||||||
src: .ignore
|
|
||||||
dst: /.ignore
|
|
||||||
f_mkinitcpio.conf:
|
|
||||||
src: etc/mkinitcpio.conf
|
|
||||||
dst: /etc/mkinitcpio.conf
|
|
||||||
f_vconsole.conf:
|
|
||||||
src: etc/vconsole.conf
|
|
||||||
dst: /etc/vconsole.conf
|
|
||||||
f_20-quiet-printk.conf:
|
|
||||||
src: etc/sysctl.d/20-quiet-printk.conf
|
|
||||||
dst: /etc/sysctl.d/20-quiet-printk.conf
|
|
||||||
f_system.conf:
|
|
||||||
src: etc/systemd/system.conf
|
|
||||||
dst: /etc/systemd/system.conf
|
|
||||||
f_cpupower:
|
|
||||||
src: etc/default/cpupower
|
|
||||||
dst: /etc/default/cpupower
|
|
||||||
f_pacserve.service.conf:
|
|
||||||
src: etc/pacserve/pacserve.service.conf
|
|
||||||
dst: /etc/pacserve/pacserve.service.conf
|
|
||||||
profiles:
|
|
||||||
Network:
|
|
||||||
dotfiles:
|
|
||||||
- d_network
|
|
||||||
- f_networkd.conf
|
|
||||||
Locale:
|
|
||||||
dotfiles:
|
|
||||||
- f_locale.conf
|
|
||||||
- f_locale.gen
|
|
||||||
Pacman:
|
|
||||||
dotfiles:
|
|
||||||
- f_pacman.conf
|
|
||||||
- f_pacserve.service.conf
|
|
||||||
Mirkwood:
|
|
||||||
dotfiles:
|
|
||||||
- f_getty.conf
|
|
||||||
- f_cryptissue
|
|
||||||
- f_welcomemessage.conf
|
|
||||||
- d_bin
|
|
||||||
- f_adb.service
|
|
||||||
- f_bluetooth.conf
|
|
||||||
- f_sshd_config
|
|
||||||
- f_logind.conf
|
|
||||||
- f_60-uinput-permissions.rules
|
|
||||||
- f_freetype2.sh
|
|
||||||
- f_fonts.conf
|
|
||||||
- f_99-lowbat.rules
|
|
||||||
- f_ignore
|
|
||||||
- f_mkinitcpio.conf
|
|
||||||
- f_vconsole.conf
|
|
||||||
- f_20-quiet-printk.conf
|
|
||||||
- f_system.conf
|
|
||||||
- f_cpupower
|
|
||||||
include:
|
|
||||||
- Locale
|
|
||||||
- Pacman
|
|
||||||
- Network
|
|
||||||
Moria:
|
|
||||||
include:
|
|
||||||
- Locale
|
|
||||||
- Pacman
|
|
||||||
- Network
|
|
||||||
dotfiles:
|
|
||||||
- f_sshd_config
|
|
||||||
- f_99-sysctl.conf
|
|
||||||
- f_cpupower
|
|
||||||
Gondor:
|
|
||||||
include:
|
|
||||||
- Locale
|
|
||||||
- Pacman
|
|
||||||
dotfiles:
|
|
||||||
- f_sshd_config
|
|
||||||
localhost:
|
|
||||||
include:
|
|
||||||
- Locale
|
|
||||||
Edoras:
|
|
||||||
include:
|
|
||||||
- Pacman
|
|
285
config.toml
Normal file
285
config.toml
Normal file
|
@ -0,0 +1,285 @@
|
||||||
|
#:schema ../../dotdrop-config-schema.json
|
||||||
|
|
||||||
|
[actions]
|
||||||
|
dconf-load = "dconf load / < ~/.config/dconf.ini"
|
||||||
|
kanagawa-compile = "vim +KanagawaCompile +qa"
|
||||||
|
|
||||||
|
[config]
|
||||||
|
backup = true
|
||||||
|
banner = true
|
||||||
|
create = true
|
||||||
|
dotpath = "home"
|
||||||
|
ignoreempty = false
|
||||||
|
keepdot = true
|
||||||
|
link_dotfile_default = "nolink"
|
||||||
|
link_on_import = "nolink"
|
||||||
|
longkey = false
|
||||||
|
showdiff = false
|
||||||
|
workdir = "~/.config/dotdrop"
|
||||||
|
|
||||||
|
[dotfiles.d_systemd]
|
||||||
|
dst = "~/.config/systemd/user"
|
||||||
|
src = ".config/systemd/user"
|
||||||
|
|
||||||
|
[dotfiles.d_mpv]
|
||||||
|
dst = "~/.config/mpv"
|
||||||
|
src = ".config/mpv"
|
||||||
|
|
||||||
|
[dotfiles.d_nvim]
|
||||||
|
dst = "~/.config/nvim"
|
||||||
|
src = ".config/nvim"
|
||||||
|
actions = ["kanagawa-compile"]
|
||||||
|
instignore = ["*-lock.json"]
|
||||||
|
|
||||||
|
[dotfiles."f_abcde.conf"]
|
||||||
|
dst = "~/.abcde.conf"
|
||||||
|
src = ".abcde.conf"
|
||||||
|
|
||||||
|
[dotfiles.d_ssh]
|
||||||
|
dst = "~/.ssh"
|
||||||
|
src = ".ssh"
|
||||||
|
|
||||||
|
[dotfiles.f_beets_config]
|
||||||
|
dst = "~/.config/beets/config.yaml"
|
||||||
|
src = ".config/beets/config.yaml"
|
||||||
|
|
||||||
|
[dotfiles.f_beets_whitelist]
|
||||||
|
dst = "~/.config/beets/whitelist"
|
||||||
|
src = ".config/beets/whitelist"
|
||||||
|
|
||||||
|
[dotfiles.f_gitconfig]
|
||||||
|
dst = "~/.config/git/config"
|
||||||
|
src = ".config/git/config"
|
||||||
|
|
||||||
|
[dotfiles.f_librewolf_overrides]
|
||||||
|
dst = "~/.librewolf/librewolf.overrides.cfg"
|
||||||
|
src = ".librewolf/librewolf.overrides.cfg"
|
||||||
|
|
||||||
|
[dotfiles."f_makepkg.conf"]
|
||||||
|
dst = "~/.config/pacman/makepkg.conf"
|
||||||
|
src = ".config/pacman/makepkg.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_mpd.conf"]
|
||||||
|
dst = "~/.config/mpd/mpd.conf"
|
||||||
|
src = ".config/mpd/mpd.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_mpdris2.conf"]
|
||||||
|
dst = "~/.config/mpDris2/mpDris2.conf"
|
||||||
|
src = ".config/mpDris2/mpDris2.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_ncmpcpp_bindings]
|
||||||
|
dst = "~/.config/ncmpcpp/bindings"
|
||||||
|
src = ".config/ncmpcpp/bindings"
|
||||||
|
|
||||||
|
[dotfiles."f_ranger.conf"]
|
||||||
|
dst = "~/.config/ranger/rc.conf"
|
||||||
|
src = ".config/ranger/rc.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_ranger_commands.py"]
|
||||||
|
dst = "~/.config/ranger/commands.py"
|
||||||
|
src = ".config/ranger/commands.py"
|
||||||
|
|
||||||
|
[dotfiles."f_ssh.conf"]
|
||||||
|
dst = "~/.ssh/config"
|
||||||
|
src = ".ssh/config"
|
||||||
|
|
||||||
|
[dotfiles.f_zprofile]
|
||||||
|
dst = "~/.zprofile"
|
||||||
|
src = ".zprofile"
|
||||||
|
|
||||||
|
[dotfiles.f_zshrc]
|
||||||
|
dst = "~/.zshrc"
|
||||||
|
src = ".zshrc"
|
||||||
|
|
||||||
|
[dotfiles.d_zsh]
|
||||||
|
src = ".config/zsh"
|
||||||
|
dst = "~/.config/zsh"
|
||||||
|
|
||||||
|
[dotfiles."f_fonts.conf"]
|
||||||
|
src = ".config/fontconfig/fonts.conf"
|
||||||
|
dst = "~/.config/fontconfig/fonts.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_ignore]
|
||||||
|
src = ".ignore"
|
||||||
|
dst = "~/.ignore"
|
||||||
|
|
||||||
|
[dotfiles."f_ncmpcpp.conf"]
|
||||||
|
src = ".config/ncmpcpp/config"
|
||||||
|
dst = "~/.config/ncmpcpp/config"
|
||||||
|
|
||||||
|
[dotfiles.f_hushlogin]
|
||||||
|
src = ".hushlogin"
|
||||||
|
dst = "~/.hushlogin"
|
||||||
|
|
||||||
|
[dotfiles."f_paru.conf"]
|
||||||
|
src = ".config/paru/paru.conf"
|
||||||
|
dst = "~/.config/paru/paru.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_foot.ini"]
|
||||||
|
src = ".config/foot/foot.ini"
|
||||||
|
dst = "~/.config/foot/foot.ini"
|
||||||
|
|
||||||
|
[dotfiles."f_gpg-agent.conf"]
|
||||||
|
src = ".gnupg/gpg-agent.conf"
|
||||||
|
dst = "~/.gnupg/gpg-agent.conf"
|
||||||
|
chmod = "600"
|
||||||
|
|
||||||
|
[dotfiles."f_gpg.conf"]
|
||||||
|
src = ".gnupg/gpg.conf"
|
||||||
|
dst = "~/.gnupg/gpg.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_gpg_scdaemon.conf"]
|
||||||
|
src = ".gnupg/scdaemon.conf"
|
||||||
|
dst = "~/.gnupg/scdaemon.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_electron-flags.conf"]
|
||||||
|
src = ".config/electron-flags.conf"
|
||||||
|
dst = "~/.config/electron-flags.conf"
|
||||||
|
|
||||||
|
[dotfiles."f_electron12-flags.conf"]
|
||||||
|
src = ".config/electron12-flags.conf"
|
||||||
|
dst = "~/.config/electron12-flags.conf"
|
||||||
|
|
||||||
|
[dotfiles.f_pam_environment]
|
||||||
|
src = ".pam_environment"
|
||||||
|
dst = "~/.pam_environment"
|
||||||
|
|
||||||
|
[dotfiles."f_dconf.ini"]
|
||||||
|
src = ".config/dconf.ini"
|
||||||
|
dst = "~/.config/dconf.ini"
|
||||||
|
actions = ["dconf-load"]
|
||||||
|
|
||||||
|
[dotfiles."f_docker-config.json"]
|
||||||
|
src = ".docker/config.json"
|
||||||
|
dst = "~/.docker/config.json"
|
||||||
|
chmod = "600"
|
||||||
|
|
||||||
|
[dotfiles.f_npmrc]
|
||||||
|
src = ".npmrc"
|
||||||
|
dst = "~/.npmrc"
|
||||||
|
chmod = "600"
|
||||||
|
|
||||||
|
[dotfiles.f_zellij]
|
||||||
|
src = ".config/zellij/config.kdl"
|
||||||
|
dst = "~/.config/zellij/config.kdl"
|
||||||
|
|
||||||
|
[profiles.pacman]
|
||||||
|
dotfiles = ["f_makepkg.conf", "f_paru.conf"]
|
||||||
|
|
||||||
|
[profiles.terminal]
|
||||||
|
dotfiles = [
|
||||||
|
"d_nvim",
|
||||||
|
"d_ssh",
|
||||||
|
"d_zsh",
|
||||||
|
"f_gitconfig",
|
||||||
|
"f_hushlogin",
|
||||||
|
"f_ignore",
|
||||||
|
"f_ranger.conf",
|
||||||
|
"f_ranger_commands.py",
|
||||||
|
"f_zellij",
|
||||||
|
"f_zshrc",
|
||||||
|
"f_npmrc",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.media]
|
||||||
|
dotfiles = [
|
||||||
|
"d_mpv",
|
||||||
|
"f_abcde.conf",
|
||||||
|
"f_beets_config",
|
||||||
|
"f_beets_whitelist",
|
||||||
|
"f_mpd.conf",
|
||||||
|
"f_mpdris2.conf",
|
||||||
|
"f_ncmpcpp.conf",
|
||||||
|
"f_ncmpcpp_bindings",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.gpg]
|
||||||
|
dotfiles = [
|
||||||
|
"f_gpg-agent.conf",
|
||||||
|
"f_gpg.conf",
|
||||||
|
"f_gpg_scdaemon.conf",
|
||||||
|
"f_pam_environment",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.Mirkwood]
|
||||||
|
include = ["pacman", "terminal", "media", "gpg"]
|
||||||
|
dotfiles = [
|
||||||
|
"f_librewolf_overrides",
|
||||||
|
"f_dconf.ini",
|
||||||
|
"f_docker-config.json",
|
||||||
|
"f_fonts.conf",
|
||||||
|
"f_foot.ini",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.Mirkwood.variables]
|
||||||
|
wayland = true
|
||||||
|
|
||||||
|
[profiles.VentoyArch]
|
||||||
|
include = ["pacman", "terminal", "media", "gpg"]
|
||||||
|
dotfiles = [
|
||||||
|
"f_dconf.ini",
|
||||||
|
"f_fonts.conf",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.VentoyArch.variables]
|
||||||
|
wayland = true
|
||||||
|
|
||||||
|
[profiles.Shire]
|
||||||
|
include = ["pacman", "terminal", "media", "gpg"]
|
||||||
|
dotfiles = [
|
||||||
|
"f_dconf.ini",
|
||||||
|
"f_fonts.conf",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.Shire.variables]
|
||||||
|
wayland = true
|
||||||
|
|
||||||
|
[profiles.Moria]
|
||||||
|
include = ["pacman", "terminal", "media", "gpg"]
|
||||||
|
dotfiles = [
|
||||||
|
"f_librewolf_overrides",
|
||||||
|
"f_dconf.ini",
|
||||||
|
"f_zprofile",
|
||||||
|
"f_fonts.conf",
|
||||||
|
"d_systemd",
|
||||||
|
]
|
||||||
|
|
||||||
|
[profiles.Moria.variables]
|
||||||
|
wayland = true
|
||||||
|
|
||||||
|
[profiles.Tirion]
|
||||||
|
include = ["terminal", "gpg"]
|
||||||
|
|
||||||
|
[profiles.Gondor]
|
||||||
|
include = ["pacman", "terminal"]
|
||||||
|
|
||||||
|
[profiles.mko-laptop]
|
||||||
|
include = ["terminal", "gpg"]
|
||||||
|
dotfiles = ["f_librewolf_overrides", "f_dconf.ini", "d_systemd"]
|
||||||
|
|
||||||
|
[profiles.mko-laptop.variables]
|
||||||
|
wayland = true
|
||||||
|
|
||||||
|
[profiles.Isengard]
|
||||||
|
include = ["terminal"]
|
||||||
|
|
||||||
|
[profiles.Isengard.variables]
|
||||||
|
distro_id = "termux"
|
||||||
|
|
||||||
|
[profiles.Edoras]
|
||||||
|
include = ["terminal"]
|
||||||
|
|
||||||
|
[profiles.TakamakiPC]
|
||||||
|
include = ["terminal"]
|
||||||
|
|
||||||
|
[profiles.TakamakiPC.variables]
|
||||||
|
wayland = false
|
||||||
|
|
||||||
|
[profiles.localhost]
|
||||||
|
include = ["terminal"]
|
||||||
|
|
||||||
|
[profiles.ViiruJaTeippi]
|
||||||
|
include = ["terminal"]
|
||||||
|
|
||||||
|
[profiles.Evendim]
|
||||||
|
include = ["terminal", "pacman"]
|
257
config.yaml
257
config.yaml
|
@ -1,257 +0,0 @@
|
||||||
actions:
|
|
||||||
vim-plug: nvim +PlugInstall +qall
|
|
||||||
config:
|
|
||||||
backup: true
|
|
||||||
banner: true
|
|
||||||
create: true
|
|
||||||
dotpath: home
|
|
||||||
ignoreempty: false
|
|
||||||
keepdot: true
|
|
||||||
link_dotfile_default: nolink
|
|
||||||
link_on_import: nolink
|
|
||||||
longkey: false
|
|
||||||
showdiff: false
|
|
||||||
workdir: ~/.config/dotdrop
|
|
||||||
dotfiles:
|
|
||||||
d_systemd:
|
|
||||||
dst: ~/.config/systemd/user
|
|
||||||
src: .config/systemd/user
|
|
||||||
d_mpv:
|
|
||||||
dst: ~/.config/mpv
|
|
||||||
src: .config/mpv
|
|
||||||
d_neomutt:
|
|
||||||
dst: ~/.config/neomutt
|
|
||||||
src: .config/neomutt
|
|
||||||
d_imapnotify:
|
|
||||||
dst: ~/.config/imapnotify
|
|
||||||
src: .config/imapnotify
|
|
||||||
f_init.vim:
|
|
||||||
dst: ~/.config/nvim/init.vim
|
|
||||||
src: .config/nvim/init.vim
|
|
||||||
d_nvim_config:
|
|
||||||
actions:
|
|
||||||
- vim-plug
|
|
||||||
dst: ~/.config/nvim/conf.d
|
|
||||||
src: .config/nvim/conf.d
|
|
||||||
f_user-dirs.dirs:
|
|
||||||
dst: ~/.config/user-dirs.dirs
|
|
||||||
src: .config/user-dirs.dirs
|
|
||||||
f_coc-settings.json:
|
|
||||||
dst: ~/.config/nvim/coc-settings.json
|
|
||||||
src: .config/nvim/coc-settings.json
|
|
||||||
d_sway:
|
|
||||||
dst: ~/.config/sway
|
|
||||||
src: .config/sway
|
|
||||||
d_waybar:
|
|
||||||
dst: ~/.config/waybar
|
|
||||||
src: .config/waybar
|
|
||||||
d_wofi:
|
|
||||||
src: .config/wofi
|
|
||||||
dst: ~/.config/wofi
|
|
||||||
f_abcde.conf:
|
|
||||||
dst: ~/.abcde.conf
|
|
||||||
src: .abcde.conf
|
|
||||||
f_mbsyncrc:
|
|
||||||
dst: ~/.mbsyncrc
|
|
||||||
src: .mbsyncrc
|
|
||||||
f_alacritty.yml:
|
|
||||||
dst: ~/.config/alacritty/alacritty.yml
|
|
||||||
src: .config/alacritty/alacritty.yml
|
|
||||||
f_authorized_keys:
|
|
||||||
dst: ~/.ssh/authorized_keys
|
|
||||||
src: .ssh/authorized_keys
|
|
||||||
f_beets_config:
|
|
||||||
dst: ~/.config/beets/config.yaml
|
|
||||||
src: .config/beets/config.yaml
|
|
||||||
f_beets_whitelist:
|
|
||||||
dst: ~/.config/beets/whitelist
|
|
||||||
src: .config/beets/whitelist
|
|
||||||
f_bspwmrc:
|
|
||||||
dst: ~/.config/bspwm/bspwmrc
|
|
||||||
src: .config/bspwm/bspwmrc
|
|
||||||
f_gitconfig:
|
|
||||||
dst: ~/.gitconfig
|
|
||||||
src: .gitconfig
|
|
||||||
f_libra_config:
|
|
||||||
dst: ~/.config/libra/config.toml
|
|
||||||
src: .config/libra/config.toml
|
|
||||||
f_mailcap:
|
|
||||||
dst: ~/.mailcap
|
|
||||||
src: .mailcap
|
|
||||||
f_makepkg.conf:
|
|
||||||
dst: ~/.config/pacman/makepkg.conf
|
|
||||||
src: .config/pacman/makepkg.conf
|
|
||||||
f_mako_config:
|
|
||||||
dst: ~/.config/mako/config
|
|
||||||
src: .config/mako/config
|
|
||||||
f_mimeo_associations.txt:
|
|
||||||
dst: ~/.config/mimeo/associations.txt
|
|
||||||
src: .config/mimeo/associations.txt
|
|
||||||
f_mpd.conf:
|
|
||||||
dst: ~/.config/mpd/mpd.conf
|
|
||||||
src: .config/mpd/mpd.conf
|
|
||||||
f_mpdris2.conf:
|
|
||||||
dst: ~/.config/mpDris2/mpDris2.conf
|
|
||||||
src: .config/mpDris2/mpDris2.conf
|
|
||||||
f_mpdscribble.conf:
|
|
||||||
dst: ~/.mpdscribble/mpdscribble.conf
|
|
||||||
src: .mpdscribble/mpdscribble.conf
|
|
||||||
f_ncmpcpp_bindings:
|
|
||||||
dst: ~/.config/ncmpcpp/bindings
|
|
||||||
src: .config/ncmpcpp/bindings
|
|
||||||
f_ranger.conf:
|
|
||||||
dst: ~/.config/ranger/rc.conf
|
|
||||||
src: .config/ranger/rc.conf
|
|
||||||
f_ranger_commands.py:
|
|
||||||
dst: ~/.config/ranger/commands.py
|
|
||||||
src: .config/ranger/commands.py
|
|
||||||
f_redshift.conf:
|
|
||||||
dst: ~/.config/redshift/redshift.conf
|
|
||||||
src: .config/redshift/redshift.conf
|
|
||||||
f_rtv.cfg:
|
|
||||||
dst: ~/.config/rtv/rtv.cfg
|
|
||||||
src: .config/rtv/rtv.cfg
|
|
||||||
f_ssh.conf:
|
|
||||||
dst: ~/.ssh/config
|
|
||||||
src: .ssh/config
|
|
||||||
f_steam-native.desktop:
|
|
||||||
dst: ~/.local/share/applications/steam-native.desktop
|
|
||||||
src: .local/share/applications/steam-native.desktop
|
|
||||||
f_tdesktop_lang.strings:
|
|
||||||
dst: ~/.config/telegram-desktop/lang.strings
|
|
||||||
src: .config/telegram-desktop/lang.strings
|
|
||||||
f_tmux.conf:
|
|
||||||
dst: ~/.tmux.conf
|
|
||||||
src: .tmux.conf
|
|
||||||
f_youtube-dl_config:
|
|
||||||
dst: ~/.config/youtube-dl/config
|
|
||||||
src: .config/youtube-dl/config
|
|
||||||
f_zathurarc:
|
|
||||||
dst: ~/.config/zathura/zathurarc
|
|
||||||
src: .config/zathura/zathurarc
|
|
||||||
f_zshrc:
|
|
||||||
dst: ~/.zshrc
|
|
||||||
src: .zshrc
|
|
||||||
d_zsh:
|
|
||||||
src: .config/zsh
|
|
||||||
dst: ~/.config/zsh
|
|
||||||
f_fonts.conf:
|
|
||||||
src: .config/fontconfig/fonts.conf
|
|
||||||
dst: ~/.config/fontconfig/fonts.conf
|
|
||||||
f_ripgrep_ignore:
|
|
||||||
src: .ignore
|
|
||||||
dst: ~/.ignore
|
|
||||||
f_nvimpager:
|
|
||||||
src: .config/nvimpager/init.vim
|
|
||||||
dst: ~/.config/nvimpager/init.vim
|
|
||||||
f_ncmpcpp.conf:
|
|
||||||
src: .config/ncmpcpp/config
|
|
||||||
dst: ~/.config/ncmpcpp/config
|
|
||||||
f_hushlogin:
|
|
||||||
src: .hushlogin
|
|
||||||
dst: ~/.hushlogin
|
|
||||||
f_paru.conf:
|
|
||||||
src: .config/paru/paru.conf
|
|
||||||
dst: ~/.config/paru/paru.conf
|
|
||||||
f_msmtp_config:
|
|
||||||
src: .config/msmtp/config
|
|
||||||
dst: ~/.config/msmtp/config
|
|
||||||
f_foot.ini:
|
|
||||||
src: .config/foot/foot.ini
|
|
||||||
dst: ~/.config/foot/foot.ini
|
|
||||||
profiles:
|
|
||||||
base:
|
|
||||||
dotfiles:
|
|
||||||
- d_systemd
|
|
||||||
terminal:
|
|
||||||
dotfiles:
|
|
||||||
- f_nvimpager
|
|
||||||
- f_hushlogin
|
|
||||||
- f_ripgrep_ignore
|
|
||||||
- f_ranger_commands.py
|
|
||||||
- f_rtv.cfg
|
|
||||||
- f_mailcap
|
|
||||||
- d_zsh
|
|
||||||
- f_zshrc
|
|
||||||
- f_tmux.conf
|
|
||||||
- f_ranger.conf
|
|
||||||
- f_ssh.conf
|
|
||||||
- f_authorized_keys
|
|
||||||
- d_nvim_config
|
|
||||||
- f_init.vim
|
|
||||||
- f_coc-settings.json
|
|
||||||
- f_gitconfig
|
|
||||||
- f_alacritty.yml
|
|
||||||
email:
|
|
||||||
dotfiles:
|
|
||||||
- d_neomutt
|
|
||||||
- d_imapnotify
|
|
||||||
- f_mbsyncrc
|
|
||||||
- f_msmtp_config
|
|
||||||
media:
|
|
||||||
dotfiles:
|
|
||||||
- f_beets_config
|
|
||||||
- f_beets_whitelist
|
|
||||||
- f_abcde.conf
|
|
||||||
- d_mpv
|
|
||||||
- f_youtube-dl_config
|
|
||||||
- f_mpd.conf
|
|
||||||
- f_ncmpcpp_bindings
|
|
||||||
- f_ncmpcpp.conf
|
|
||||||
- f_libra_config
|
|
||||||
- f_mpdscribble.conf
|
|
||||||
- f_mpdris2.conf
|
|
||||||
sway:
|
|
||||||
dotfiles:
|
|
||||||
- d_sway
|
|
||||||
- d_waybar
|
|
||||||
- d_wofi
|
|
||||||
- f_mako_config
|
|
||||||
- f_redshift.conf
|
|
||||||
- f_zathurarc
|
|
||||||
- f_mimeo_associations.txt
|
|
||||||
- f_tdesktop_lang.strings
|
|
||||||
- f_fonts.conf
|
|
||||||
Pacman:
|
|
||||||
dotfiles:
|
|
||||||
- f_makepkg.conf
|
|
||||||
- f_paru.conf
|
|
||||||
Mirkwood:
|
|
||||||
include:
|
|
||||||
- base
|
|
||||||
- terminal
|
|
||||||
- email
|
|
||||||
- media
|
|
||||||
- sway
|
|
||||||
- Pacman
|
|
||||||
dotfiles:
|
|
||||||
- f_paru.conf
|
|
||||||
- f_user-dirs.dirs
|
|
||||||
- f_gitconfig
|
|
||||||
- f_foot.ini
|
|
||||||
Moria:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
||||||
- media
|
|
||||||
- Pacman
|
|
||||||
Gondor:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
||||||
- Pacman
|
|
||||||
mko-laptop:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
||||||
Edoras:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
||||||
- Pacman
|
|
||||||
TakamakiPC:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
||||||
- Pacman
|
|
||||||
localhost:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
||||||
ViiruJaTeippi:
|
|
||||||
include:
|
|
||||||
- terminal
|
|
73
deploy.sh
73
deploy.sh
|
@ -1,73 +0,0 @@
|
||||||
#!/bin/zsh
|
|
||||||
|
|
||||||
# This is a script that should be ran once
|
|
||||||
# on a new system. Dotdrop will take it from there.
|
|
||||||
# It is higly tailored to my own needs and
|
|
||||||
# you (the random person on the internet) should probably not run it
|
|
||||||
|
|
||||||
export DOTREPO="$HOME/git/dotfiles"
|
|
||||||
DISTRO="$(lsb_release -ds | sed 's/"//g')"
|
|
||||||
|
|
||||||
PKGLIST="python-ruamel-yaml python-magic-git python-jinja python-docopt"
|
|
||||||
|
|
||||||
if [ -d $DOTREPO ]; then
|
|
||||||
print "Dotfile repository already exists, exiting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$DISTRO" -ne "Arch Linux" ]; then
|
|
||||||
print "Not running on Arch Linux"
|
|
||||||
print "Other distros not supported, exiting..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# install neovim if not installed
|
|
||||||
if ! [ -x "$(command -v nvim)" ]; then
|
|
||||||
read -p "Install neovim? [Y/n] " -i "y" INVIM
|
|
||||||
if [ "$(tr '[:upper:]' ':lower:' $INVIM)" -eq "y" ]; then
|
|
||||||
print "Installing neovim"
|
|
||||||
PKGLIST=$PKGLIST + " neovim neovim-dropin"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# install zsh if not installed
|
|
||||||
if ! [ -x "$(command -v zsh)" ]; then
|
|
||||||
read -p "Install zsh? [Y/n] " -i "y" IZSH
|
|
||||||
if [ "$(tr '[:upper:]' ':lower:' $INVIM)" -eq "y" ]; then
|
|
||||||
print "Installing zsh"
|
|
||||||
PKGLIST=$PKGLIST + " zsh"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# install paru if not installed
|
|
||||||
if ! [ -x "$(command -v paru)" ]; then
|
|
||||||
read -p "Install paru? [Y/n] " -i "y" IYAY
|
|
||||||
if [ "$(tr '[:upper:]' ':lower:' $IYAY)" -eq "y" ]; then
|
|
||||||
print "Installing paru"
|
|
||||||
sudo pacman -Syu --needed --noconfirm git wget base-devel
|
|
||||||
cd
|
|
||||||
wget https://aur.archlinux.org/cgit/aur.git/snapshot/paru-bin.tar.gz
|
|
||||||
tar xfv paru-bin.tar.gz
|
|
||||||
cd paru-bin
|
|
||||||
makepkg -si --noconfirm
|
|
||||||
cd ..
|
|
||||||
rm -r paru*
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $PKGLIST -ne "" ]
|
|
||||||
if ! [ -x "$(command -v paru)" ]; then
|
|
||||||
print "Can't continue without paru"
|
|
||||||
|
|
||||||
paru -S $PKGLIST
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir ~/git
|
|
||||||
git clone https://git.korhonen.cc/ReekyMarko/dotfiles.git $DOTREPO
|
|
||||||
cd ~/git/dotfiles
|
|
||||||
git submodule init
|
|
||||||
git submodule update
|
|
||||||
$DOTREPO/dotdrop.sh --cfg=$DOTREPO/config-home.yaml install
|
|
||||||
chsh -s /bin/zsh
|
|
||||||
zsh -c "source ~/.zshrc; sdotdrop install"
|
|
|
@ -1,20 +0,0 @@
|
||||||
version: "2"
|
|
||||||
|
|
||||||
services:
|
|
||||||
openldap:
|
|
||||||
container_name: openldap
|
|
||||||
image: osixia/openldap:stable
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- LDAP_ORGANIZATION="Korhonen"
|
|
||||||
- LDAP_DOMAIN="korhonen.cc"
|
|
||||||
- LDAP_ADMIN_PASSWORD="${LDAP_ADMIN_PASSWORD}"
|
|
||||||
hostname: ldap.korhonen.cc
|
|
||||||
ports:
|
|
||||||
- 389:389
|
|
||||||
- 636:636
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- /docker/auth/openldap/ldap:/var/lib/ldap
|
|
||||||
- /docker/auth/openldap/slapd.d:/etc/ldap/slapd.d
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
75
docker/authentik/docker-compose.yaml
Normal file
75
docker/authentik/docker-compose.yaml
Normal file
|
@ -0,0 +1,75 @@
|
||||||
|
volumes:
|
||||||
|
redis: {}
|
||||||
|
media: {}
|
||||||
|
custom_templates: {}
|
||||||
|
geoip: {}
|
||||||
|
backups: {}
|
||||||
|
services:
|
||||||
|
redis:
|
||||||
|
image: redis:alpine
|
||||||
|
container_name: authentik-redis
|
||||||
|
networks:
|
||||||
|
- authentik
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- redis:/data
|
||||||
|
healthcheck:
|
||||||
|
test:
|
||||||
|
- CMD-SHELL
|
||||||
|
- redis-cli ping | grep PONG
|
||||||
|
start_period: 20s
|
||||||
|
interval: 30s
|
||||||
|
retries: 5
|
||||||
|
timeout: 3s
|
||||||
|
server:
|
||||||
|
image: ghcr.io/goauthentik/server
|
||||||
|
container_name: authentik
|
||||||
|
restart: unless-stopped
|
||||||
|
command: server
|
||||||
|
volumes:
|
||||||
|
- media:/media
|
||||||
|
- custom_templates:/templates
|
||||||
|
- geoip:/geoip
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
networks:
|
||||||
|
- authentik
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
worker:
|
||||||
|
image: ghcr.io/goauthentik/server
|
||||||
|
container_name: authentik-worker
|
||||||
|
restart: unless-stopped
|
||||||
|
command: worker
|
||||||
|
user: root
|
||||||
|
volumes:
|
||||||
|
- backups:/backups
|
||||||
|
- custom_templates:/templates
|
||||||
|
- geoip:/geoip
|
||||||
|
- media:/media
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
networks:
|
||||||
|
- authentik
|
||||||
|
- postgres
|
||||||
|
geoipupdate:
|
||||||
|
image: maxmindinc/geoipupdate
|
||||||
|
container_name: authentik-geoipupdate
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- authentik
|
||||||
|
volumes:
|
||||||
|
- geoip:/usr/share/GeoIP
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
environment:
|
||||||
|
GEOIPUPDATE_EDITION_IDS: GeoLite2-City
|
||||||
|
GEOIPUPDATE_FREQUENCY: '8'
|
||||||
|
networks:
|
||||||
|
authentik:
|
||||||
|
external: true
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
0
docker/backup/DISABLED
Normal file
0
docker/backup/DISABLED
Normal file
33
docker/backup/docker-compose.yaml
Normal file
33
docker/backup/docker-compose.yaml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
volumes:
|
||||||
|
caddy_data:
|
||||||
|
external: true
|
||||||
|
caddy_config:
|
||||||
|
external: true
|
||||||
|
caddy_wkd:
|
||||||
|
external: true
|
||||||
|
homeautomation_hass:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
backup:
|
||||||
|
image: offen/docker-volume-backup:v2
|
||||||
|
container_name: volume-backup
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- AWS_ENDPOINT
|
||||||
|
- AWS_S3_BUCKET_NAME
|
||||||
|
- AWS_ACCESS_KEY_ID
|
||||||
|
- AWS_SECRET_ACCESS_KEY
|
||||||
|
- GPG_PASSPHRASE
|
||||||
|
- EMAIL_SMTP_HOST
|
||||||
|
- EMAIL_SMTP_PASSWORD
|
||||||
|
- EMAIL_SMTP_USERNAME
|
||||||
|
- EMAIL_SMTP_PORT
|
||||||
|
- BACKUP_COMPRESSION=zst
|
||||||
|
- BACKUP_RETENTION_DAYS=7
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- caddy_data:/backup/caddy_data:ro
|
||||||
|
- caddy_config:/backup/caddy_config:ro
|
||||||
|
- caddy_wkd:/backup/caddy_wkd:ro
|
||||||
|
- homeautomation_hass:/backup/homeautomation_hass:ro
|
177
docker/caddy/Caddyfile
Normal file
177
docker/caddy/Caddyfile
Normal file
|
@ -0,0 +1,177 @@
|
||||||
|
{
|
||||||
|
order umami first
|
||||||
|
}
|
||||||
|
|
||||||
|
korhonen.cc, *.korhonen.cc {
|
||||||
|
encode zstd gzip
|
||||||
|
|
||||||
|
tls {
|
||||||
|
dns cloudflare {$CF_API_TOKEN}
|
||||||
|
resolvers 1.1.1.1
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
|
||||||
|
}
|
||||||
|
|
||||||
|
@static {
|
||||||
|
file
|
||||||
|
path *.ico *.css *.js *.gif *.webp *.avif *.jpg *.jpeg *.png *.svg *.woff *.woff2 *.pdf *.webmanifest
|
||||||
|
}
|
||||||
|
|
||||||
|
@homepage-www-redir host www.korhonen.cc
|
||||||
|
handle @homepage-www-redir {
|
||||||
|
redir https://korhonen.cc
|
||||||
|
}
|
||||||
|
|
||||||
|
@homepage host korhonen.cc
|
||||||
|
handle @homepage {
|
||||||
|
# Redirect finnish WIP
|
||||||
|
# @redirFinnish {
|
||||||
|
# header Accept-Language *fi-FI*
|
||||||
|
# not path *.js *.css *.png *.jpg *.jpeg *.svg
|
||||||
|
# not path /en* /fi*
|
||||||
|
# }
|
||||||
|
# redir @redirFinnish /fi{uri}
|
||||||
|
#
|
||||||
|
# uri strip_prefix /en
|
||||||
|
|
||||||
|
header @static Cache-Control max-age=5184000
|
||||||
|
root * /var/www/korhonen.cc
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
|
||||||
|
@wkd host openpgpkey.korhonen.cc
|
||||||
|
handle @wkd {
|
||||||
|
root * /var/www/wkd
|
||||||
|
file_server browse
|
||||||
|
header Access-Control-Allow-Origin "*"
|
||||||
|
}
|
||||||
|
|
||||||
|
@index host index.korhonen.cc
|
||||||
|
handle @index {
|
||||||
|
umami {
|
||||||
|
event_endpoint "https://umami.korhonen.cc/api/send"
|
||||||
|
website_uuid "9fe4f5c0-8e63-4479-a58d-d399cdbc0a3a"
|
||||||
|
client_ip_header X-Real-IP
|
||||||
|
device_detection
|
||||||
|
allowed_extensions "" .tar.zst .json .html
|
||||||
|
}
|
||||||
|
root * /var/www/index.korhonen.cc
|
||||||
|
file_server browse
|
||||||
|
}
|
||||||
|
|
||||||
|
@home-assistant host home.korhonen.cc
|
||||||
|
handle @home-assistant {
|
||||||
|
reverse_proxy home-assistant:8123
|
||||||
|
}
|
||||||
|
|
||||||
|
@authentik host sso.korhonen.cc
|
||||||
|
handle @authentik {
|
||||||
|
reverse_proxy authentik:9000
|
||||||
|
}
|
||||||
|
|
||||||
|
@forgejo host git.korhonen.cc
|
||||||
|
handle @forgejo {
|
||||||
|
rewrite /user/login /user/oauth2/Korhonen%20SSO
|
||||||
|
reverse_proxy forgejo:3000
|
||||||
|
}
|
||||||
|
|
||||||
|
@woodpecker host ci.korhonen.cc
|
||||||
|
handle @woodpecker {
|
||||||
|
reverse_proxy woodpecker:8000
|
||||||
|
}
|
||||||
|
|
||||||
|
@searx host dsearch.korhonen.cc
|
||||||
|
handle @searx {
|
||||||
|
reverse_proxy searx:8080
|
||||||
|
}
|
||||||
|
|
||||||
|
@freshrss host rss.korhonen.cc
|
||||||
|
handle @freshrss {
|
||||||
|
reverse_proxy freshrss
|
||||||
|
}
|
||||||
|
|
||||||
|
@jellyfin host jellyfin.korhonen.cc
|
||||||
|
handle @jellyfin {
|
||||||
|
reverse_proxy jellyfin:8096
|
||||||
|
}
|
||||||
|
|
||||||
|
@pihole host pihole.korhonen.cc
|
||||||
|
handle @pihole {
|
||||||
|
reverse_proxy pihole
|
||||||
|
}
|
||||||
|
|
||||||
|
@umami host umami.korhonen.cc
|
||||||
|
handle @umami {
|
||||||
|
reverse_proxy umami:3000
|
||||||
|
}
|
||||||
|
|
||||||
|
@nextcloud host cloud.korhonen.cc
|
||||||
|
handle @nextcloud {
|
||||||
|
# Redirect login page to Authentik
|
||||||
|
redir /login /apps/sociallogin/custom_oidc/korhonen-sso 301
|
||||||
|
|
||||||
|
# .htaccess / data / config / ... shouldn't be accessible from outside
|
||||||
|
@forbidden {
|
||||||
|
path /.htaccess
|
||||||
|
path /data/*
|
||||||
|
path /config/*
|
||||||
|
path /db_structure
|
||||||
|
path /.xml
|
||||||
|
path /README
|
||||||
|
path /3rdparty/*
|
||||||
|
path /lib/*
|
||||||
|
path /templates/*
|
||||||
|
path /occ
|
||||||
|
path /console.php
|
||||||
|
}
|
||||||
|
handle @forbidden {
|
||||||
|
respond 404
|
||||||
|
}
|
||||||
|
|
||||||
|
redir /.well-known/carddav /remote.php/dav 301
|
||||||
|
redir /.well-known/caldav /remote.php/dav 301
|
||||||
|
|
||||||
|
root * /var/www/nextcloud
|
||||||
|
php_fastcgi nextcloud:9000 {
|
||||||
|
root /var/www/html
|
||||||
|
# Tells nextcloud to remove /index.php from URLs in links
|
||||||
|
env front_controller_active true
|
||||||
|
}
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
|
||||||
|
@collabora host collabora.korhonen.cc
|
||||||
|
handle @collabora {
|
||||||
|
reverse_proxy collabora:9980
|
||||||
|
}
|
||||||
|
|
||||||
|
@drop host drop.korhonen.cc
|
||||||
|
handle @drop {
|
||||||
|
reverse_proxy drop:3000
|
||||||
|
}
|
||||||
|
|
||||||
|
@ipvX host ipv6.korhonen.cc ipv4.korhonen.cc
|
||||||
|
handle @ipvX {
|
||||||
|
respond {remote_host}
|
||||||
|
}
|
||||||
|
|
||||||
|
handle {
|
||||||
|
respond "404 Not Found" 404
|
||||||
|
}
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
@homepage_404 {
|
||||||
|
expression {http.error.status_code} == 404
|
||||||
|
host korhonen.cc
|
||||||
|
}
|
||||||
|
handle @homepage_404 {
|
||||||
|
root * /var/www/korhonen.cc
|
||||||
|
rewrite * /404.html
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
|
||||||
|
respond "{err.status_code} {err.status_text}"
|
||||||
|
}
|
||||||
|
}
|
35
docker/caddy/docker-compose.yaml
Normal file
35
docker/caddy/docker-compose.yaml
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
volumes:
|
||||||
|
data: {}
|
||||||
|
config: {}
|
||||||
|
wkd: {}
|
||||||
|
korhonen_cc: {}
|
||||||
|
nextcloud_config:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
caddy:
|
||||||
|
image: git.korhonen.cc/functionalhacker/caddy
|
||||||
|
container_name: caddy
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- 80:80
|
||||||
|
- 443:443/tcp
|
||||||
|
- 443:443/udp
|
||||||
|
- 127.0.0.1:2019:2019
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- ./Caddyfile:/etc/caddy/Caddyfile
|
||||||
|
- data:/data
|
||||||
|
- config:/config
|
||||||
|
- wkd:/var/www/wkd
|
||||||
|
- korhonen_cc:/var/www/korhonen.cc
|
||||||
|
- nextcloud_config:/var/www/nextcloud
|
||||||
|
- /var/www/index.korhonen.cc:/var/www/index.korhonen.cc
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
19
docker/cloudflared/docker-compose.yaml
Normal file
19
docker/cloudflared/docker-compose.yaml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
services:
|
||||||
|
cloudflared:
|
||||||
|
image: cloudflare/cloudflared
|
||||||
|
container_name: cloudflared
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
entrypoint:
|
||||||
|
command: tunnel --no-autoupdate run
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
extra_hosts:
|
||||||
|
- 'host.docker.internal:host-gateway'
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
0
docker/ddns/DISABLED
Normal file
0
docker/ddns/DISABLED
Normal file
13
docker/ddns/docker-compose.yaml
Normal file
13
docker/ddns/docker-compose.yaml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
services:
|
||||||
|
cloudflare-ddns:
|
||||||
|
image: timothyjmiller/cloudflare-ddns
|
||||||
|
container_name: cloudflare-ddns
|
||||||
|
security_opt:
|
||||||
|
- no-new-privileges:true
|
||||||
|
network_mode: host
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
volumes:
|
||||||
|
- /mnt/Storage/docker/ddns/config.json:/config.json
|
||||||
|
restart: unless-stopped
|
0
docker/drop/DISABLED
Normal file
0
docker/drop/DISABLED
Normal file
13
docker/drop/docker-compose.yaml
Normal file
13
docker/drop/docker-compose.yaml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
services:
|
||||||
|
drop:
|
||||||
|
image: lscr.io/linuxserver/pairdrop
|
||||||
|
container_name: drop
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
- IPV6_LOCALIZE=4
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
0
docker/firefish/DISABLED
Normal file
0
docker/firefish/DISABLED
Normal file
48
docker/firefish/docker-compose.yaml
Normal file
48
docker/firefish/docker-compose.yaml
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
volumes:
|
||||||
|
files: {}
|
||||||
|
config: {}
|
||||||
|
redis: {}
|
||||||
|
db: {}
|
||||||
|
services:
|
||||||
|
firefish:
|
||||||
|
image: registry.firefish.dev/firefish/firefish
|
||||||
|
container_name: firefish
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
- redis
|
||||||
|
ports:
|
||||||
|
- 3084:3000
|
||||||
|
networks:
|
||||||
|
- firefish
|
||||||
|
- proxy
|
||||||
|
environment:
|
||||||
|
NODE_ENV: production
|
||||||
|
volumes:
|
||||||
|
- files:/firefish/files
|
||||||
|
- config:/firefish/.config:ro
|
||||||
|
redis:
|
||||||
|
image: redis
|
||||||
|
container_name: redis-firefish
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- firefish
|
||||||
|
volumes:
|
||||||
|
- redis:/data
|
||||||
|
db:
|
||||||
|
image: groonga/pgroonga:3.1.8-alpine-16-slim
|
||||||
|
container_name: firefish-db
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- firefish
|
||||||
|
volumes:
|
||||||
|
- db:/var/lib/postgresql/data
|
||||||
|
healthcheck:
|
||||||
|
test: pg_isready --user="firefish" --dbname="firefish"
|
||||||
|
interval: 5s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
networks:
|
||||||
|
firefish:
|
||||||
|
internal: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
37
docker/forgejo/docker-compose.yaml
Normal file
37
docker/forgejo/docker-compose.yaml
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
volumes:
|
||||||
|
data: {}
|
||||||
|
runner: {}
|
||||||
|
services:
|
||||||
|
forgejo:
|
||||||
|
image: git.korhonen.cc/functionalhacker/forgejo-asciidoc
|
||||||
|
container_name: forgejo
|
||||||
|
environment:
|
||||||
|
- USER_UID=1000
|
||||||
|
- USER_GID=1000
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
ports:
|
||||||
|
- '2882:22'
|
||||||
|
volumes:
|
||||||
|
- data:/data
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
runner:
|
||||||
|
image: code.forgejo.org/forgejo/runner:6
|
||||||
|
container_name: forgejo-runner
|
||||||
|
user: root:root
|
||||||
|
volumes:
|
||||||
|
- runner:/data
|
||||||
|
- ./runner.yaml:/data/config.yaml
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
environment:
|
||||||
|
- SOCKFILE=/var/run/docker.sock
|
||||||
|
restart: unless-stopped
|
||||||
|
command: forgejo-runner daemon -c /data/config.yaml
|
||||||
|
networks:
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
34
docker/forgejo/runner.yaml
Normal file
34
docker/forgejo/runner.yaml
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
log:
|
||||||
|
level: info
|
||||||
|
|
||||||
|
runner:
|
||||||
|
file: .runner
|
||||||
|
capacity: 2
|
||||||
|
env_file: .env
|
||||||
|
timeout: 3h
|
||||||
|
insecure: false
|
||||||
|
fetch_timeout: 5s
|
||||||
|
fetch_interval: 2s
|
||||||
|
labels:
|
||||||
|
- 'docker:docker://git.korhonen.cc/functionalhacker/ubuntu-act:22.04'
|
||||||
|
|
||||||
|
cache:
|
||||||
|
enabled: true
|
||||||
|
dir: ''
|
||||||
|
host: ''
|
||||||
|
port: 0
|
||||||
|
external_server: ''
|
||||||
|
|
||||||
|
container:
|
||||||
|
network: ''
|
||||||
|
enable_ipv6: false
|
||||||
|
privileged: false
|
||||||
|
options:
|
||||||
|
workdir_parent:
|
||||||
|
valid_volumes:
|
||||||
|
- 'caddy_korhonen_cc'
|
||||||
|
docker_host: 'automount'
|
||||||
|
force_pull: false
|
||||||
|
|
||||||
|
host:
|
||||||
|
workdir_parent:
|
0
docker/freshrss/DISABLED
Normal file
0
docker/freshrss/DISABLED
Normal file
24
docker/freshrss/docker-compose.yaml
Normal file
24
docker/freshrss/docker-compose.yaml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
volumes:
|
||||||
|
config: {}
|
||||||
|
services:
|
||||||
|
freshrss:
|
||||||
|
image: linuxserver/freshrss
|
||||||
|
container_name: freshrss
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- freshrss
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=985
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- config:/config
|
||||||
|
networks:
|
||||||
|
freshrss:
|
||||||
|
external: false
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
|
@ -1,96 +0,0 @@
|
||||||
version: "2.1"
|
|
||||||
services:
|
|
||||||
freshrss:
|
|
||||||
image: linuxserver/freshrss
|
|
||||||
container_name: freshrss
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- freshrss
|
|
||||||
- postgres
|
|
||||||
- proxy
|
|
||||||
environment:
|
|
||||||
- PUID=1000
|
|
||||||
- PGID=985
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
depends_on:
|
|
||||||
- spotifeed
|
|
||||||
- bibliogram
|
|
||||||
volumes:
|
|
||||||
- /docker/freshrss/freshrss:/config
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.freshrss-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.freshrss-redirect.rule=Host(`rss.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.freshrss-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.freshrss.entrypoints=https"
|
|
||||||
- "traefik.http.routers.freshrss.rule=Host(`rss.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.freshrss.tls=true"
|
|
||||||
- "traefik.http.routers.freshrss.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.freshrss.service=freshrss"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.freshrss.loadbalancer.server.port=80"
|
|
||||||
|
|
||||||
spotifeed:
|
|
||||||
build: ./spotifeed
|
|
||||||
image: spotifeed
|
|
||||||
container_name: spotifeed
|
|
||||||
environment:
|
|
||||||
- SPOTIFY_CLIENT_ID=${SPOTIFY_CLIENT_ID}
|
|
||||||
- SPOTIFY_CLIENT_SECRET=${SPOTIFY_CLIENT_SECRET}
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- freshrss
|
|
||||||
- proxy
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.spotifeed-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.spotifeed-redirect.rule=Host(`spotifeed.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.spotifeed-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.spotifeed.entrypoints=https"
|
|
||||||
- "traefik.http.routers.spotifeed.rule=Host(`spotifeed.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.spotifeed.tls=true"
|
|
||||||
- "traefik.http.routers.spotifeed.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.spotifeed.service=spotifeed"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.spotifeed.loadbalancer.server.port=8083"
|
|
||||||
|
|
||||||
bibliogram:
|
|
||||||
image: cloudrac3r/bibliogram
|
|
||||||
container_name: bibliogram
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- /docker/freshrss/bibliogram/db:/app/db
|
|
||||||
- /docker/freshrss/bibliogram/config.js:/app/config.js
|
|
||||||
networks:
|
|
||||||
- freshrss
|
|
||||||
- proxy
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.bibliogram-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.bibliogram-redirect.rule=Host(`bibliogram.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.bibliogram-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.bibliogram.entrypoints=https"
|
|
||||||
- "traefik.http.routers.bibliogram.rule=Host(`bibliogram.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.bibliogram.tls=true"
|
|
||||||
- "traefik.http.routers.bibliogram.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.bibliogram.service=bibliogram"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.bibliogram.loadbalancer.server.port=10407"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
freshrss:
|
|
||||||
external: false
|
|
||||||
postgres:
|
|
||||||
external: true
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
|
@ -1,9 +0,0 @@
|
||||||
FROM ruby:2.7.2
|
|
||||||
RUN git clone https://github.com/timdorr/spotifeed
|
|
||||||
WORKDIR /spotifeed
|
|
||||||
RUN bundle install
|
|
||||||
EXPOSE 8083
|
|
||||||
RUN apt-get update
|
|
||||||
RUN apt-get upgrade
|
|
||||||
RUN apt-get install redis-server -y
|
|
||||||
CMD puma -p 8083 & redis-server
|
|
|
@ -1,41 +0,0 @@
|
||||||
version: "2"
|
|
||||||
|
|
||||||
services:
|
|
||||||
gitea:
|
|
||||||
container_name: gitea
|
|
||||||
image: gitea/gitea:1
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- USER_UID=1000
|
|
||||||
- USER_GID=1000
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- postgres
|
|
||||||
- proxy
|
|
||||||
ports:
|
|
||||||
- "3000:3000"
|
|
||||||
- "222:22"
|
|
||||||
volumes:
|
|
||||||
- /docker/gitea:/data
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.gitea-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.gitea-redirect.rule=Host(`git.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.gitea-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.gitea.entrypoints=https"
|
|
||||||
- "traefik.http.routers.gitea.rule=Host(`git.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.gitea.tls=true"
|
|
||||||
- "traefik.http.routers.gitea.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.gitea.service=gitea"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.gitea.loadbalancer.server.port=3000"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
postgres:
|
|
||||||
external: true
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
0
docker/headscale/DISABLED
Normal file
0
docker/headscale/DISABLED
Normal file
23
docker/headscale/docker-compose.yaml
Normal file
23
docker/headscale/docker-compose.yaml
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
volumes:
|
||||||
|
config: {}
|
||||||
|
data: {}
|
||||||
|
services:
|
||||||
|
headscale:
|
||||||
|
image: headscale/headscale:0
|
||||||
|
container_name: headscale
|
||||||
|
volumes:
|
||||||
|
- config:/etc/headscale
|
||||||
|
- data:/var/lib/headscale
|
||||||
|
ports:
|
||||||
|
- 3478:3478/udp
|
||||||
|
command: headscale serve
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- postgres
|
||||||
|
headscale-ui:
|
||||||
|
image: ghcr.io/gurucomputing/headscale-ui
|
||||||
|
container_name: headscale-ui
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
postgres:
|
||||||
|
external: true
|
80
docker/homeautomation/docker-compose.yaml
Normal file
80
docker/homeautomation/docker-compose.yaml
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
volumes:
|
||||||
|
hass: {}
|
||||||
|
mosquitto: {}
|
||||||
|
piper_english: {}
|
||||||
|
whisper_english: {}
|
||||||
|
openwakeword_english: {}
|
||||||
|
services:
|
||||||
|
home-assistant:
|
||||||
|
container_name: home-assistant
|
||||||
|
image: homeassistant/home-assistant
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- hass:/config
|
||||||
|
networks:
|
||||||
|
- homeautomation
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
ports:
|
||||||
|
- 8123:8123
|
||||||
|
- 8300:8300
|
||||||
|
extra_hosts:
|
||||||
|
- host.docker.internal:host-gateway
|
||||||
|
# mosquitto:
|
||||||
|
# container_name: mosquitto
|
||||||
|
# image: eclipse-mosquitto
|
||||||
|
# restart: unless-stopped
|
||||||
|
# environment:
|
||||||
|
# - TZ=Europe/Helsinki
|
||||||
|
# networks:
|
||||||
|
# - homeautomation
|
||||||
|
# ports:
|
||||||
|
# - 1883:1883
|
||||||
|
# - 8866:8866
|
||||||
|
# volumes:
|
||||||
|
# - mosquitto:/mosquitto
|
||||||
|
# - /etc/localtime:/etc/localtime:ro
|
||||||
|
piper_english:
|
||||||
|
container_name: piper_english
|
||||||
|
image: rhasspy/wyoming-piper
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Helsinki
|
||||||
|
ports:
|
||||||
|
- 10200:10200
|
||||||
|
networks:
|
||||||
|
- homeautomation
|
||||||
|
command:
|
||||||
|
- --voice
|
||||||
|
- en_US-hfc_male-medium
|
||||||
|
volumes:
|
||||||
|
- piper_english:/data
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
whisper_english:
|
||||||
|
container_name: whisper_english
|
||||||
|
image: rhasspy/wyoming-whisper
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- TZ=Europe/Helsinki
|
||||||
|
ports:
|
||||||
|
- 10300:10300
|
||||||
|
networks:
|
||||||
|
- homeautomation
|
||||||
|
depends_on:
|
||||||
|
- home-assistant
|
||||||
|
command:
|
||||||
|
- --model
|
||||||
|
- tiny-int8
|
||||||
|
- --language
|
||||||
|
- en
|
||||||
|
volumes:
|
||||||
|
- whisper_english:/data
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
networks:
|
||||||
|
homeautomation:
|
||||||
|
external: false
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
|
@ -1,136 +0,0 @@
|
||||||
version: "3"
|
|
||||||
services:
|
|
||||||
home-assistant:
|
|
||||||
container_name: home-assistant
|
|
||||||
image: homeassistant/home-assistant
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
devices:
|
|
||||||
- /dev/ttyACM0
|
|
||||||
volumes:
|
|
||||||
- /docker/homeautomation/home-assistant:/config
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- homeautomation
|
|
||||||
- postgres
|
|
||||||
- proxy
|
|
||||||
ports:
|
|
||||||
- "8123:8123"
|
|
||||||
depends_on:
|
|
||||||
- mosquitto
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.home-assistant-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.home-assistant-redirect.rule=Host(`home.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.home-assistant-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.home-assistant.entrypoints=https"
|
|
||||||
- "traefik.http.routers.home-assistant.rule=Host(`home.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.home-assistant.tls=true"
|
|
||||||
- "traefik.http.routers.home-assistant.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.home-assistant.service=home-assistant"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.home-assistant.loadbalancer.server.port=8123"
|
|
||||||
|
|
||||||
mosquitto:
|
|
||||||
container_name: mosquitto
|
|
||||||
image: eclipse-mosquitto
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
ports:
|
|
||||||
- "1883:1883"
|
|
||||||
networks:
|
|
||||||
- homeautomation
|
|
||||||
volumes:
|
|
||||||
- /docker/homeautomation/mosquitto:/mosquitto
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
rhasspy:
|
|
||||||
container_name: rhasspy
|
|
||||||
image: rhasspy/rhasspy
|
|
||||||
command: --profile en --user-profiles /profiles
|
|
||||||
volumes:
|
|
||||||
- /docker/homeautomation/rhasspy:/profiles
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
ports:
|
|
||||||
- "12101:12101"
|
|
||||||
networks:
|
|
||||||
- homeautomation
|
|
||||||
restart: unless-stopped
|
|
||||||
depends_on:
|
|
||||||
- home-assistant
|
|
||||||
devices:
|
|
||||||
- "/dev/snd:/dev/snd"
|
|
||||||
|
|
||||||
node-red:
|
|
||||||
container_name: node-red
|
|
||||||
image: nodered/node-red
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- proxy
|
|
||||||
ports:
|
|
||||||
- "1880:1880"
|
|
||||||
networks:
|
|
||||||
- homeautomation
|
|
||||||
volumes:
|
|
||||||
- /docker/homeautomation/node-red:/data
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
restart: unless-stopped
|
|
||||||
depends_on:
|
|
||||||
- home-assistant
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.node-red-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.node-red-redirect.rule=Host(`node.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.node-red-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.node-red.entrypoints=https"
|
|
||||||
- "traefik.http.routers.node-red.rule=Host(`node.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.node-red.tls=true"
|
|
||||||
- "traefik.http.routers.node-red.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.node-red.service=node-red"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.node-red.loadbalancer.server.port=1880"
|
|
||||||
|
|
||||||
gotify:
|
|
||||||
image: gotify/server
|
|
||||||
container_name: gotify
|
|
||||||
volumes:
|
|
||||||
- /docker/homeautomation/gotify:/app/data
|
|
||||||
environment:
|
|
||||||
- GOTIFY_DATABASE_DIALECT=postgres
|
|
||||||
- GOTIFY_DATABASE_CONNECTION="host=postgres port=5432 user=gotify dbname=gotify password=${GOTIFY_PGPASS} sslmode=disable"
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
- postgres
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.gotify-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.gotify-redirect.rule=Host(`gotify.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.gotify-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.gotify.entrypoints=https"
|
|
||||||
- "traefik.http.routers.gotify.rule=Host(`gotify.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.gotify.tls=true"
|
|
||||||
- "traefik.http.routers.gotify.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.gotify.service=gotify"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.gotify.loadbalancer.server.port=80"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
homeautomation:
|
|
||||||
external: false
|
|
||||||
postgres:
|
|
||||||
external: true
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
|
@ -1,33 +0,0 @@
|
||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
nginx:
|
|
||||||
image: fraoustin/fancyindex
|
|
||||||
container_name: index.korhonen.cc
|
|
||||||
environment:
|
|
||||||
- DISABLE_AUTH=true
|
|
||||||
- CONTAINER_TIMEZONE="Europe/Helsinki"
|
|
||||||
volumes:
|
|
||||||
- /docker/index.korhonen.cc:/share
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.index-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.index-redirect.rule=Host(`index.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.index-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.index.entrypoints=https"
|
|
||||||
- "traefik.http.routers.index.rule=Host(`index.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.index.tls=true"
|
|
||||||
- "traefik.http.routers.index.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.index.service=index"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.index.loadbalancer.server.port=80"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
0
docker/jellyfin/DISABLED
Normal file
0
docker/jellyfin/DISABLED
Normal file
|
@ -1,40 +1,31 @@
|
||||||
version: "2.3"
|
volumes:
|
||||||
|
config: {}
|
||||||
|
cache: {}
|
||||||
|
media:
|
||||||
|
external: true
|
||||||
|
nextcloud_data:
|
||||||
|
external: true
|
||||||
services:
|
services:
|
||||||
jellyfin:
|
jellyfin:
|
||||||
image: jellyfin/jellyfin
|
image: jellyfin/jellyfin
|
||||||
container_name: jellyfin
|
container_name: jellyfin
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- NVIDIA_DRIVER_CAPABILITIES=all
|
|
||||||
- NVIDIA_VISIBLE_DEVICES=all
|
|
||||||
ports:
|
ports:
|
||||||
- "8096:8096"
|
- 8096:8096
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
|
- authentik
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/jellyfin/config:/config
|
|
||||||
- /docker/jellyfin/cache:/cache
|
|
||||||
- /mnt/Storage/Media:/media
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- config:/config
|
||||||
|
- cache:/cache
|
||||||
|
- media:/media
|
||||||
|
- nextcloud_data:/nextcloud_data
|
||||||
devices:
|
devices:
|
||||||
- /dev/dri:/dev/dri
|
- /dev/dri/renderD128:/dev/dri/renderD128
|
||||||
labels:
|
- /dev/dri/card1:/dev/dri/card0
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.jellyfin-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.jellyfin-redirect.rule=Host(`jellyfin.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.jellyfin-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.jellyfin.entrypoints=https"
|
|
||||||
- "traefik.http.routers.jellyfin.rule=Host(`jellyfin.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.jellyfin.tls=true"
|
|
||||||
- "traefik.http.routers.jellyfin.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.jellyfin.service=jellyfin"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.jellyfin.loadbalancer.server.port=8096"
|
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
proxy:
|
proxy:
|
||||||
external: true
|
external: true
|
||||||
|
authentik:
|
||||||
|
external: true
|
||||||
|
|
0
docker/mumble/DISABLED
Normal file
0
docker/mumble/DISABLED
Normal file
|
@ -1,14 +1,11 @@
|
||||||
version: "3"
|
volumes:
|
||||||
|
config: {}
|
||||||
services:
|
services:
|
||||||
mumble:
|
mumble:
|
||||||
container_name: mumble
|
container_name: mumble
|
||||||
image: phlak/mumble
|
image: phlak/mumble
|
||||||
user: "1000:985"
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
network_mode: host
|
network_mode: host
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/mumble:/etc/mumble
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- config:/etc/mumble
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
0
docker/netbootxyz/DISABLED
Normal file
0
docker/netbootxyz/DISABLED
Normal file
24
docker/netbootxyz/docker-compose.yaml
Normal file
24
docker/netbootxyz/docker-compose.yaml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
volumes:
|
||||||
|
config: {}
|
||||||
|
assets: {}
|
||||||
|
services:
|
||||||
|
netbootxyz:
|
||||||
|
image: lscr.io/linuxserver/netbootxyz
|
||||||
|
container_name: netbootxyz
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=Etc/UTC
|
||||||
|
- MENU_VERSION=1.9.9
|
||||||
|
- PORT_RANGE=30000:30010
|
||||||
|
- SUBFOLDER=/
|
||||||
|
- NGINX_PORT=80
|
||||||
|
- WEB_APP_PORT=3000
|
||||||
|
ports:
|
||||||
|
- 3000:3000
|
||||||
|
- 69:69/udp
|
||||||
|
- 8081:80
|
||||||
|
volumes:
|
||||||
|
- config:/config
|
||||||
|
- assets:/assets
|
1
docker/nextcloud/.gitignore
vendored
Normal file
1
docker/nextcloud/.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
.env
|
84
docker/nextcloud/docker-compose.yaml
Normal file
84
docker/nextcloud/docker-compose.yaml
Normal file
|
@ -0,0 +1,84 @@
|
||||||
|
volumes:
|
||||||
|
nextcloud_config:
|
||||||
|
external: true
|
||||||
|
nextcloud_data:
|
||||||
|
external: true
|
||||||
|
services:
|
||||||
|
nextcloud:
|
||||||
|
image: nextcloud:fpm-alpine
|
||||||
|
container_name: nextcloud
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- nextcloud
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
volumes:
|
||||||
|
- nextcloud_config:/var/www/html
|
||||||
|
- nextcloud_data:/var/www/html/data
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
environment:
|
||||||
|
- REDIS_HOST=redis
|
||||||
|
- REDIS_HOST_PASSWORD=123
|
||||||
|
- TRUSTED_PROXIES=caddy
|
||||||
|
- NEXTCLOUD_TRUSTED_DOMAINS=cloud.korhonen.cc
|
||||||
|
- OVERWRITEHOST=cloud.korhonen.cc
|
||||||
|
- OVERWRITEPROTOCOL=https
|
||||||
|
depends_on:
|
||||||
|
- redis
|
||||||
|
labels:
|
||||||
|
ofelia.enabled: true
|
||||||
|
ofelia.job-exec.nextcloud.schedule: 0 */5 * * * *
|
||||||
|
ofelia.job-exec.nextcloud.command: php /var/www/html/cron.php
|
||||||
|
ofelia.job-exec.nextcloud.user: www-data
|
||||||
|
ofelia.smtp-host: ${SMTP_HOST}
|
||||||
|
ofelia.smtp-port: ${SMTP_PORT}
|
||||||
|
ofelia.smtp-user: ${SMTP_USER}
|
||||||
|
ofelia.smtp-password: ${SMTP_PASSWORD}
|
||||||
|
ofelia.email-to: ${EMAIL_TO}
|
||||||
|
ofelia.email-from: ${EMAIL_FROM}
|
||||||
|
ofelia.mail-only-on-error: true
|
||||||
|
redis:
|
||||||
|
image: redis:alpine
|
||||||
|
container_name: redis-nextcloud
|
||||||
|
networks:
|
||||||
|
- nextcloud
|
||||||
|
restart: unless-stopped
|
||||||
|
command: redis-server --requirepass 123
|
||||||
|
coturn:
|
||||||
|
image: instrumentisto/coturn
|
||||||
|
container_name: coturn
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file: .env
|
||||||
|
ports:
|
||||||
|
- 3478:3478/tcp
|
||||||
|
- 3478:3478/udp
|
||||||
|
- 49160-49200:49160-49200/udp
|
||||||
|
networks:
|
||||||
|
- nextcloud
|
||||||
|
command:
|
||||||
|
- -n
|
||||||
|
- --log-file=stdout
|
||||||
|
- --min-port=49160
|
||||||
|
- --max-port=49200
|
||||||
|
- --realm=cloud.korhonen.cc
|
||||||
|
- --use-auth-secret
|
||||||
|
- --static-auth-secret=${STATIC_AUTH_SECRET}
|
||||||
|
collabora:
|
||||||
|
image: collabora/code
|
||||||
|
container_name: collabora
|
||||||
|
restart: unless-stopped
|
||||||
|
env_file: .env
|
||||||
|
environment:
|
||||||
|
- username=${COLLABORA_USERNAME}
|
||||||
|
- password=${COLLABORA_PASSWORD}
|
||||||
|
- domain=cloud.korhonen.cc
|
||||||
|
- extra_params=--o:ssl.enable=false --o:ssl.termination=true
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
networks:
|
||||||
|
nextcloud:
|
||||||
|
external: false
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
|
@ -1,66 +0,0 @@
|
||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
nextcloud:
|
|
||||||
image: nextcloud:apache
|
|
||||||
container_name: nextcloud
|
|
||||||
restart: always
|
|
||||||
ports:
|
|
||||||
- "1869:80"
|
|
||||||
networks:
|
|
||||||
- nextcloud
|
|
||||||
- postgres
|
|
||||||
- proxy
|
|
||||||
volumes:
|
|
||||||
- /docker/nextcloud:/var/www/html
|
|
||||||
- /mnt/Storage/Nextcloud:/var/www/html/data
|
|
||||||
- /mnt/Storage/Syncthing:/Syncthing
|
|
||||||
- /mnt/Storage/Media/Music:/Music
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- REDIS_HOST=redis
|
|
||||||
- REDIS_HOST_PASSWORD=123
|
|
||||||
depends_on:
|
|
||||||
- redis
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.nextcloud-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.nextcloud-redirect.rule=Host(`cloud.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.nextcloud-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.nextcloud.entrypoints=https"
|
|
||||||
- "traefik.http.routers.nextcloud.rule=Host(`cloud.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.nextcloud.tls=true"
|
|
||||||
- "traefik.http.routers.nextcloud.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.nextcloud.service=nextcloud"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.nextcloud.loadbalancer.server.port=80"
|
|
||||||
|
|
||||||
redis:
|
|
||||||
image: redis:alpine
|
|
||||||
container_name: redis
|
|
||||||
networks:
|
|
||||||
- nextcloud
|
|
||||||
restart: always
|
|
||||||
command: redis-server --requirepass 123
|
|
||||||
|
|
||||||
cron:
|
|
||||||
image: nextcloud:apache
|
|
||||||
container_name: cron
|
|
||||||
restart: always
|
|
||||||
volumes:
|
|
||||||
- /docker/nextcloud:/var/www/html
|
|
||||||
entrypoint: /cron.sh
|
|
||||||
depends_on:
|
|
||||||
- redis
|
|
||||||
|
|
||||||
networks:
|
|
||||||
nextcloud:
|
|
||||||
external: false
|
|
||||||
postgres:
|
|
||||||
external: true
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
9
docker/ofelia/docker-compose.yaml
Normal file
9
docker/ofelia/docker-compose.yaml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
services:
|
||||||
|
ofelia:
|
||||||
|
image: mcuadros/ofelia
|
||||||
|
container_name: ofelia
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
|
command: daemon --docker
|
0
docker/opentogethertube/DISABLED
Normal file
0
docker/opentogethertube/DISABLED
Normal file
42
docker/opentogethertube/docker-compose.yaml
Normal file
42
docker/opentogethertube/docker-compose.yaml
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
services:
|
||||||
|
opentogethertube:
|
||||||
|
image: dyc3/opentogethertube
|
||||||
|
container_name: opentogethertube
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- PORT=8080
|
||||||
|
- REDIS_HOST=redis
|
||||||
|
- REDIS_PORT=6379
|
||||||
|
- FFPROBE_PATH=/usr/bin/ffprobe
|
||||||
|
- DB_MODE=postgres
|
||||||
|
- POSTGRES_USER=opentogethertube
|
||||||
|
- POSTGRES_DB=opentogethertube
|
||||||
|
- POSTGRES_HOST=postgres
|
||||||
|
- POSTGRES_PASSWORD
|
||||||
|
- DOCKER=1
|
||||||
|
- OTT_HOSTNAME=ott.korhonen.cc
|
||||||
|
- YOUTUBE_API_KEY
|
||||||
|
- OPENTOGETHERTUBE_API_KEY
|
||||||
|
- SESSION_SECRET
|
||||||
|
ports:
|
||||||
|
- 8080:8080
|
||||||
|
- 3002:3002
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
depends_on:
|
||||||
|
- redis
|
||||||
|
volumes:
|
||||||
|
- ./production.toml:/app/env/production.toml
|
||||||
|
redis:
|
||||||
|
container_name: redis-opentogethertube
|
||||||
|
image: redis:alpine
|
||||||
|
restart: unless-stopped
|
||||||
|
healthcheck:
|
||||||
|
test: redis-cli ping
|
||||||
|
networks:
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
5
docker/opentogethertube/production.toml
Normal file
5
docker/opentogethertube/production.toml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
log = { level = "info" }
|
||||||
|
|
||||||
|
[room]
|
||||||
|
enable_create_temporary = false
|
||||||
|
enable_create_permanent = false
|
0
docker/pihole/DISABLED
Normal file
0
docker/pihole/DISABLED
Normal file
29
docker/pihole/docker-compose.yaml
Normal file
29
docker/pihole/docker-compose.yaml
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
volumes:
|
||||||
|
config: {}
|
||||||
|
dnsmasq: {}
|
||||||
|
services:
|
||||||
|
pihole:
|
||||||
|
container_name: pihole
|
||||||
|
image: pihole/pihole
|
||||||
|
ports:
|
||||||
|
- 53:53/tcp
|
||||||
|
- 53:53/udp
|
||||||
|
- 67:67/udp
|
||||||
|
- 8069:80/tcp
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
volumes:
|
||||||
|
- config:/etc/pihole/
|
||||||
|
- dnsmasq:/etc/dnsmasq.d/
|
||||||
|
dns:
|
||||||
|
- 127.0.0.1
|
||||||
|
- 1.1.1.1
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
TZ: Europe/Helsinki
|
||||||
|
WEBPASSWORD: ${WEBPASSWORD}
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
|
@ -1,46 +0,0 @@
|
||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
pihole:
|
|
||||||
container_name: pihole
|
|
||||||
image: pihole/pihole:latest
|
|
||||||
ports:
|
|
||||||
- "53:53/tcp"
|
|
||||||
- "53:53/udp"
|
|
||||||
- "67:67/udp"
|
|
||||||
- "8069:80/tcp"
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
environment:
|
|
||||||
TZ: "Europe/Helsinki"
|
|
||||||
WEBPASSWORD: "${WEBPASSWORD}"
|
|
||||||
volumes:
|
|
||||||
- "/docker/pihole/pihole:/etc/pihole/"
|
|
||||||
- "/docker/pihole/dnsmasq:/etc/dnsmasq.d/"
|
|
||||||
dns:
|
|
||||||
- 127.0.0.1
|
|
||||||
- 1.1.1.1
|
|
||||||
# Recommended but not required (DHCP needs NET_ADMIN)
|
|
||||||
# https://github.com/pihole/docker-pihole#note-on-capabilities
|
|
||||||
cap_add:
|
|
||||||
- NET_ADMIN
|
|
||||||
restart: unless-stopped
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.pihole-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.pihole-redirect.rule=Host(`pihole.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.pihole-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.pihole.entrypoints=https"
|
|
||||||
- "traefik.http.routers.pihole.rule=Host(`pihole.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.pihole.tls=true"
|
|
||||||
- "traefik.http.routers.pihole.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.pihole.service=pihole"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.pihole.loadbalancer.server.port=80"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
|
@ -1,33 +0,0 @@
|
||||||
version: '3'
|
|
||||||
services:
|
|
||||||
portainer:
|
|
||||||
image: portainer/portainer-ce
|
|
||||||
container_name: portainer
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
restart: unless-stopped
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
volumes:
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
||||||
- /docker/portainer:/data
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
labels:
|
|
||||||
- 'traefik.enable=true'
|
|
||||||
|
|
||||||
- 'traefik.http.routers.portainer-redirect.entrypoints=http'
|
|
||||||
- 'traefik.http.routers.portainer-redirect.rule=Host(`portainer.korhonen.cc`)'
|
|
||||||
- 'traefik.http.middlewares.http2https.redirectscheme.scheme=https'
|
|
||||||
- 'traefik.http.routers.portainer-redirect.middlewares=http2https'
|
|
||||||
|
|
||||||
- 'traefik.http.routers.portainer.entrypoints=https'
|
|
||||||
- 'traefik.http.routers.portainer.rule=Host(`portainer.korhonen.cc`)'
|
|
||||||
- 'traefik.http.routers.portainer.tls=true'
|
|
||||||
- 'traefik.http.routers.portainer.tls.certresolver=http'
|
|
||||||
- 'traefik.http.routers.portainer.service=portainer'
|
|
||||||
- 'traefik.docker.network=proxy'
|
|
||||||
- 'traefik.http.services.portainer.loadbalancer.server.port=9000'
|
|
||||||
|
|
||||||
networks:
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
|
@ -1,20 +1,17 @@
|
||||||
version: "3"
|
volumes:
|
||||||
|
data: {}
|
||||||
services:
|
services:
|
||||||
postgres:
|
postgres:
|
||||||
container_name: postgres
|
container_name: postgres
|
||||||
image: postgres:13
|
image: postgres:16
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- POSTGRES_PASSWORD=12345
|
|
||||||
ports:
|
ports:
|
||||||
- 5432:5432
|
- 127.0.0.1:5432:5432
|
||||||
networks:
|
networks:
|
||||||
- postgres
|
- postgres
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/postgres:/var/lib/postgresql/data
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- data:/var/lib/postgresql/data
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
postgres:
|
postgres:
|
||||||
external: true
|
external: true
|
||||||
|
|
0
docker/searx/DISABLED
Normal file
0
docker/searx/DISABLED
Normal file
46
docker/searx/docker-compose.yaml
Normal file
46
docker/searx/docker-compose.yaml
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
volumes:
|
||||||
|
config: {}
|
||||||
|
services:
|
||||||
|
searx:
|
||||||
|
container_name: searx
|
||||||
|
image: searxng/searxng
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- searx
|
||||||
|
- proxy
|
||||||
|
volumes:
|
||||||
|
- config:/etc/searxng
|
||||||
|
environment:
|
||||||
|
- SEARXNG_BASE_URL=https://search.korhonen.cc/
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- CHOWN
|
||||||
|
- SETGID
|
||||||
|
- SETUID
|
||||||
|
- DAC_OVERRIDE
|
||||||
|
logging:
|
||||||
|
driver: json-file
|
||||||
|
options:
|
||||||
|
max-size: 1m
|
||||||
|
max-file: '1'
|
||||||
|
redis:
|
||||||
|
container_name: redis-searx
|
||||||
|
image: redis:alpine
|
||||||
|
command: redis-server --save "" --appendonly "no"
|
||||||
|
networks:
|
||||||
|
- searx
|
||||||
|
tmpfs:
|
||||||
|
- /var/lib/redis
|
||||||
|
cap_drop:
|
||||||
|
- ALL
|
||||||
|
cap_add:
|
||||||
|
- SETGID
|
||||||
|
- SETUID
|
||||||
|
- DAC_OVERRIDE
|
||||||
|
networks:
|
||||||
|
searx:
|
||||||
|
ipam:
|
||||||
|
driver: default
|
||||||
|
proxy:
|
||||||
|
external: true
|
0
docker/stats/DISABLED
Normal file
0
docker/stats/DISABLED
Normal file
30
docker/stats/docker-compose.yaml
Normal file
30
docker/stats/docker-compose.yaml
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
services:
|
||||||
|
grafana:
|
||||||
|
image: grafana/grafana
|
||||||
|
container_name: grafana
|
||||||
|
volumes:
|
||||||
|
- grafana:/var/lib/grafana
|
||||||
|
networks:
|
||||||
|
- stats
|
||||||
|
- proxy
|
||||||
|
user: 1000:984
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
|
environment:
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_CLIENT_ID
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_CLIENT_SECRET
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_ENABLED=true
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_NAME=authentik
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_SCOPES=openid profile email
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_AUTH_URL=https://sso.korhonen.cc/application/o/authorize/
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_TOKEN_URL=https://sso.korhonen.cc/application/o/token/
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_API_URL=https://sso.korhonen.cc/application/o/userinfo/
|
||||||
|
- GF_AUTH_SIGNOUT_REDIRECT_URL=https://sso.korhonen.cc/application/o/grafana/end-session/
|
||||||
|
- GF_AUTH_OAUTH_AUTO_LOGIN=true
|
||||||
|
- GF_SERVER_ROOT_URL=https://grafana.korhonen.cc
|
||||||
|
- GF_AUTH_GENERIC_OAUTH_ROLE_ATTRIBUTE_PATH=contains(groups[*], 'Administrators') && 'Admin' || 'Viewer'
|
||||||
|
networks:
|
||||||
|
stats:
|
||||||
|
external: false
|
||||||
|
proxy:
|
||||||
|
external: true
|
0
docker/tftp/DISABLED
Normal file
0
docker/tftp/DISABLED
Normal file
10
docker/tftp/docker-compose.yaml
Normal file
10
docker/tftp/docker-compose.yaml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
services:
|
||||||
|
tftp:
|
||||||
|
container_name: tftp
|
||||||
|
image: pghalliday/tftp
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- 69:69/udp
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- /docker/tftp:/var/tftpboot
|
|
@ -1,53 +0,0 @@
|
||||||
version: '3'
|
|
||||||
|
|
||||||
services:
|
|
||||||
traefik:
|
|
||||||
image: traefik:latest
|
|
||||||
container_name: traefik
|
|
||||||
restart: unless-stopped
|
|
||||||
ports:
|
|
||||||
- '80:80'
|
|
||||||
- '443:443'
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
security_opt:
|
|
||||||
- no-new-privileges:true
|
|
||||||
networks:
|
|
||||||
- proxy
|
|
||||||
volumes:
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
||||||
- /docker/træfik/træfik/traefik.yml:/traefik.yml:ro
|
|
||||||
- /docker/træfik/træfik/dashboard-users:/dashboard-users:ro
|
|
||||||
- /docker/træfik/træfik/acme.json:/acme.json
|
|
||||||
- /docker/træfik/træfik/log:/var/log
|
|
||||||
labels:
|
|
||||||
- 'traefik.enable=true'
|
|
||||||
|
|
||||||
- 'traefik.http.routers.redirect.entrypoints=http'
|
|
||||||
- 'traefik.http.routers.redirect.rule=Host(`traefik.korhonen.cc`)'
|
|
||||||
- 'traefik.http.middlewares.http2https.redirectscheme.scheme=https'
|
|
||||||
- 'traefik.http.routers.redirect.middlewares=http2https'
|
|
||||||
|
|
||||||
- 'traefik.http.routers.dashboard.entrypoints=https'
|
|
||||||
- 'traefik.http.routers.dashboard.rule=Host(`traefik.korhonen.cc`)'
|
|
||||||
- 'traefik.http.middlewares.dashboard-auth.basicauth.usersfile=/dashboard-users'
|
|
||||||
- 'traefik.http.routers.dashboard.middlewares=dashboard-auth'
|
|
||||||
- 'traefik.http.routers.dashboard.tls=true'
|
|
||||||
- 'traefik.http.routers.dashboard.tls.certresolver=http'
|
|
||||||
- 'traefik.http.routers.dashboard.service=api@internal'
|
|
||||||
|
|
||||||
fail2ban:
|
|
||||||
image: crazymax/fail2ban:latest
|
|
||||||
container_name: fail2ban
|
|
||||||
restart: unless-stopped
|
|
||||||
network_mode: "host"
|
|
||||||
cap_add:
|
|
||||||
- NET_ADMIN
|
|
||||||
- NET_RAW
|
|
||||||
volumes:
|
|
||||||
- /docker/træfik/træfik/log:/var/log/træfik:ro
|
|
||||||
- /docker/træfik/fail2ban:/data
|
|
||||||
networks:
|
|
||||||
proxy:
|
|
||||||
external: true
|
|
0
docker/tvheadend/DISABLED
Normal file
0
docker/tvheadend/DISABLED
Normal file
|
@ -1,42 +1,26 @@
|
||||||
version: "2"
|
volumes:
|
||||||
|
config: {}
|
||||||
|
picons: {}
|
||||||
services:
|
services:
|
||||||
tvheadend:
|
tvheadend:
|
||||||
image: linuxserver/tvheadend
|
image: linuxserver/tvheadend
|
||||||
container_name: tvheadend
|
container_name: tvheadend
|
||||||
environment:
|
environment:
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=985
|
- PGID=985
|
||||||
volumes:
|
volumes:
|
||||||
- /docker/tvheadend:/config
|
|
||||||
- /mnt/Storage/Media/PVR:/recordings
|
|
||||||
- /mnt/Storage/picons:/picons
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- config:/config
|
||||||
|
- picons:/picons
|
||||||
|
- /mnt/Storage/Media/PVR:/recordings
|
||||||
ports:
|
ports:
|
||||||
- 9981:9981
|
- 9981:9981
|
||||||
- 9982:9982
|
- 9982:9982
|
||||||
devices:
|
devices:
|
||||||
- /dev/dri:/dev/dri #hardware acceleration
|
- /dev/dvb:/dev/dvb
|
||||||
- /dev/dvb:/dev/dvb #tuner card
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
|
|
||||||
- "traefik.http.routers.tvheadend-redirect.entrypoints=http"
|
|
||||||
- "traefik.http.routers.tvheadend-redirect.rule=Host(`tvheadend.korhonen.cc`)"
|
|
||||||
- "traefik.http.middlewares.http2https.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.tvheadend-redirect.middlewares=http2https"
|
|
||||||
|
|
||||||
- "traefik.http.routers.tvheadend.entrypoints=https"
|
|
||||||
- "traefik.http.routers.tvheadend.rule=Host(`tvheadend.korhonen.cc`)"
|
|
||||||
- "traefik.http.routers.tvheadend.tls=true"
|
|
||||||
- "traefik.http.routers.tvheadend.tls.certresolver=http"
|
|
||||||
- "traefik.http.routers.tvheadend.service=tvheadend"
|
|
||||||
- "traefik.docker.network=proxy"
|
|
||||||
- "traefik.http.services.tvheadend.loadbalancer.server.port=9981"
|
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
proxy:
|
proxy:
|
||||||
external: true
|
external: true
|
||||||
|
|
0
docker/umami/DISABLED
Normal file
0
docker/umami/DISABLED
Normal file
21
docker/umami/docker-compose.yaml
Normal file
21
docker/umami/docker-compose.yaml
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
services:
|
||||||
|
umami:
|
||||||
|
image: ghcr.io/umami-software/umami:postgresql-latest
|
||||||
|
container_name: umami
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- postgres
|
||||||
|
- proxy
|
||||||
|
env_file: .env
|
||||||
|
environment:
|
||||||
|
DATABASE_URL: postgresql://umami:${POSTGRES_PASS}@postgres:5432/umami
|
||||||
|
HASH_SALT: ${HASH_SALT}
|
||||||
|
logging:
|
||||||
|
options:
|
||||||
|
max-size: 10m
|
||||||
|
max-file: '10'
|
||||||
|
networks:
|
||||||
|
postgres:
|
||||||
|
external: true
|
||||||
|
proxy:
|
||||||
|
external: true
|
0
docker/watchtower/DISABLED
Normal file
0
docker/watchtower/DISABLED
Normal file
18
docker/watchtower/docker-compose.yaml
Normal file
18
docker/watchtower/docker-compose.yaml
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
services:
|
||||||
|
watchtower:
|
||||||
|
image: containrrr/watchtower
|
||||||
|
container_name: watchtower
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- WATCHTOWER_CLEANUP=true
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_FROM=watchtower@korhonen.cc
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_TO=admin@korhonen.cc
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.migadu.com
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=${WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER}
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=${WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD}
|
||||||
|
- WATCHTOWER_NOTIFICATION_EMAIL_DELAY=30
|
||||||
|
- WATCHTOWER_NOTIFICATIONS=email
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
|
@ -1,22 +0,0 @@
|
||||||
version: "2.1"
|
|
||||||
services:
|
|
||||||
wireguard:
|
|
||||||
image: linuxserver/wireguard
|
|
||||||
container_name: wireguard
|
|
||||||
cap_add:
|
|
||||||
- NET_ADMIN
|
|
||||||
- SYS_MODULE
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Helsinki
|
|
||||||
- PEERS=4
|
|
||||||
- SERVERURL=korhonen.cc
|
|
||||||
- SERVERPORT=48574
|
|
||||||
- INTERNAL_SUBNET=10.200.200.0/24
|
|
||||||
volumes:
|
|
||||||
- /docker/wireguard:/config
|
|
||||||
- /lib/modules:/lib/modules
|
|
||||||
ports:
|
|
||||||
- 48574:51820/udp
|
|
||||||
sysctls:
|
|
||||||
- net.ipv4.conf.all.src_valid_mark=1
|
|
||||||
restart: unless-stopped
|
|
0
docker/wud/DISABLED
Normal file
0
docker/wud/DISABLED
Normal file
12
docker/wud/docker-compose.yaml
Normal file
12
docker/wud/docker-compose.yaml
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
services:
|
||||||
|
whatsupdocker:
|
||||||
|
image: getwud/wud
|
||||||
|
container_name: wud
|
||||||
|
env_file: .env
|
||||||
|
environment:
|
||||||
|
- WUD_TRIGGER_SMTP_EMAIL_SIMPLETITLE=Container $${container.name} can be updated
|
||||||
|
- WUD_TRIGGER_SMTP_EMAIL_SIMPLEBODY=Container $${name} can be updated from $${local.substring(0, 15)} to $${remote.substring(0, 15)}
|
||||||
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
ports:
|
||||||
|
- 3000:3000
|
1
dotdrop
1
dotdrop
|
@ -1 +0,0 @@
|
||||||
Subproject commit 9ae90d51095b7fe9b26350c8dd33902e862466a5
|
|
37
dotdrop.sh
37
dotdrop.sh
|
@ -1,37 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
# author: deadc0de6 (https://github.com/deadc0de6)
|
|
||||||
# Copyright (c) 2017, deadc0de6
|
|
||||||
|
|
||||||
# check for readlink/realpath presence
|
|
||||||
# https://github.com/deadc0de6/dotdrop/issues/6
|
|
||||||
rl="readlink -f"
|
|
||||||
|
|
||||||
if ! ${rl} "${0}" >/dev/null 2>&1; then
|
|
||||||
rl="realpath"
|
|
||||||
|
|
||||||
if ! hash ${rl}; then
|
|
||||||
echo "\"${rl}\" not found!" && exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# setup variables
|
|
||||||
args=("$@")
|
|
||||||
cur=$(dirname "$(${rl} "${0}")")
|
|
||||||
opwd=$(pwd)
|
|
||||||
cfg="${cur}/config.yaml"
|
|
||||||
sub="dotdrop"
|
|
||||||
|
|
||||||
# pivot
|
|
||||||
cd "${cur}" || { echo "Directory \"${cur}\" doesn't exist, aborting." && exit 1; }
|
|
||||||
# init/update the submodule
|
|
||||||
if [ "${DOTDROP_AUTOUPDATE-yes}" = yes ] ; then
|
|
||||||
git submodule update --init --recursive
|
|
||||||
git submodule update --remote dotdrop
|
|
||||||
fi
|
|
||||||
# launch dotdrop
|
|
||||||
PYTHONPATH=dotdrop python3 -m dotdrop.dotdrop "${args[@]}"
|
|
||||||
ret="$?"
|
|
||||||
# pivot back
|
|
||||||
cd "${opwd}" || { echo "Directory \"${opwd}\" doesn't exist, aborting." && exit 1; }
|
|
||||||
# exit with dotdrop exit code
|
|
||||||
exit ${ret}
|
|
|
@ -1,12 +0,0 @@
|
||||||
#/bin/bash
|
|
||||||
# vim:ft=sh
|
|
||||||
|
|
||||||
sudo efibootmgr \
|
|
||||||
--disk /dev/sda \
|
|
||||||
--part 1 \
|
|
||||||
--create \
|
|
||||||
--quiet \
|
|
||||||
--remove-dups \
|
|
||||||
--label "Arch Linux" \
|
|
||||||
--loader /vmlinuz-linux \
|
|
||||||
--unicode 'initrd=\amd-ucode.img initrd=\initramfs-linux.img cryptdevice=UUID=19fa8fab-c5fe-454a-9a17-b7185ce975ea:cryptroot:allow-discards root=/dev/mapper/cryptroot rootflags=subvol=root resume=/dev/mapper/cryptroot resume_offset=10530935 rw quiet splash vga=current idle=nomwait cpuidle.governor=teo'
|
|
|
@ -1,12 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# vim:ft=sh
|
|
||||||
|
|
||||||
sudo efibootmgr \
|
|
||||||
--disk /dev/sda \
|
|
||||||
--part 1 \
|
|
||||||
--create \
|
|
||||||
--quiet \
|
|
||||||
--remove-dups \
|
|
||||||
--label "Arch Linux LTS" \
|
|
||||||
--loader /vmlinuz-linux-lts \
|
|
||||||
--unicode 'initrd=\amd-ucode.img initrd=\initramfs-linux-lts.img cryptdevice=UUID=19fa8fab-c5fe-454a-9a17-b7185ce975ea:cryptroot:allow-discards root=/dev/mapper/cryptroot rootflags=subvol=root resume=/dev/mapper/cryptroot resume_offset=10530935 rw quiet splash vga=current idle=nomwait cpuidle.governor=teo'
|
|
|
@ -1,14 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# remove old entries
|
|
||||||
for bootentry in $(efibootmgr | head -n 3 | tail -n 1 | cut -d' ' -f2- | sed 's/,/\n/g'); do
|
|
||||||
sudo efibootmgr -qBb $bootentry
|
|
||||||
done
|
|
||||||
|
|
||||||
# add all entries back
|
|
||||||
for bootscript in *.efi; do
|
|
||||||
./$bootscript
|
|
||||||
done
|
|
||||||
|
|
||||||
# set bootorder
|
|
||||||
sudo efibootmgr --bootorder 0000,0001
|
|
|
@ -1,4 +1,5 @@
|
||||||
window:
|
window:
|
||||||
|
opacity: 1.0
|
||||||
dimensions:
|
dimensions:
|
||||||
columns: 0
|
columns: 0
|
||||||
lines: 0
|
lines: 0
|
||||||
|
@ -29,42 +30,40 @@ font:
|
||||||
colors:
|
colors:
|
||||||
# Default colors
|
# Default colors
|
||||||
primary:
|
primary:
|
||||||
background: "0x282c34"
|
background: '0x282c34'
|
||||||
foreground: "0xabb2bf"
|
foreground: '0xabb2bf'
|
||||||
|
|
||||||
# Cursor colors
|
# Cursor colors
|
||||||
cursor:
|
cursor:
|
||||||
text: "0x282c34"
|
text: '0x282c34'
|
||||||
cursor: "0xabb2bf"
|
cursor: '0xabb2bf'
|
||||||
|
|
||||||
# Normal colors
|
# Normal colors
|
||||||
normal:
|
normal:
|
||||||
black: "0x282c34"
|
black: '0x282c34'
|
||||||
red: "0xe06c75"
|
red: '0xe06c75'
|
||||||
green: "0x98c379"
|
green: '0x98c379'
|
||||||
yellow: "0xe5c07b"
|
yellow: '0xe5c07b'
|
||||||
blue: "0x61afef"
|
blue: '0x61afef'
|
||||||
magenta: "0xc678dd"
|
magenta: '0xc678dd'
|
||||||
cyan: "0x56b6c2"
|
cyan: '0x56b6c2'
|
||||||
white: "0xabb2bf"
|
white: '0xabb2bf'
|
||||||
|
|
||||||
# Bright colors
|
# Bright colors
|
||||||
bright:
|
bright:
|
||||||
black: "0x3e4452"
|
black: '0x3e4452'
|
||||||
red: "0xbe5046"
|
red: '0xbe5046'
|
||||||
green: "0x98c379"
|
green: '0x98c379'
|
||||||
yellow: "0xd19a66"
|
yellow: '0xd19a66'
|
||||||
blue: "0x61afef"
|
blue: '0x61afef'
|
||||||
magenta: "0xc678dd"
|
magenta: '0xc678dd'
|
||||||
cyan: "0x56b6c2"
|
cyan: '0x56b6c2'
|
||||||
white: "0x5c6370"
|
white: '0x5c6370'
|
||||||
|
|
||||||
bell:
|
bell:
|
||||||
animation: EaseOutExpo
|
animation: EaseOutExpo
|
||||||
duration: 0
|
duration: 0
|
||||||
color: "#ffffff"
|
color: '#ffffff'
|
||||||
|
|
||||||
background_opacity: 1.0
|
|
||||||
|
|
||||||
mouse_bindings:
|
mouse_bindings:
|
||||||
- { mouse: Middle, action: PasteSelection }
|
- { mouse: Middle, action: PasteSelection }
|
||||||
|
@ -73,8 +72,6 @@ mouse:
|
||||||
double_click: { threshold: 300 }
|
double_click: { threshold: 300 }
|
||||||
triple_click: { threshold: 300 }
|
triple_click: { threshold: 300 }
|
||||||
hide_when_typing: false
|
hide_when_typing: false
|
||||||
url:
|
|
||||||
modifiers: None
|
|
||||||
|
|
||||||
selection:
|
selection:
|
||||||
semantic_escape_chars: ',│`|:"'' ()[]{}<>'
|
semantic_escape_chars: ',│`|:"'' ()[]{}<>'
|
||||||
|
|
0
home/.config/asd
Normal file
0
home/.config/asd
Normal file
|
@ -1,34 +1,31 @@
|
||||||
directory: ~/music
|
directory: ~/Music
|
||||||
library: ~/music/beets.db
|
library: ~/Music/beets.db
|
||||||
plugins:
|
plugins:
|
||||||
- acousticbrainz
|
- edit
|
||||||
- check
|
- fetchart
|
||||||
- edit
|
- fuzzy
|
||||||
- fetchart
|
- info
|
||||||
- follow
|
- lastgenre
|
||||||
- fuzzy
|
- lyrics
|
||||||
- info
|
# - mbcollection
|
||||||
- lastgenre
|
- mpdupdate
|
||||||
- lyrics
|
- play
|
||||||
- mbcollection
|
- replaygain
|
||||||
- mpdupdate
|
- thumbnails
|
||||||
- play
|
- web
|
||||||
- replaygain
|
|
||||||
- thumbnails
|
|
||||||
- web
|
|
||||||
import:
|
import:
|
||||||
copy: no
|
write: yes
|
||||||
move: yes
|
copy: yes
|
||||||
link: no
|
|
||||||
lastgenre:
|
lastgenre:
|
||||||
whitelist: ~/.config/beets/whitelist
|
whitelist: ~/.config/beets/whitelist
|
||||||
lyrics:
|
lyrics:
|
||||||
fallback: ''
|
fallback: ''
|
||||||
play:
|
play:
|
||||||
command: mpv
|
command: mpv --no-vid --no-resume-playback
|
||||||
mpd:
|
mpd:
|
||||||
host: localhost
|
host: localhost
|
||||||
port: 6600
|
port: 6600
|
||||||
|
password: "{{@@ env['PASS_MPD_ADMIN'] @@}}"
|
||||||
follow:
|
follow:
|
||||||
email: reekymarko@reekynet.com
|
email: reekymarko@reekynet.com
|
||||||
password: "{{@@ env['PASS_MUSPY'] @@}}"
|
password: "{{@@ env['PASS_MUSPY'] @@}}"
|
||||||
|
@ -37,9 +34,6 @@ follow:
|
||||||
replaygain:
|
replaygain:
|
||||||
backend: gstreamer
|
backend: gstreamer
|
||||||
auto: yes
|
auto: yes
|
||||||
musicbrainz:
|
#mbcollection:
|
||||||
user: ReekyMarko
|
# auto: 'yes'
|
||||||
pass: "{{@@ env['PASS_MUSICBRAINZ'] @@}}"
|
# collection: 'a4955b5c-db7f-4e27-9887-f77f820bad34'
|
||||||
mbcollection:
|
|
||||||
auto: "yes"
|
|
||||||
collection: "a4955b5c-db7f-4e27-9887-f77f820bad34"
|
|
||||||
|
|
88
home/.config/dconf.ini
Normal file
88
home/.config/dconf.ini
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
[io/github/celluloid-player/celluloid]
|
||||||
|
dark-theme-enable=false
|
||||||
|
mpv-config-enable=true
|
||||||
|
mpv-config-file='file:///home/{{@@ env['USER'] @@}}/.config/mpv/mpv.conf'
|
||||||
|
mpv-input-config-enable=true
|
||||||
|
mpv-input-config-file='file:///home/{{@@ env['USER'] @@}}/.config/mpv/input.conf'
|
||||||
|
settings-migrated=true
|
||||||
|
|
||||||
|
[org/gnome/Connections]
|
||||||
|
first-run=false
|
||||||
|
|
||||||
|
[org/gnome/shell/weather]
|
||||||
|
automatic-location=false
|
||||||
|
locations=[<(uint32 2, <('Lappeenranta', 'EFLP', false, [(1.0654507804726074, 0.49128594181309354)], @a(dd) [])>)>]
|
||||||
|
|
||||||
|
[org/gnome/Weather]
|
||||||
|
locations=[<(uint32 2, <('Lappeenranta', 'EFLP', false, [(1.0654507804726074, 0.49128594181309354)], @a(dd) [])>)>]
|
||||||
|
|
||||||
|
[org/gnome/shell/world-clocks]
|
||||||
|
locations=[<(uint32 2, <('Bangkok', 'VTBD', true, [(0.24289166005364171, 1.7558012275062955)], [(0.23998277214922031, 1.754346792280731)])>)>, <(uint32 2, <('Lappeenranta', 'EFLP', true, [(1.0654507804726074, 0.49128594181309354)], [(1.065814402368968, 0.49189195503597105)])>)>]
|
||||||
|
|
||||||
|
[org/gnome/clocks]
|
||||||
|
world-clocks=[{'location': <(uint32 2, <('Bangkok', 'VTBD', true, [(0.24289166005364171, 1.7558012275062955)], [(0.23998277214922031, 1.754346792280731)])>)>}, {'location': <(uint32 2, <('Lappeenranta', 'EFLP', true, [(1.0654507804726074, 0.49128594181309354)], [(1.065814402368968, 0.49189195503597105)])>)>}]
|
||||||
|
|
||||||
|
[org/gnome/desktop/a11y/mouse]
|
||||||
|
dwell-click-enabled=false
|
||||||
|
dwell-threshold=10
|
||||||
|
dwell-time=1.2
|
||||||
|
secondary-click-enabled=true
|
||||||
|
secondary-click-time=1.2
|
||||||
|
|
||||||
|
[org/gnome/desktop/calendar]
|
||||||
|
show-weekdate=true
|
||||||
|
|
||||||
|
[org/gnome/desktop/input-sources]
|
||||||
|
show-all-sources=true
|
||||||
|
sources=[('xkb', 'eu'), ('xkb', 'fi')]
|
||||||
|
xkb-options=['lv3:ralt_switch']
|
||||||
|
|
||||||
|
[org/gnome/desktop/peripherals/touchpad]
|
||||||
|
tap-to-click=true
|
||||||
|
two-finger-scrolling-enabled=true
|
||||||
|
|
||||||
|
[org/gnome/desktop/privacy]
|
||||||
|
disable-microphone=false
|
||||||
|
old-files-age=uint32 14
|
||||||
|
recent-files-max-age=-1
|
||||||
|
remove-old-temp-files=true
|
||||||
|
remove-old-trash-files=true
|
||||||
|
|
||||||
|
[org/gnome/desktop/wm/keybindings]
|
||||||
|
close=['<Super>w']
|
||||||
|
move-to-workspace-down=['<Shift><Super>j']
|
||||||
|
move-to-workspace-left=['<Shift><Super>h']
|
||||||
|
move-to-workspace-right=['<Shift><Super>l']
|
||||||
|
move-to-workspace-up=['<Shift><Super>k']
|
||||||
|
switch-to-workspace-down=['<Super>j']
|
||||||
|
switch-to-workspace-left=['<Super>h']
|
||||||
|
switch-to-workspace-right=['<Super>l']
|
||||||
|
switch-to-workspace-up=['<Super>k']
|
||||||
|
toggle-fullscreen=@as []
|
||||||
|
toggle-maximized=['<Super>f']
|
||||||
|
|
||||||
|
[org/gnome/settings-daemon/plugins/media-keys]
|
||||||
|
custom-keybindings=['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']
|
||||||
|
screensaver=['<Super>BackSpace']
|
||||||
|
www=['<Super>b']
|
||||||
|
volume-step=1
|
||||||
|
|
||||||
|
[org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0]
|
||||||
|
binding='<Super>Return'
|
||||||
|
command='kgx'
|
||||||
|
name='Open terminal'
|
||||||
|
|
||||||
|
[org/gnome/file-roller/dialogs/new]
|
||||||
|
default-extension='.tar.zst'
|
||||||
|
|
||||||
|
[org/gnome/software]
|
||||||
|
check-timestamp=int64 1667730233
|
||||||
|
download-updates=true
|
||||||
|
download-updates-notify=true
|
||||||
|
first-run=false
|
||||||
|
|
||||||
|
[org/gnome/system/location]
|
||||||
|
enabled=true
|
||||||
|
|
||||||
|
[org/gnome/tweaks]
|
||||||
|
show-extensions-notice=false
|
2
home/.config/electron-flags.conf
Normal file
2
home/.config/electron-flags.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
--enable-features=UseOzonePlatform
|
||||||
|
--ozone-platform=wayland
|
2
home/.config/electron12-flags.conf
Normal file
2
home/.config/electron12-flags.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
--enable-features=UseOzonePlatform
|
||||||
|
--ozone-platform=wayland
|
|
@ -1,26 +1,22 @@
|
||||||
<?xml version='1.0'?>
|
<?xml version='1.0'?>
|
||||||
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
|
||||||
<fontconfig>
|
<fontconfig>
|
||||||
|
<alias>
|
||||||
<alias>
|
<family>sans-serif</family>
|
||||||
<family>sans-serif</family>
|
<prefer>
|
||||||
<prefer>
|
<family>Adwaita Sans</family>
|
||||||
<family>Overpass</family>
|
</prefer>
|
||||||
</prefer>
|
</alias>
|
||||||
</alias>
|
<alias>
|
||||||
|
<family>serif</family>
|
||||||
<alias>
|
<prefer>
|
||||||
<family>serif</family>
|
<family>Adwaita Sans</family>
|
||||||
<prefer>
|
</prefer>
|
||||||
<family>Overpass</family>
|
</alias>
|
||||||
</prefer>
|
<alias>
|
||||||
</alias>
|
<family>monospace</family>
|
||||||
|
<prefer>
|
||||||
<alias>
|
<family>Adwaita mono</family>
|
||||||
<family>monospace</family>
|
</prefer>
|
||||||
<prefer>
|
</alias>
|
||||||
<family>Hack Nerd Font Mono</family>
|
|
||||||
</prefer>
|
|
||||||
</alias>
|
|
||||||
|
|
||||||
</fontconfig>
|
</fontconfig>
|
||||||
|
|
45
home/.config/foot/foot-light.ini
Normal file
45
home/.config/foot/foot-light.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
pad=10x0
|
||||||
|
dpi-aware=yes
|
||||||
|
|
||||||
|
[scrollback]
|
||||||
|
lines=1000
|
||||||
|
|
||||||
|
[cursor]
|
||||||
|
blink=yes
|
||||||
|
|
||||||
|
[mouse]
|
||||||
|
hide-when-typing=yes
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
foreground = 545464
|
||||||
|
background = f2ecbc
|
||||||
|
|
||||||
|
selection-foreground = 43436c
|
||||||
|
selection-background = c9cbd1
|
||||||
|
|
||||||
|
regular0 = 1F1F28
|
||||||
|
regular1 = c84053
|
||||||
|
regular2 = 6f894e
|
||||||
|
regular3 = 77713f
|
||||||
|
regular4 = 4d699b
|
||||||
|
regular5 = b35b79
|
||||||
|
regular6 = 597b75
|
||||||
|
regular7 = 545464
|
||||||
|
|
||||||
|
bright0 = 8a8980
|
||||||
|
bright1 = d7474b
|
||||||
|
bright2 = 6e915f
|
||||||
|
bright3 = 836f4a
|
||||||
|
bright4 = 6693bf
|
||||||
|
bright5 = 624c83
|
||||||
|
bright6 = 5e857a
|
||||||
|
bright7 = 43436c
|
||||||
|
|
||||||
|
|
||||||
|
16 = cc6d00
|
||||||
|
17 = e82424
|
||||||
|
|
||||||
|
[csd]
|
||||||
|
color = fff2ecbc
|
||||||
|
button-color = ff545464
|
||||||
|
hide-when-maximized = yes
|
|
@ -1,4 +1,5 @@
|
||||||
pad=20x20
|
pad=10x0
|
||||||
|
dpi-aware=yes
|
||||||
|
|
||||||
[scrollback]
|
[scrollback]
|
||||||
lines=1000
|
lines=1000
|
||||||
|
@ -10,21 +11,34 @@ blink=yes
|
||||||
hide-when-typing=yes
|
hide-when-typing=yes
|
||||||
|
|
||||||
[colors]
|
[colors]
|
||||||
background=282c34
|
foreground = dcd7ba
|
||||||
foreground=abb2bf
|
background = 1f1f28
|
||||||
regular0=282c34
|
|
||||||
regular1=e06c75
|
selection-foreground = c8c093
|
||||||
regular2=98c379
|
selection-background = 2d4f67
|
||||||
regular3=e5c07b
|
|
||||||
regular4=61afef
|
regular0 = 090618
|
||||||
regular5=c678dd
|
regular1 = c34043
|
||||||
regular6=56b6c2
|
regular2 = 76946a
|
||||||
regular7=abb2bf
|
regular3 = c0a36e
|
||||||
bright0=3e4452
|
regular4 = 7e9cd8
|
||||||
bright1=be5046
|
regular5 = 957fb8
|
||||||
bright2=98c379
|
regular6 = 6a9589
|
||||||
bright3=d19a66
|
regular7 = c8c093
|
||||||
bright4=61afef
|
|
||||||
bright5=c678dd
|
bright0 = 727169
|
||||||
bright6=56b6c2
|
bright1 = e82424
|
||||||
bright7=5c6370
|
bright2 = 98bb6c
|
||||||
|
bright3 = e6c384
|
||||||
|
bright4 = 7fb4ca
|
||||||
|
bright5 = 938aa9
|
||||||
|
bright6 = 7aa89f
|
||||||
|
bright7 = dcd7ba
|
||||||
|
|
||||||
|
16 = ffa066
|
||||||
|
17 = ff5d62
|
||||||
|
|
||||||
|
[csd]
|
||||||
|
color = ff1f1f28
|
||||||
|
button-color = ffdcd7ba
|
||||||
|
hide-when-maximized = yes
|
||||||
|
|
64
home/.config/git/config
Normal file
64
home/.config/git/config
Normal file
|
@ -0,0 +1,64 @@
|
||||||
|
[user]
|
||||||
|
{%@@ if profile == "mko-laptop" @@%}
|
||||||
|
email = marko.korhonen@netforecast.com
|
||||||
|
{%@@ else @@%}
|
||||||
|
email = marko@korhonen.cc
|
||||||
|
{%@@ endif @@%}
|
||||||
|
name = Marko Korhonen
|
||||||
|
signingkey = F2B9F713E7ED627336DD85E444FA3F28CD931BB0
|
||||||
|
|
||||||
|
[commit]
|
||||||
|
signoff = true
|
||||||
|
gpgsign = true
|
||||||
|
|
||||||
|
[tag]
|
||||||
|
gpgSign = true
|
||||||
|
signoff = true
|
||||||
|
|
||||||
|
[format]
|
||||||
|
signoff = true
|
||||||
|
|
||||||
|
[merge]
|
||||||
|
prompt = false
|
||||||
|
conflictstyle = diff3
|
||||||
|
tool = nvim
|
||||||
|
|
||||||
|
[mergetool]
|
||||||
|
keepBackup = false
|
||||||
|
prompt = false
|
||||||
|
|
||||||
|
[mergetool "nvim"]
|
||||||
|
cmd = nvim +DiffviewOpen
|
||||||
|
|
||||||
|
[pull]
|
||||||
|
rebase = merges
|
||||||
|
|
||||||
|
[alias]
|
||||||
|
mergetest = !git switch test && git pull && git merge --no-ff -m \"Merge $1 features to test\" $1
|
||||||
|
upstream = !git push -u origin HEAD
|
||||||
|
sync = !git pull && git push
|
||||||
|
recommit = !git commit -eF $(git rev-parse --git-dir)/COMMIT_EDITMSG
|
||||||
|
pull-merge = pull --no-rebase --no-ff --no-edit
|
||||||
|
log-merge = log -i --grep=merge --pretty=oneline
|
||||||
|
log-fp = log --first-parent --pretty=oneline
|
||||||
|
ll = log --pretty=oneline
|
||||||
|
dno = !git --no-pager diff --name-only
|
||||||
|
|
||||||
|
[color]
|
||||||
|
pager = no
|
||||||
|
|
||||||
|
[init]
|
||||||
|
defaultBranch = main
|
||||||
|
|
||||||
|
[credential]
|
||||||
|
helper = cache --timeout=600
|
||||||
|
helper = !pass-git-helper $@
|
||||||
|
|
||||||
|
[rerere]
|
||||||
|
enabled = true
|
||||||
|
|
||||||
|
[submodule]
|
||||||
|
recurse = true
|
||||||
|
|
||||||
|
[push]
|
||||||
|
recurseSubmodules = check
|
|
@ -1,3 +1,4 @@
|
||||||
VteTerminal, vte-terminal {
|
VteTerminal,
|
||||||
padding: 40px;
|
vte-terminal {
|
||||||
|
padding: 40px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
var child_process = require("child_process");
|
var child_process = require('child_process');
|
||||||
|
|
||||||
function getStdout(cmd) {
|
function getStdout(cmd) {
|
||||||
var stdout = child_process.execSync(cmd);
|
var stdout = child_process.execSync(cmd);
|
||||||
return stdout.toString().trim();
|
return stdout.toString().trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.host = "imap.migadu.com";
|
exports.host = 'imap.migadu.com';
|
||||||
exports.port = 993;
|
exports.port = 993;
|
||||||
exports.tls = true;
|
exports.tls = true;
|
||||||
exports.tlsOptions = {
|
exports.tlsOptions = {
|
||||||
rejectUnauthorized: true,
|
rejectUnauthorized: true,
|
||||||
};
|
};
|
||||||
exports.username = "admin@korhonen.cc";
|
exports.username = 'admin@korhonen.cc';
|
||||||
exports.password = "{{@@ env['PASS_EMAIL_ADMIN'] @@}}";
|
exports.password = "{{@@ env['PASS_EMAIL_ADMIN'] @@}}";
|
||||||
exports.onNewMail = "mbsync admin@korhonen.cc";
|
exports.onNewMail = 'mbsync admin@korhonen.cc';
|
||||||
exports.onNewMailPost =
|
exports.onNewMailPost =
|
||||||
"~/git/dotfiles/scripts/mail/notify-new-mail.sh admin@korhonen.cc";
|
'~/git/dotfiles/scripts/mail/notify-new-mail.sh admin@korhonen.cc';
|
||||||
exports.boxes = ["INBOX"];
|
exports.boxes = ['INBOX'];
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
var child_process = require("child_process");
|
var child_process = require('child_process');
|
||||||
|
|
||||||
function getStdout(cmd) {
|
function getStdout(cmd) {
|
||||||
var stdout = child_process.execSync(cmd);
|
var stdout = child_process.execSync(cmd);
|
||||||
return stdout.toString().trim();
|
return stdout.toString().trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.host = "imap.migadu.com";
|
exports.host = 'imap.migadu.com';
|
||||||
exports.port = 993;
|
exports.port = 993;
|
||||||
exports.tls = true;
|
exports.tls = true;
|
||||||
exports.tlsOptions = {
|
exports.tlsOptions = {
|
||||||
rejectUnauthorized: true,
|
rejectUnauthorized: true,
|
||||||
};
|
};
|
||||||
exports.username = "functionalhacker@korhonen.cc";
|
exports.username = 'functionalhacker@korhonen.cc';
|
||||||
exports.password = "{{@@ env['PASS_EMAIL_HACKER'] @@}}";
|
exports.password = "{{@@ env['PASS_EMAIL_HACKER'] @@}}";
|
||||||
exports.onNewMail = "mbsync functionalhacker@korhonen.cc";
|
exports.onNewMail = 'mbsync functionalhacker@korhonen.cc';
|
||||||
exports.onNewMailPost =
|
exports.onNewMailPost =
|
||||||
"~/git/dotfiles/scripts/mail/notify-new-mail.sh functionalhacker@korhonen.cc";
|
'~/git/dotfiles/scripts/mail/notify-new-mail.sh functionalhacker@korhonen.cc';
|
||||||
exports.boxes = ["INBOX"];
|
exports.boxes = ['INBOX'];
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
var child_process = require("child_process");
|
var child_process = require('child_process');
|
||||||
|
|
||||||
function getStdout(cmd) {
|
function getStdout(cmd) {
|
||||||
var stdout = child_process.execSync(cmd);
|
var stdout = child_process.execSync(cmd);
|
||||||
return stdout.toString().trim();
|
return stdout.toString().trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.host = "imap.migadu.com";
|
exports.host = 'imap.migadu.com';
|
||||||
exports.port = 993;
|
exports.port = 993;
|
||||||
exports.tls = true;
|
exports.tls = true;
|
||||||
exports.tlsOptions = {
|
exports.tlsOptions = {
|
||||||
rejectUnauthorized: true,
|
rejectUnauthorized: true,
|
||||||
};
|
};
|
||||||
exports.username = "marko@korhonen.cc";
|
exports.username = 'marko@korhonen.cc';
|
||||||
exports.password = "{{@@ env['PASS_EMAIL_MARKO'] @@}}";
|
exports.password = "{{@@ env['PASS_EMAIL_MARKO'] @@}}";
|
||||||
exports.onNewMail = "mbsync marko@korhonen.cc";
|
exports.onNewMail = 'mbsync marko@korhonen.cc';
|
||||||
exports.onNewMailPost =
|
exports.onNewMailPost =
|
||||||
"~/git/dotfiles/scripts/mail/notify-new-mail.sh marko@korhonen.cc";
|
'~/git/dotfiles/scripts/mail/notify-new-mail.sh marko@korhonen.cc';
|
||||||
exports.boxes = ["INBOX"];
|
exports.boxes = ['INBOX'];
|
||||||
|
|
|
@ -1,7 +1,12 @@
|
||||||
background-color=#282828
|
background-color=#1E1D2F
|
||||||
text-color=#EBDBB2
|
text-color=#D9E0EE
|
||||||
border-color=#D65D0E
|
border-color=#96CDFB
|
||||||
|
progress-color=over #302D41
|
||||||
|
|
||||||
icons=1
|
icons=1
|
||||||
default-timeout=5000
|
default-timeout=5000
|
||||||
max-visible=6
|
max-visible=6
|
||||||
layer=overlay
|
layer=overlay
|
||||||
|
|
||||||
|
[urgency=high]
|
||||||
|
border-color=#F8BD96
|
||||||
|
|
|
@ -17,7 +17,10 @@ mpvqueue %U
|
||||||
^https?://(?:[a-z0-9\-]+\.)+[a-z]{2,6}(?:/[^/#?]+)+\.(?:mp4|mkv|webm|avi|3gp|gif|gifv)
|
^https?://(?:[a-z0-9\-]+\.)+[a-z]{2,6}(?:/[^/#?]+)+\.(?:mp4|mkv|webm|avi|3gp|gif|gifv)
|
||||||
|
|
||||||
mpvqueue %U
|
mpvqueue %U
|
||||||
^https://www.facebook.com/watch/?v=.*
|
^https?://www.facebook.com/watch/?v=.*
|
||||||
|
|
||||||
|
mpvqueue %U
|
||||||
|
^https?://www.facebook.com/.*/videos/.*
|
||||||
|
|
||||||
mpvqueue %U
|
mpvqueue %U
|
||||||
^https://fb.watch/.*
|
^https://fb.watch/.*
|
||||||
|
@ -31,11 +34,8 @@ mpvqueue %U
|
||||||
mpvqueue %U
|
mpvqueue %U
|
||||||
^https?://v.redd.it/.*
|
^https?://v.redd.it/.*
|
||||||
|
|
||||||
imgurviewer %U
|
mpvqueue %U
|
||||||
^https?://(www.)?imgur.com/a/
|
^https?://areena.yle.fi.*
|
||||||
|
|
||||||
imgurviewer %U
|
|
||||||
^https?://(www.)?imgur.com/gallery/
|
|
||||||
|
|
||||||
imageviewer %U
|
imageviewer %U
|
||||||
^https?://(?:[a-z0-9\-]+\.)+[a-z]{2,6}(?:/[^/#?]+)+\.(?:jpg|jpeg|png|svg)
|
^https?://(?:[a-z0-9\-]+\.)+[a-z]{2,6}(?:/[^/#?]+)+\.(?:jpg|jpeg|png|svg)
|
||||||
|
@ -48,6 +48,3 @@ alacritty -e rtv "%U"
|
||||||
|
|
||||||
alacritty -e rtv "%U"
|
alacritty -e rtv "%U"
|
||||||
^https?://redd.it.*
|
^https?://redd.it.*
|
||||||
|
|
||||||
mpv "$(yle-dl --showurl %U)"
|
|
||||||
^https?://areena.yle.fi.*
|
|
||||||
|
|
|
@ -1,25 +1,24 @@
|
||||||
music_directory "~/music"
|
music_directory "~/Music"
|
||||||
playlist_directory "~/music/Playlists"
|
playlist_directory "~/Music/Playlists"
|
||||||
db_file "~/.mpd/database"
|
db_file "~/.mpd/database"
|
||||||
log_file "~/.mpd/log"
|
log_file "~/.mpd/log"
|
||||||
pid_file "~/.mpd/pid"
|
state_file "~/.mpd/state"
|
||||||
state_file "~/.mpd/state"
|
sticker_file "~/.mpd/sticker.sql"
|
||||||
sticker_file "~/.mpd/sticker.sql"
|
|
||||||
|
|
||||||
replaygain "track"
|
replaygain "track"
|
||||||
|
|
||||||
default_permissions "read"
|
default_permissions "read,add,control"
|
||||||
password "{{@@ env['PASS_MPD'] @@}}@read,add,control"
|
password "{{@@ env['PASS_MPD'] @@}}@read,add,control"
|
||||||
password "{{@@ env['PASS_MPD_ADMIN'] @@}}@read,add,control,admin"
|
password "{{@@ env['PASS_MPD_ADMIN'] @@}}@read,add,control,admin"
|
||||||
|
|
||||||
audio_output {
|
audio_output {
|
||||||
type "fifo"
|
type "fifo"
|
||||||
name "Visualizer"
|
name "Visualizer"
|
||||||
path "/tmp/mpd.fifo"
|
path "/tmp/mpd.fifo"
|
||||||
format "44100:16:2"
|
format "44100:16:2"
|
||||||
}
|
}
|
||||||
|
|
||||||
audio_output {
|
audio_output {
|
||||||
type "pulse"
|
type "pipewire"
|
||||||
name "MPD PulseAudio"
|
name "MPD PipeWire"
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,3 +22,5 @@ MUTE cycle ao-mute
|
||||||
|
|
||||||
= add audio-delay 0.100
|
= add audio-delay 0.100
|
||||||
- add audio-delay -0.100
|
- add audio-delay -0.100
|
||||||
|
|
||||||
|
s playlist-shuffle
|
||||||
|
|
|
@ -7,10 +7,8 @@ vo=gpu
|
||||||
hwdec=vaapi
|
hwdec=vaapi
|
||||||
hwdec-codecs=all
|
hwdec-codecs=all
|
||||||
|
|
||||||
{%@@ if profile == "Mirkwood" @@%}
|
{%@@ if wayland @@%}
|
||||||
gpu-context=wayland
|
gpu-context=wayland
|
||||||
{%@@ elif profile == "Rivendell" @@%}
|
|
||||||
ao=alsa
|
|
||||||
{%@@ endif @@%}
|
{%@@ endif @@%}
|
||||||
|
|
||||||
#############
|
#############
|
||||||
|
@ -27,8 +25,12 @@ replaygain=track
|
||||||
# Start ipc server
|
# Start ipc server
|
||||||
input-ipc-server=/tmp/mpvsocket
|
input-ipc-server=/tmp/mpvsocket
|
||||||
|
|
||||||
# set youtube-dl max res to 1080
|
# set youtube-dl max res
|
||||||
|
{%@@ if profile == "Moria" @@%}
|
||||||
|
ytdl-format=bestvideo[height<=2160]+bestaudio/best[height<=2160]
|
||||||
|
{%@@ else @@%}
|
||||||
ytdl-format=bestvideo[height<=1080]+bestaudio/best[height<=1080]
|
ytdl-format=bestvideo[height<=1080]+bestaudio/best[height<=1080]
|
||||||
|
{%@@ endif @@%}
|
||||||
|
|
||||||
# continue watching
|
# continue watching
|
||||||
save-position-on-quit
|
save-position-on-quit
|
||||||
|
@ -72,7 +74,7 @@ osd-bar-w=60 # width of " " "
|
||||||
osd-shadow-color="#11000000"
|
osd-shadow-color="#11000000"
|
||||||
osd-fractions
|
osd-fractions
|
||||||
|
|
||||||
# Protocol specific configuration
|
# Protocol specific configuration
|
||||||
[protocol.https]
|
[protocol.https]
|
||||||
cache=yes
|
cache=yes
|
||||||
user-agent='Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0'
|
user-agent='Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0'
|
||||||
|
@ -104,8 +106,4 @@ ytdl-format="bestvideo[height<=2160]+bestaudio/best[height<=2160]"
|
||||||
[best]
|
[best]
|
||||||
ytdl-format="bestvideo+bestaudio"
|
ytdl-format="bestvideo+bestaudio"
|
||||||
|
|
||||||
# Vulkan hwdec profile
|
script-opts-append=ytdl_hook-ytdl_path=yt-dlp
|
||||||
[vulkan]
|
|
||||||
gpu-api=vulkan
|
|
||||||
gpu-context=waylandvk
|
|
||||||
hwdec=vaapi-copy
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue