1
Fork 0

Fail2ban, more wallpapers, better lua theming & more

This commit is contained in:
prescientmoon 2024-04-13 22:42:29 +02:00
parent 504ec75c55
commit 5652b531ba
Signed by: prescientmoon
SSH key fingerprint: SHA256:UUF9JT2s8Xfyv76b8ZuVL7XrmimH4o49p4b+iexbVH4
20 changed files with 264 additions and 34 deletions

View file

@ -24,7 +24,7 @@ let
catppuccin-latte = {
stylix = {
image = ./wallpapers/watercag.png;
image = ./wallpapers/field_diamond.jpg;
base16Scheme = "${inputs.catppuccin-base16}/base16/latte.yaml";
opacity = transparency 0.7;
polarity = "light";

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 MiB

View file

@ -59,8 +59,8 @@ in
search.force = true;
search.default = "Moonythm";
# Set styles applied to every website
userContent = builtins.readFile ./userContent.css;
# Set styles applied to firefox itself
userChrome = builtins.readFile ./userChrome.css;
# }}}
# {{{ Extensions
extensions =

View file

@ -0,0 +1,3 @@
#TabsToolbar {
visibility: collapse;
}

View file

@ -1,4 +1,4 @@
wakatime_config: ENC[AES256_GCM,data:IgGcMQNf8u2KXjgI60zPKZ6M7oxibbQK+in/9jrnEzk20WA1JM122zICXYuLfuQgNd2CMoEeu4LivQHv/D79tw==,iv:HoS00ihAX+SCw58kgcnvqAy4ILdS+/RPMqQwXusTqYU=,tag:0sSaZTrjO43PB7g215wwUA==,type:str]
wakatime_config: ENC[AES256_GCM,data:4ZlmrZuB8kBb3DkTmjZFztxzra5owHUWawql5nqkdFs1Qbx1jF9O0PC9cc7qq1j6JlYqVKcJHn/hwEiKnN8qtX0sLW38mnF06uDr2E0ibuNXbiKeMg6/xOnxFer5uI6pUZAYdCtqexfb5C6qY/OfrSYAfpSXNqhrhga3yS/gQlz4fwaylkgScvvrdqNrXdPlRhekoffizAeaF2u9GWkC8akFJEJYHB4lP9ZS6orVwlBTEV4xAKhySD8HP96yvHUvUgwr,iv:BrkrWwim5Vj6XnrIr8hNKtXOc/sVni9zhXh1JrkwPKs=,tag:Uf1Sk3AOXgTPmdpd4U0mFQ==,type:str]
sops:
kms: []
gcp_kms: []
@ -14,8 +14,8 @@ sops:
cURjWFplY1pyMzY4a0h6cTRLS2I2ZW8KqGtYjCsdriSWdKhC+kGBAMSY9WVDL3tE
oMxyhrgDMtWndZEGv1+J3XLLmatDKmEcJO2k0CXZlCWWj17O4Rm+eA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-01-31T18:29:11Z"
mac: ENC[AES256_GCM,data:PmKn6D+olZSKrjY0i9zZ3YZxi+k39CS7ckUF7YaVINqZlCBNe12T+FnPyHhH/vDujA61ZzalsY14SHwSkOwMNVTJ9tdvOEfpEtwq0wKn+5TQmz8LfWNBUazRefhY0hKZN/k/akRjRh65wOvMZfah+L6A9wA7vW1OrCbLtAKExsY=,iv:9vGJAzjRN6MxRG7EeYKKft3YElkicu0XX8Q28Ua2n3M=,tag:eyg5yUH2ME2annShaFQAqg==,type:str]
lastmodified: "2024-04-08T16:37:07Z"
mac: ENC[AES256_GCM,data:aBJ81nrFPg42KXFcbeKVSSiARDxv28jyKwwBcrGJyyMCjHBMAFVkqunCAP3QWKXy8idabLye2PE9kc0aQaQy1pNCnuum2ejbNYKstEZHrUSxS0v7Mt3Z47IRY1PGp7ovauJXAGe0TB28wslQuUTCE5AyxO+/eaf9q9uWF71X0pw=,iv:oe0YzuFO7QXQZAoSA2O682X9UoTTOo7sUVZceRyYQtY=,tag:9GGULWn3vlTdGEoOVIOzmQ==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.8.1

View file

@ -18,19 +18,27 @@ local font_size = 20.0
config.colors = wezterm.color.load_base16_scheme(colorscheme.source)
-- {{{ Window frame
local tab_bar_bg = colorscheme.transparency.terminal.base04
config.window_frame = {
font = wezterm.font({ family = colorscheme.fonts.sansSerif }),
font_size = font_size,
active_titlebar_bg = colorscheme.base00,
inactive_titlebar_bg = colorscheme.base00,
font_size = font_size - 3,
active_titlebar_bg = tab_bar_bg,
inactive_titlebar_bg = tab_bar_bg,
}
config.window_padding = {
left = "1cell",
right = "1cell",
top = "0.4cell",
bottom = "0.4cell",
}
-- }}}
-- {{{ Tab bar colors
config.colors.tab_bar = {
background = colorscheme.base02,
background = tab_bar_bg,
active_tab = {
bg_color = colorscheme.base0A,
fg_color = colorscheme.base00,
bg_color = colorscheme.transparency.terminal.base00,
fg_color = colorscheme.base05,
},
inactive_tab = {
bg_color = colorscheme.base02,
@ -49,10 +57,13 @@ config.colors.tab_bar = {
fg_color = colorscheme.base05,
italic = true,
},
-- The color of the inactive tab bar edge/divider
inactive_tab_edge = "none",
}
-- }}}
-- {{{ Other visual things
config.window_background_opacity = colorscheme.opacity.terminal
config.window_background_opacity = colorscheme.transparency.terminal.value
-- }}}
-- }}}
-- {{{ Main config options
@ -66,9 +77,11 @@ config.font_size = font_size
config.font = wezterm.font(colorscheme.fonts.monospace)
-- }}}
-- {{{ Tab bar
config.tab_bar_at_bottom = false
config.use_fancy_tab_bar = true
-- config.enable_tab_bar = false
config.hide_tab_bar_if_only_one_tab = true
config.show_tab_index_in_tab_bar = false
config.show_new_tab_button_in_tab_bar = false
-- }}}
-- {{{ Keycodes
config.disable_default_key_bindings = false

View file

@ -11,7 +11,7 @@ function M.config()
local bluloco = require("bluloco")
bluloco.setup({
transparent = H.theme.opacity.terminal < 1.0,
transparent = H.theme.transaprency.terminal.enabled,
style = H.theme_variant("Bluloco"),
})

View file

@ -12,7 +12,7 @@ function M.config()
vim.g.catppuccin_flavour = H.theme_variant("Catppuccin")
catppuccin.setup({
transparent_background = H.theme.transparent.terminal,
transparent_background = H.theme.transparency.terminal.enabled,
integrations = {
nvimtree = true,
telescope = true,
@ -25,7 +25,7 @@ function M.config()
vim.cmd("colorscheme catppuccin")
if H.theme.transparent.terminal then
if H.theme.transparency.terminal.enabled then
vim.cmd([[highlight FloatBorder blend=0 guibg=NONE]])
-- vim.cmd([[highlight MiniStatuslineInactive blend=0 guibg=NONE]])
vim.cmd([[highlight MiniStatuslineFilename blend=0 guibg=NONE]])

View file

@ -0,0 +1,103 @@
for thmenv <- @{theorem,lemma,exercise,definition,corollary,example}
for thmprefix <- @{@thmenv:thm,lem,exe,def,cor,exa}
block auto !math start
for env <- @{$1,enumerate,itemize,align*}
string @{@env:begin,olist,ulist,dm}
name @{@env:environment,ordered list,unordered list,display math}
snip
\begin{@env}
$0
\end{@env}
end
string @thmprefix
snip
\begin{@thmenv}$?1{[@^{$1}]} \label{@thmprefix:$2}
$0
\end{@thmenv}
end
string proof
snip
\begin{proof}$?1{[Proof of @^{$1}]}
$0
\end{proof}
end
string ciff
name cases for ⟺
snip
\begin{enumerate}
\item[$\implies$]$1,
\item[$\impliedby$]$2,
\end{enumerate}
$0
end
string item
snip \item$|1{,[$1] $0}
block auto !math
string ref
snip \ref{$1}$0
string r@thmprefix
snip \ref{@thmprefix:$1}$0
string pref
snip (\ref{$1})$0
string pr@thmprefix
snip (\ref{@thmprefix:$1})$0
string quote
snip ``$1''$0
string forcecr
snip {\ \\\\}
pattern ([Ll]et)
name definition
snip @1 \$$1 = $2\$
string im
name inline math
snip \$$1\$$0
block math end
for suffix <- @{add,sub,rmul,pow,inv}
string ex@suffix
snip
&& \lrb{\square @{@suffix:
+ $1,
- $1,
\cdot $1,
^{$1\},
^{-1\},
}}$0
end
for prefix <- @{neg,mul,ln}
string ex@prefix
snip && \lrb{@{@prefix:-,$1,\ln} \square}$0
string exdiv
snip && \lrb{\frac \square {$1}}$0
string exint
snip && \lrb{\int\square \dif $1}$0
string exdint
snip && \lrb{\int_{$1}^{$2}\square \dif $3}$0
for kind <- @{texpl,extrin,exbound,exdef}
string @kind
snip
&& \lrb{\text{@{kind:
$1,
triangle inequality on \$$1\$,
\$$1\$ is bounded,
definition of \$$1\$,
}}}$0
end
for operator <- {overline,hat,abs,norm}
string @operator
snip \\@operator $|1{ $1,{$1\}$0}

View file

@ -0,0 +1,77 @@
" if exists("b:current_syntax")
" finish
" endif
set iskeyword+=-
syn match mirosComment "\v--.*$"
hi link mirosComment Comment
syn match mirosName /\v\@\h\w*/ contained
syn match mirosLiteral /\v.+/ contained contains=mirosName,mirosArray oneline
hi link mirosLiteral mirosString
syn match mirosFor /\vfor\s+\w+\s+\<-\s+/ nextgroup=mirosArray
syn match mirosForName /\vfor\s+\w+\s+/ contained containedin=mirosFor
hi link mirosForName mirosName
syn match mirosKeyword /\vfor/ contained containedin=mirosForName
syn match mirosOperator "\v\<\-" contained containedin=mirosFor
syn match mirosBlock /\v^\s*block(\s+(auto|!?(start|math)))*/
syn match mirosKeyword /\vblock/ contained containedin=mirosBlock
syn match mirosBlockContext /\v(auto|start|math)/ contained containedin=mirosBlock
hi link mirosBlockContext Constant
syn match mirosOperator /\v!/ contained containedin=mirosBlock
syn match mirosDecl /\v^\s*(desc|name|string|pattern)\s+/ nextgroup=mirosLiteral
syn match mirosKeyword /\v(desc|name|string|pattern)/ contained containedin=mirosDecl
syn match mirosDecl /\v^\s*postfix(\s+|$)/ nextgroup=mirosLiteral
syn match mirosKeyword /\vpostfix/ contained containedin=mirosDecl
syn region mirosArray matchgroup=mirosArrayBraces start=/\v\@\{/ skip=/\v\\\\|\\}/ end=/\v\}/ contained contains=mirosName,mirosArray,mirosTabStop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice,mirosCall
hi link mirosArrayBraces mirosOperator
syn match mirosArrayMap /\v\@\w+:/ contained containedin=mirosArray contains=mirosName
syn match mirosArrayColon /\v:/ contained containedin=mirosArrayMap
hi link mirosArrayColon mirosOperator
syn region mirosShortSnipDecl matchgroup=mirosKeyword start=/\v^\s*snip\s+/ end=/\v$/ contains=mirosName,mirosArray,mirosTabstop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice,mirosCall
syn region mirosLongSnipDecl matchgroup=mirosKeyword start=/\v^\s*snip\s*$/ end=/\v^\s*end/ contains=mirosName,mirosArray,mirosTabstop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice,mirosCall
syn match mirosTabStop /\v\$\d/ contained
hi link mirosTabStop mirosOperator
syn region mirosNonempty start=/\v\$\?\d\{/ matchgroup=mirosOperator skip=/\v\\\\|\\}/ end=/\v\}/ contained contains=mirosName,mirosArray,mirosTabStop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice,mirosCall
syn match mirosNonemptyDelim /\v\$\?\d\{/ contained containedin=mirosNonempty
hi link mirosNonemptyDelim mirosOperator
syn region mirosNeEscape matchgroup=mirosOperator start=/\v\@\^\{/ skip=/\v\\\\|\\}/ end=/\v\}/ contained contains=mirosName,mirosArray,mirosTabStop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice
syn match mirosCapture /\v\@\d/ contained
hi link mirosCapture mirosOperator
syn match mirosNumber /\v\d/ contained containedin=mirosCapture
syn region mirosChoice start=/\v\$\|\d\{/ matchgroup=mirosOperator skip=/\v\\\\|\\}/ end=/\v\}/ contained contains=mirosName,mirosArray,mirosTabStop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice,mirosCall
syn match mirosChoiceDelim /\v\$\|\d\{/ contained containedin=mirosChoice
hi link mirosChoiceDelim mirosOperator
syn region mirosCall start=/@:\w\+(/ skip=/\v\\\\|\\\)/ matchgroup=mirosOperator end=')' contained contains=mirosName,mirosArray,mirosTabStop,mirosNonempty,mirosNeEscape,mirosCapture,mirosChoice,mirosCall
syn match mirosCallStart /\v\@:\w+/ contained containedin=mirosCall
hi link mirosCallStart mirosOperator
syn match mirosCallFunc /\v\w+/ contained containedin=mirosCallStart
hi link mirosCallFunc mirosName
syn match mirosOperator /(/ contained containedin=mirosCall
syn match mirosNumber /\v\d/ contained containedin=mirosNonemptyDelim,mirosTabStop,mirosChoiceDelim
syn match mirosComma /\v,/ contained containedin=mirosArray,mirosChoice
hi link mirosComma mirosOperator
hi link mirosString String
hi link mirosOperator Operator
hi link mirosFunction Function
hi link mirosKeyword Keyword
hi link mirosName Identifier
hi link mirosNumber Number
let b:current_syn = "miros"

View file

@ -260,7 +260,7 @@ let
"4:configure-neovide" = {
cond = whitelist "neovide";
vim.g = {
neovide_transparency = lua ''D.tempest.theme.opacity.applications'';
neovide_transparency = lua ''D.tempest.theme.transparency.applications.value'';
neovide_cursor_animation_length = 0.04;
neovide_cursor_animate_in_insert_mode = false;
};
@ -1574,6 +1574,8 @@ in
{
satellite.lua.styluaConfig = ../../../stylua.toml;
imports = [ ../desktop/wakatime ];
# {{{ Basic config
# We still want other modules to know that we are using neovim!
satellite.toggles.neovim.enable = true;

View file

@ -20,7 +20,7 @@ decoration {
size = 10
passes = 4
contrast = 1.2
brightness = 1.1
brightness = 1.0
noise = 0.05
}
}

View file

@ -63,6 +63,10 @@ in
];
};
# By default, this will ban failed ssh attempts
services.fail2ban.enable = true;
# Makes it easy to copy host keys at install time without messing up permissions
systemd.tmpfiles.rules = [ "d /persist/state/etc/ssh" ];
}

View file

@ -160,9 +160,9 @@ let
(deflayer purple
_ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ @cps @cpy next volu brup _ _ _
_ _ _ _ _ _ @udo @pst pp vold brdn _ _
_ _ _ _ _ _ _ @cut prev mute _ _
_ f1 f2 f3 f4 f5 @cps @cpy next volu brup _ _ _
_ f6 f7 f8 f9 f10 @udo @pst pp vold brdn _ _
_ f11 f12 _ _ _ _ @cut prev mute _ _
_ _ _ _ _
)
;; }}}

View file

@ -11,6 +11,7 @@ let
"alternativeto.net"
"linuxiac.com"
"www.linuxlinks.com"
"sourceforge.net"
];
in
{

View file

@ -66,4 +66,8 @@
enable = true;
package = pkgs.mysql80;
};
programs.dconf.enable = true;
services.gnome.evolution-data-server.enable = true;
services.gnome.gnome-online-accounts.enable = true;
}

View file

@ -12,6 +12,36 @@
korora = inputs.korora.lib;
};
mkTransparencyTarget = name:
let
color = index: "rgba(${
config.satellite.theming.colors.rgb "base${index}"
},${
toString config.stylix.opacity.${name}
})";
in
{
enabled = config.stylix.opacity.${name} < 1.0;
value = config.stylix.opacity.${name};
base00 = color "00";
base01 = color "01";
base02 = color "02";
base03 = color "03";
base04 = color "04";
base05 = color "05";
base06 = color "06";
base07 = color "07";
base08 = color "07";
base09 = color "09";
base0A = color "0A";
base0B = color "0B";
base0C = color "0C";
base0D = color "0D";
base0E = color "0E";
base0F = color "0F";
};
theme = {
name = config.lib.stylix.scheme.scheme;
base00 = config.lib.stylix.scheme.base00;
@ -37,18 +67,11 @@
sansSerif = config.stylix.fonts.sansSerif.name;
monospace = config.stylix.fonts.monospace.name;
};
opacity = {
terminal = config.stylix.opacity.terminal;
applications = config.stylix.opacity.applications;
desktop = config.stylix.opacity.desktop;
popups = config.stylix.opacity.popups;
};
# Whether to enable transparency for different targets
transparent = {
terminal = config.stylix.opacity.terminal < 1.0;
applcations = config.stylix.opacity.applications < 1.0;
desktop = config.stylix.opacity.desktop < 1.0;
popups = config.stylix.opacity.popups < 1.0;
transparency = {
terminal = mkTransparencyTarget "terminal";
applications = mkTransparencyTarget "applications";
desktop = mkTransparencyTarget "desktop";
popups = mkTransparencyTarget "popups";
};
rounding = {
enable = config.satellite.theming.rounding.enable;