Compare commits

..

No commits in common. "master" and "clean_emacs" have entirely different histories.

34 changed files with 609 additions and 1358 deletions

2
.gitignore vendored
View File

@ -14,7 +14,7 @@ config/.mozilla/*
!config/.mozilla/firefox/profiles.ini !config/.mozilla/firefox/profiles.ini
config/.scripts/playstate config/.scripts/playstate
config/.ssh/* config/.ssh/*
!config/.ssh/config* !config/.ssh/config
emacs/.emacs.d/* emacs/.emacs.d/*
!emacs/.emacs.d/config.org !emacs/.emacs.d/config.org
!emacs/.emacs.d/ledger.org !emacs/.emacs.d/ledger.org

184
README.md
View File

@ -2,94 +2,24 @@
This is my ArchLinux configuration. This is my ArchLinux configuration.
Tested on Acer Travelmate X349-G2-M and Lenovo Thinkpad E14 G5. Tested on Acer Travelmate X349-G2-M and Lenovo Thinkpad E14 G5.
First one was a Intel machine, the current one a AMD machine, hence the changes
towards AMD graphics.
## Install dependencies ## Install dependencies
```bash ```bash
# System paru -S syncthing feh bottom zellij eza bat maim vlc python-pillow i3lock-color \
paru -S linux-headers wget \ vlc fd ripgrep unzip npm bacon simple-scan dunst picom \
btrfs-progs udiskie blueman openssh lshw less dmidecode adobe-source-han-sans-jp-fonts obs-studio git zsh wget lightdm \
lightdm-webkit2-greeter xorg-server i3-gaps xorg-xbacklight xorg-xrandr \
## Audio alsa-utils pulseaudio pulseaudio-alsa pulseaudio-bluetooth playerctl \
paru -S alsa-utils pulseaudio pulseaudio-alsa pulseaudio-bluetooth pavucontrol bluez-utils pavucontrol btrfs-progs udiskie blueman acpi acpid tlp conky stow openssh \
firefox veracrypt keepassxc ranger rofi chromium delta-git xdotool xclip \
## Network neofetch
paru -S bind systemd-resolvconf networkmanager
# Dotfiles
paru -S python-pillow i3lock-color stow playerctl xdotoolxsel feh \
conky maim picom dust dunst rofi neofetch
# Notebook
paru -S acpi acpid tlp
# DevTools
paru -S delta-git cargo-bloat npm bacon nvim git cargo-flamegraph tealdeer
# CPU/GPU
paru -S lib32-libva-mesa-driver lib32-mesa-vdpau mesa-vdpau nvtop \
xf86-video-amdgpu lib32-mesa libva-mesa-driver amd-ucode
# X11
paru -S xorg-server i3-gaps xorg-xbacklight xorg-xrandr xclip \
lxappearance lightdm-webkit2-greeter lightdm
# Terminal
pacman -S bottom zellij eza bat fd ripgrep zsh
# Tools
## Productivity
### Browsers
paru -S firefox chromium
### File Browser
paru -S ranger pcmanfm
### Printer
paru -S brotherconfig4 simple-scan tesseract-data-eng cups brlaser
### Typesetting
paru -S adobe-source-han-sans-jp-fonts pandoc-cli texlive-latexextra \
texlive-basic texlive-latex biber adobe-source-han-sans-kr-fonts \
texlive-fontsrecommended texlive-bibtexextra texlive-latexrecommended texlive-binextra \
texlive-langgerman texlive-fontsextra texlive-science texlive-plaingeneric
### Misc
paru -S p7zip veracrypt keepassxc syncthing vlc unzip zathura zathura-pdf-mupdf
## Troubleshooting
paru -S nmap smartmontools ldns traceroute
## Networking
paru -S tailscale wireshark-qt wireguard-tools ethtool iperf3
## obs-studio
paru -S obs-studio v4l2loopback-dkms
## Docker
paru -S docker docker-compose docker-buildx
``` ```
## Picture ## Picture
[[./resources/24-03-15_16-06-52-alacritty.png]] [[./resources/24-03-15_16-06-52-alacritty.png]]
## Permissions
### sudo
```sh
echo "%$SUDOGRP ALL=(ALL) ALL" >> /etc/sudoers
```
### Groups
```sh
usermod -a -G network $USER
usermod -a -G video $USER
usermod -a -G docker $USER
usermod -a -G $SUDOGRP $USER
```
## Get Started ## Get Started
```sh ```sh
@ -99,101 +29,3 @@ stow config
stow vim stow vim
stow zsh stow zsh
``` ```
## GUI
I'm using pcmanfm with [[Sweet - New Flavor](https://www.gnome-look.org/p/1253385/)].
The downloaded file needs to be extracted into `~/.themes/`.
The Icons are from the related icon set: [[Candy Icons](https://www.gnome-look.org/p/1305251)].
## ohmyzsh
Plugins for ohmyzsh
### eza
```sh
git clone https://github.com/z-shell/zsh-eza ~/.oh-my-zsh/custom/plugins/zsh-eza
```
## Environment
Add
```sh
VISUAL=/usr/bin/nvim
EDITOR=/usr/bin/nvim
```
to `/etc/environment`.
## NeoVim
Since we're using NeoVim, we wanna be lazy and have our configuration done for us.
I'm using lazyvim with the following plugins:
- bufferline.nvim
- dashboard-nvim
- flash.nvim
- lazy.nvim
- LazyVim
- lualine.nvim
- mini.ai
- mini.pairs
- noice.nvim
- nui.nvim
- nvim-notify
- nvim-treesitter
- nvim-treesitter-textobjects
- onedark.vim
- trouble.nvim
- ts-comments.nvim
- vim-ledger 0.25ms  start
- vimtex 0.24ms  start
- which-key.nvim
- yanky.nvim
We need run nvim as sudo at least once, to startup the process of enabling to download
additional language dictionaries.
We can able it with `:setlocal spell spelllang=en_us,de_de`.
## Systemd
Enable:
- tlp
- acpid
- NetworkManager
- cups
## Printer/Scanner MFC-L2710DW
I notice this is becoming more of a documentation on how to set my own laptop,
but...
¯\\_(ツ)_/¯
### Scanning
```sh
sudo brsaneconfig4 -a name=MFC-L2710DW model=MFC-L2710DW nodename=192.168.50.219
```
### Printing
You can add the printer via cups web gui on [http://localhost:631](http://localhost:631)
with the link [http://192.168.50.219](http://192.168.50.219).
## Networking
### eduroam
Have to install networkmanager specifically for eduroam. Otherwise I'd stick to
systemd-networkd.
## obs-studio
Need to run the following manually
```sh
sudo modprobe v4l2loopback
```

View File

@ -1,6 +1,6 @@
! urxvt ! urxvt
! Fonts ! Fonts
urxvt*font: xft:DejaVuSansM Nerd Font Mono:style=Regular:size=10:hinting=full, xft:Symbola:style=Regular:pixelsize=10 urxvt*font: xft:DejaVuSansM Nerd Font Mono:style=Regular:size=11:hinting=full
! Behavior ! Behavior
urxvt*scrollBar: false urxvt*scrollBar: false

View File

@ -11,39 +11,9 @@ style = "Bold Italic"
style = "Italic" style = "Italic"
[font.normal] [font.normal]
family = "DejaVu Sans Code" family = "DejaVuSansM Nerd Font Mono"
style = "Regular" style = "Regular"
[window] [window]
decorations = "none" decorations = "none"
opacity = 0.9 opacity = 0.9
# From: https://github.com/alacritty/alacritty-theme
#r Colors (One Dark)
# Default colors
[colors.primary]
background = '#282c34'
foreground = '#abb2bf'
# Normal colors
[colors.normal]
black = '#1e2127'
red = '#e06c75'
green = '#98c379'
yellow = '#d19a66'
blue = '#61afef'
magenta = '#c678dd'
cyan = '#56b6c2'
white = '#abb2bf'
# Bright colors
[colors.bright]
black = '#5c6370'
red = '#e06c75'
green = '#98c379'
yellow = '#d19a66'
blue = '#61afef'
magenta = '#c678dd'
cyan = '#56b6c2'
white = '#ffffff'

View File

@ -1,4 +1,4 @@
# See dunst(5) for all configuration options # From https://github.com/addy-dclxvi/almighty-dotfiles
[global] [global]
### Display ### ### Display ###
@ -17,68 +17,42 @@
# #
# If this option is set to mouse or keyboard, the monitor option # If this option is set to mouse or keyboard, the monitor option
# will be ignored. # will be ignored.
follow = none follow = mouse
### Geometry ### # The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels. If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like). If width is 0, the window expands to the longest
# message displayed. A positive x is measured from the left, a
# negative from the right side of the screen. Y is measured from
# the top and down respectively.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "250x-50-30+20"
# dynamic width from 0 to 300 # Show how many messages are currently hidden (because of geometry).
# width = (0, 300)
# constant width of 300
width = 300
# The maximum height of a single notification, excluding the frame.
height = 300
# Position the notification in the top right corner
origin = top-right
# Offset from the origin
offset = 10x50
# Scale factor. It is auto-detected if value is 0.
scale = 0
# Maximum number of notification (0 means no limit)
notification_limit = 20
### Progress bar ###
# Turn on the progess bar. It appears when a progress hint is passed with
# for example dunstify -h int:value:12
progress_bar = true
# Set the progress bar height. This includes the frame, so make sure
# it's at least twice as big as the frame width.
progress_bar_height = 10
# Set the frame width of the progress bar
progress_bar_frame_width = 1
# Set the minimum width for the progress bar
progress_bar_min_width = 150
# Set the maximum width for the progress bar
progress_bar_max_width = 300
# Corner radius for the progress bar. 0 disables rounded corners.
progress_bar_corner_radius = 0
# Corner radius for the icon image.
icon_corner_radius = 0
# Show how many messages are currently hidden (because of
# notification_limit).
indicate_hidden = yes indicate_hidden = yes
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
shrink = no
# The transparency of the window. Range: [0; 100]. # The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is # This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). (X11 only) # present (e.g. xcompmgr, compiz, etc.).
transparency = 0 transparency = 0
# The height of the entire notification. If the height is smaller
# than the font height and padding combined, it will be raised
# to the font height and padding.
notification_height = 0
# Draw a line of "separator_height" pixel height between two # Draw a line of "separator_height" pixel height between two
# notifications. # notifications.
# Set to 0 to disable. # Set to 0 to disable.
# If gap_size is greater than 0, this setting will be ignored.
separator_height = 4 separator_height = 4
# Padding between text and separator. # Padding between text and separator.
@ -87,9 +61,6 @@
# Horizontal padding. # Horizontal padding.
horizontal_padding = 16 horizontal_padding = 16
# Padding between text and icon.
text_icon_padding = 0
# Defines width in pixels of frame around the notification window. # Defines width in pixels of frame around the notification window.
# Set to 0 to disable. # Set to 0 to disable.
frame_width = 2 frame_width = 2
@ -97,12 +68,6 @@
# Defines color of the frame around the notification window. # Defines color of the frame around the notification window.
frame_color = "#2f343f" frame_color = "#2f343f"
# Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border
# of size frame_width will be drawn around each notification instead.
# Click events on gaps do not currently propagate to applications below.
gap_size = 0
# Define a color for the separator. # Define a color for the separator.
# possible values are: # possible values are:
# * auto: dunst tries to find a color fitting to the background; # * auto: dunst tries to find a color fitting to the background;
@ -111,28 +76,21 @@
# * anything else will be interpreted as a X color. # * anything else will be interpreted as a X color.
separator_color = frame separator_color = frame
# Sort type. # Sort messages by urgency.
# possible values are:
# * id: sort by id
# * urgency_ascending: sort by urgency (low then normal then critical)
# * urgency_descending: sort by urgency (critical then normal then low)
# * update: sort by update (most recent always at the top)
sort = yes sort = yes
# Don't remove messages, if the user is idle (no mouse or keyboard input) # Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds. # for longer than idle_threshold seconds.
# Set to 0 to disable. # Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules idle_threshold = 120
# section for how to disable this if necessary
# idle_threshold = 120
### Text ### ### Text ###
font = Monospace 8 font = Roboto 8
# The spacing between lines. If the height is smaller than the # The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height. # font height, it will get raised to the font height.
line_height = 0 line_height = 4
# Possible values are: # Possible values are:
# full: Allow a small subset of html markup in notifications: # full: Allow a small subset of html markup in notifications:
@ -142,7 +100,7 @@
# <u>underline</u> # <u>underline</u>
# #
# For a complete reference see # For a complete reference see
# <https://docs.gtk.org/Pango/pango_markup.html>. # <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
# #
# strip: This setting is provided for compatibility with some broken # strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the # clients that send markup even though it's not enabled on the
@ -166,7 +124,6 @@
# %I iconname (without its path) # %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing # %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters # %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed # Markup is allowed
format = "<b>%s</b>\n%b" format = "<b>%s</b>\n%b"
@ -174,55 +131,40 @@
# Possible values are "left", "center" and "right". # Possible values are "left", "center" and "right".
alignment = left alignment = left
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = center
# Show age of message if message is older than show_age_threshold # Show age of message if message is older than show_age_threshold
# seconds. # seconds.
# Set to -1 to disable. # Set to -1 to disable.
show_age_threshold = 60 show_age_threshold = 60
# Specify where to make an ellipsis in long lines. # Split notifications into multiple lines if they don't fit into
# Possible values are "start", "middle" and "end". # geometry.
ellipsize = middle word_wrap = yes
# Ignore newlines '\n' in notifications. # Ignore newlines '\n' in notifications.
ignore_newline = no ignore_newline = no
# Stack together notifications with the same content # Merge multiple notifications with the same content
stack_duplicates = true stack_duplicates = true
# Hide the count of stacked notifications with the same content # Sets the stack tag for the notification, notifications with the same (non-empty) stack tag will replace each-other so only the newest one is visible.
hide_duplicate_count = false set_stack_tag = "tag"
# Hide the count of merged notifications with the same content
hide_duplicate_count = true
# Display indicators for URLs (U) and actions (A). # Display indicators for URLs (U) and actions (A).
show_indicators = yes show_indicators = yes
### Icons ### ### Icons ###
# Recursive icon lookup. You can set a single theme, instead of having to # Align icons left/right/off
# define all lookup paths. icon_position = off
enable_recursive_icon_lookup = true
# Set icon theme (only used for recursive icon lookup)
icon_theme = Adwaita
# You can also set multiple icon themes, with the leftmost one being used first.
# icon_theme = "Adwaita, breeze"
# Align icons left/right/top/off
icon_position = left
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 32
# Scale larger icons down to this size, set to 0 to disable # Scale larger icons down to this size, set to 0 to disable
max_icon_size = 128 max_icon_size = 32
# Paths to default icons (only neccesary when not using recursive icon lookup) # Paths to default icons.
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/ icon_folders = /usr/share/icons/Arc/status/16/:/usr/share/icons/Arc/devices/16/
### History ### ### History ###
@ -239,7 +181,7 @@
dmenu = /usr/bin/dmenu -p dunst: dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu. # Browser for opening urls in context menu.
browser = /usr/bin/xdg-open browser = /usr/bin/firefox -new-tab
# Always run rule-defined scripts, even if the notification is suppressed # Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true always_run_script = true
@ -250,28 +192,10 @@
# Define the class of the windows spawned by dunst # Define the class of the windows spawned by dunst
class = Dunst class = Dunst
# Define the corner radius of the notification window # Print a notification on startup.
# in pixel size. If the radius is 0, you have no rounded # This is mainly for error detection, since dbus (re-)starts dunst
# corners. # automatically after a crash.
# The radius will be automatically lowered if it exceeds half of the startup_notification = false
# notification height to avoid clipping text and/or icons.
corner_radius = 0
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
# parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
### Wayland ###
# These settings are Wayland-specific. They have no effect when using X11
# Uncomment this if you want to let notications appear under fullscreen
# applications (default: overlay)
# layer = top
# Set this to true to use X11 output on Wayland.
force_xwayland = false
### Legacy ### Legacy
@ -285,25 +209,6 @@
# layout changes. # layout changes.
force_xinerama = false force_xinerama = false
### mouse
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: Invoke the action determined by the action_name rule. If there is no
# such action, open the context menu.
# * open_url: If the notification has exactly one url, open it. If there are multiple
# ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
# * context: Open context menu for the notification.
# * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = close_current
mouse_middle_click = do_action, close_current
mouse_right_click = close_all
# Experimental features that may or may not work correctly. Do not expect them # Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases. # to have a consistent behaviour across releases.
[experimental] [experimental]
@ -314,6 +219,27 @@
# where there are multiple screens with very different dpi values. # where there are multiple screens with very different dpi values.
per_monitor_dpi = false per_monitor_dpi = false
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
close = ctrl+space
# Close all notifications.
close_all = ctrl+shift+space
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1". Make sure this key actually exists on your keyboard layout,
# e.g. check output of 'xmodmap -pke'
history = ctrl+grave
# Context menu.
context = ctrl+shift+period
[urgency_low] [urgency_low]
# IMPORTANT: colors have to be defined in quotation marks. # IMPORTANT: colors have to be defined in quotation marks.
@ -341,50 +267,11 @@
# Every section that isn't one of the above is interpreted as a rules to # Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages. # override settings for certain messages.
# # Messages can be matched by "appname", "summary", "body", "icon", "category",
# Messages can be matched by # "msg_urgency" and you can override the "timeout", "urgency", "foreground",
# appname (discouraged, see desktop_entry) # "background", "new_icon" and "format".
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# set_category
# timeout
# urgency
# icon_position
# skip_display
# history_ignore
# action_name
# word_wrap
# ellipsize
# alignment
# hide_text
# override_pause_level
#
# Shell-like globbing will get expanded. # Shell-like globbing will get expanded.
# #
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# You can also allow a notification to appear even when paused. Notification will appear whenever notification's override_pause_level >= dunst's paused level.
# This can be used to set partial pause modes, where more urgent notifications get through, but less urgent stay paused. To do that, you can override the following in the rules:
# override_pause_level = X
# SCRIPTING # SCRIPTING
# You can specify a script that gets run when the rule matches by # You can specify a script that gets run when the rule matches by
# setting the "script" option. # setting the "script" option.
@ -392,33 +279,11 @@
# script appname summary body icon urgency # script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL". # where urgency can be "LOW", "NORMAL" or "CRITICAL".
# #
# NOTE: if you don't want a notification to be displayed, set the format
# to "".
# NOTE: It might be helpful to run dunst -print in a terminal in order # NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules. # to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
#[espeak] #[espeak]
# summary = "*" # summary = "*"
# script = dunst_espeak.sh # script = dunst_espeak.sh
@ -430,18 +295,13 @@
#[ignore] #[ignore]
# # This notification will not be displayed # # This notification will not be displayed
# summary = "foobar" # summary = "foobar"
# skip_display = true # format = ""
#[history-ignore] #[history-ignore]
# # This notification will not be saved in history # # This notification will not be saved in history
# summary = "foobar" # summary = "foobar"
# history_ignore = yes # history_ignore = yes
#[skip-display]
# # This notification will not be displayed, but will be included in the history
# summary = "foobar"
# skip_display = yes
#[signed_on] #[signed_on]
# appname = Pidgin # appname = Pidgin
# summary = "*signed on*" # summary = "*signed on*"
@ -462,8 +322,5 @@
# summary = *twitter.com* # summary = *twitter.com*
# urgency = normal # urgency = normal
# #
#[stack-volumes]
# appname = "some_volume_notifiers"
# set_stack_tag = "volume"
#
# vim: ft=cfg # vim: ft=cfg

View File

@ -80,8 +80,7 @@ bindsym $mod+Shift+0 move container to workspace $ws0; workspace $ws0
# Open specific applications in floating mode # Open specific applications in floating mode
for_window [class="(?i)virtualbox"] floating enable border normal for_window [class="(?i)virtualbox"] floating enable border normal
for_window [title="KeePassX$"] floating enable for_window [title="KeePassX$"] floating enable border normal
for_window [title="factorio.exe"] floating enable
############################################################################### ###############################################################################
############################ Startup Applications ############################# ############################ Startup Applications #############################
@ -91,11 +90,11 @@ exec --no-startup-id setxkbmap eu; setxkbmap -option ctrl:nocaps;
exec --no-startup-id picom exec --no-startup-id picom
exec --no-startup-id udiskie exec --no-startup-id udiskie
exec --no-startup-id conky -c ~/.conky/syclo-crimson-bottomleft.conkyrc exec --no-startup-id conky -c ~/.conky/syclo-crimson-bottomleft.conkyrc
# exec --no-startup-id synergyc -f --no-tray --debug INFO --name genesis --enable-crypto 192.168.178.38:24800
exec --no-startup-id dunst exec --no-startup-id dunst
exec --no-startup-id ~/.scripts/startup.sh exec --no-startup-id ~/.scripts/startup.sh
exec --no-startup-id polybar exec --no-startup-id syncthing
exec --no-startup-id syncthing serve --no-browser exec --no-startup-id feh --randomize --bg-fill $HOME/Pictures/Wallpaper/*
exec --no-startup-id feh --bg-fill $HOME/Pictures/Wallpaper/basic/GMzBUSpbMAAuccT.jpg
############################################################################### ###############################################################################
################################# Keybindings ################################# ################################# Keybindings #################################
@ -103,8 +102,12 @@ exec --no-startup-id feh --bg-fill $HOME/Pictures/Wallpaper/basic/GMzBUSpbMAAucc
# Lock # Lock
bindsym $mod+Shift+space exec --no-startup-id python ~/.scripts/i3lock.py bindsym $mod+Shift+space exec --no-startup-id python ~/.scripts/i3lock.py
# shutdown
bindsym $mod+Shift+s exec poweroff
# start a terminal # start a terminal
bindsym $mod+Return exec alacritty bindsym $mod+space exec alacritty
bindsym $mod+Return exec alacritty -e zellij
# kill focused window # kill focused window
bindsym $mod+Shift+q kill bindsym $mod+Shift+q kill
@ -113,31 +116,21 @@ bindsym $mod+Shift+q kill
bindsym $mod+d exec --no-startup-id $HOME/.config/rofi/launchers/type-1/launcher.sh bindsym $mod+d exec --no-startup-id $HOME/.config/rofi/launchers/type-1/launcher.sh
# Screen brightness controls # Screen brightness controls
bindsym XF86MonBrightnessUp exec --no-startup-id ~/.scripts/brightness.sh up bindsym XF86MonBrightnessUp exec --no-startup-id ~/.scripts/screen.sh up
bindsym XF86MonBrightnessDown exec --no-startup-id ~/.scripts/brightness.sh down bindsym XF86MonBrightnessDown exec --no-startup-id ~/.scripts/screen.sh down
# Pulse Audio controls # Pulse Audio controls
bindsym XF86AudioLowerVolume exec --no-startup-id ~/.scripts/sound.sh down bindsym XF86AudioLowerVolume exec --no-startup-id ~/.scripts/sound.sh down
bindsym XF86AudioRaiseVolume exec --no-startup-id ~/.scripts/sound.sh up bindsym XF86AudioRaiseVolume exec --no-startup-id ~/.scripts/sound.sh up
bindsym XF86AudioMute exec --no-startup-id ~/.scripts/sound.sh toggle bindsym XF86AudioMute exec --no-startup-id ~/.scripts/sound.sh toggle
# bindsym $mod+p exec ~/.scripts/monitor.sh next
bindsym XF86AudioPlay exec "playerctl play-pause" bindsym XF86AudioPlay exec "playerctl play-pause"
bindsym XF86AudioStop exec "playerctl stop" bindsym XF86AudioStop exec "playerctl stop"
bindsym XF86AudioNext exec "playerctl next" bindsym XF86AudioNext exec "playerctl next"
bindsym XF86AudioPrevious exec "playerctl previous" bindsym XF86AudioPrevious exec "playerctl previous"
bindsym XF86AudioMicMute exec "amixer set Capture toggle"
# F9-F12 on Thinkpad
bindsym XF86Display exec autorandr --cycle
bindsym XF86Messenger exec signal-desktop
bindsym XF86Go exec blueman-manager
bindsym Cancel exec dunstify -r 3 "Cancel"
bindsym XF86Favorites exec dunstify -r 3 "Favorites"
# Application Shortcuts # Application Shortcuts
bindsym $mod+b exec firefox bindsym $mod+b exec firefox
bindsym $mod+p exec firefox --private-window https://tudattr.dev
# Whole Screen # Whole Screen
bindsym Control+Print exec --no-startup-id ~/.scripts/screenshot.sh screen bindsym Control+Print exec --no-startup-id ~/.scripts/screenshot.sh screen
@ -158,7 +151,7 @@ bindsym $mod+j focus down
bindsym $mod+k focus up bindsym $mod+k focus up
bindsym $mod+l focus right bindsym $mod+l focus right
# move focused workspace # move focused workspace
bindsym $mod+Mod1+h move workspace to output left bindsym $mod+Mod1+h move workspace to output left
bindsym $mod+Mod1+j move workspace to output down bindsym $mod+Mod1+j move workspace to output down
bindsym $mod+Mod1+k move workspace to output up bindsym $mod+Mod1+k move workspace to output up
@ -192,7 +185,7 @@ bindsym $mod+Shift+minus move scratchpad
# restart/exit i3 # restart/exit i3
bindsym $mod+Shift+r restart bindsym $mod+Shift+r restart
# bindsym Control+Shift+e exit bindsym Control+Shift+e exit
# Resize window (you can also use the mouse for that) # Resize window (you can also use the mouse for that)
bindsym $mod+r mode "resize" bindsym $mod+r mode "resize"

View File

@ -1,187 +0,0 @@
[colors]
background=#1e1e2e
background-alt = #373B41
foreground = #C5C8C6
primary = #F0C674
secondary = #8ABEB7
alert = #A54242
disabled = #707880
[bar/example]
width = 100%
height = 24pt
radius = 6
; dpi = 96
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3pt
border-size = 4pt
border-color = #00000000
padding-left = 0
padding-right = 1
module-margin = 1
separator = |
separator-foreground = ${colors.disabled}
font-0 = monospace;2
modules-left = battery xwindow
modules-right = filesystem memory cpu wlan eth xkeyboard pulseaudio date systray
cursor-click = pointer
cursor-scroll = ns-resize
enable-ipc = true
; wm-restack = generic
; wm-restack = bspwm
; wm-restack = i3
; override-redirect = true
; This module is not active by default (to enable it, add it to one of the
; modules-* list above).
; Please note that only a single tray can exist at any time. If you launch
; multiple bars with this module, only a single one will show it, the others
; will produce a warning. Which bar gets the module is timing dependent and can
; be quite random.
; For more information, see the documentation page for this module:
; https://polybar.readthedocs.io/en/stable/user/modules/tray.html
[module/systray]
type = internal/tray
format-margin = 8pt
tray-spacing = 16pt
[module/xworkspaces]
type = internal/xworkspaces
label-active = %name%
label-active-background = ${colors.background-alt}
label-active-underline= ${colors.primary}
label-active-padding = 1
label-occupied = %name%
label-occupied-padding = 1
label-urgent = %name%
label-urgent-background = ${colors.alert}
label-urgent-padding = 1
label-empty = %name%
label-empty-foreground = ${colors.disabled}
label-empty-padding = 1
[module/xwindow]
type = internal/xwindow
label = %title:0:60:...%
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.disabled}
[module/pulseaudio]
type = internal/pulseaudio
format-volume-prefix = "VOL "
format-volume-prefix-foreground = ${colors.primary}
format-volume = <label-volume>
label-volume = %percentage%%
label-muted = muted
label-muted-foreground = ${colors.disabled}
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
label-layout = %layout%
label-layout-foreground = ${colors.primary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-foreground = ${colors.background}
label-indicator-background = ${colors.secondary}
[module/memory]
type = internal/memory
interval = 2
format-prefix = "RAM "
format-prefix-foreground = ${colors.primary}
label = %percentage_used:2%%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = "CPU "
format-prefix-foreground = ${colors.primary}
label = %percentage:2%%
[network-base]
type = internal/network
interval = 5
format-connected = <label-connected>
format-disconnected = <label-disconnected>
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
[module/wlan]
inherit = network-base
interface-type = wireless
label-connected = %{F#F0C674}%ifname%%{F-} %essid% %local_ip%
[module/eth]
inherit = network-base
interface-type = wired
label-connected = %{F#F0C674}%ifname%%{F-} %local_ip%
[module/date]
type = internal/date
interval = 1
date = %H:%M
date-alt = %Y-%m-%d %H:%M:%S
label = %date%
label-foreground = ${colors.primary}
[module/battery]
type = internal/battery
; This is useful in case the battery never reports 100% charge
; Default: 100
full-at = 99
; format-low once this charge percentage is reached
; Default: 10
; New in version 3.6.0
low-at = 10
; Use the following command to list batteries and adapters:
; $ ls -1 /sys/class/power_supply/
battery = BAT0
adapter = AC
poll-interval = 5
label-charging = %{F#F0C674}BAT%{F-} %percentage%%
label-discharging = %{F#F0C674}BAT%{F-} %percentage%%
[settings]
screenchange-reload = true
pseudo-transparency = true
; vim:ft=dosini

View File

@ -1,6 +1,8 @@
// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true" // If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true"
keybinds { keybinds {
normal clear-defaults=true { normal clear-defaults=true {
// uncomment this and adjust key if using copy_on_select=false
// bind "Alt c" { Copy; }
bind "F1" {SwitchToMode "Tab"; } bind "F1" {SwitchToMode "Tab"; }
bind "F2" {SwitchToMode "Pane"; } bind "F2" {SwitchToMode "Pane"; }
bind "F5" {SwitchToMode "Session"; } bind "F5" {SwitchToMode "Session"; }
@ -15,30 +17,10 @@ keybinds {
bind "Alt k" "Alt Up" { MoveFocus "Up"; } bind "Alt k" "Alt Up" { MoveFocus "Up"; }
bind "Alt n" { NewPane; } bind "Alt n" { NewPane; }
bind "Alt t" { NewTab; } bind "Alt t" { NewTab; }
bind "Alt w" { ToggleFloatingPanes; }
bind "Alt =" "Alt +" { Resize "Increase"; } bind "Alt =" "Alt +" { Resize "Increase"; }
bind "Alt -" { Resize "Decrease"; } bind "Alt -" { Resize "Decrease"; }
} }
tab {
bind "Ctrl t" { SwitchToMode "Normal"; }
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
bind "l" "Right" "Down" "j" { GoToNextTab; }
bind "n" { NewTab; SwitchToMode "Normal"; }
bind "x" { CloseTab; SwitchToMode "Normal"; }
bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
bind "Tab" { ToggleTab; }
}
locked { locked {
bind "F12" { SwitchToMode "Normal"; } bind "F12" { SwitchToMode "Normal"; }
} }
@ -80,6 +62,25 @@ keybinds {
bind "k" "Up" { MovePane "Up"; } bind "k" "Up" { MovePane "Up"; }
bind "l" "Right" { MovePane "Right"; } bind "l" "Right" { MovePane "Right"; }
} }
tab {
bind "Ctrl t" { SwitchToMode "Normal"; }
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
bind "l" "Right" "Down" "j" { GoToNextTab; }
bind "n" { NewTab; SwitchToMode "Normal"; }
bind "x" { CloseTab; SwitchToMode "Normal"; }
bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
bind "Tab" { ToggleTab; }
}
scroll { scroll {
bind "Ctrl s" { SwitchToMode "Normal"; } bind "Ctrl s" { SwitchToMode "Normal"; }
bind "e" { EditScrollback; SwitchToMode "Normal"; } bind "e" { EditScrollback; SwitchToMode "Normal"; }
@ -222,7 +223,6 @@ plugins {
// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes // For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
// Once these themes are defined, one of them should to be selected in the "theme" section of this file // Once these themes are defined, one of them should to be selected in the "theme" section of this file
// //
//
themes { themes {
tokyo-night-dark { tokyo-night-dark {
fg 169 177 214 fg 169 177 214
@ -298,7 +298,7 @@ theme "tokyo-night-dark"
// Path to the default editor to use to edit pane scrollbuffer // Path to the default editor to use to edit pane scrollbuffer
// Default: $EDITOR or $VISUAL // Default: $EDITOR or $VISUAL
// //
scrollback_editor "/usr/bin/nvim" // scrollback_editor "/usr/bin/vim"
// When attaching to an existing session with other users, // When attaching to an existing session with other users,
// should the session be mirrored (true) // should the session be mirrored (true)

View File

@ -1,7 +1,3 @@
[user]
email = tuan-dat.tran@tudattr.dev
name = Tuan-Dat Tran
[core] [core]
pager = delta pager = delta
@ -10,12 +6,13 @@
[delta] [delta]
navigate = true # use n and N to move between diff sections navigate = true # use n and N to move between diff sections
light = false # set to true if you're in a terminal w/ a light background color (e.g. the default macOS terminal)
[merge] [merge]
conflictstyle = diff3 conflictstyle = diff3
[diff] [diff]
colorMoved = default colorMoved = default
[user]
[push] email = tuan-dat.tran@tudattr.dev
autoSetupRemote = true name = Tuan-Dat Tran

View File

@ -1,7 +0,0 @@
':/home/tudattr
a:/home/tudattr/Documents/Arbeit/Uni-DuE_NCS_SHK/04_-_Projekte
s:/home/tudattr/Pictures/Screenshots
u:/home/tudattr/.genesis/Documents/Uni/Studium
e:/home/tudattr/.genesis/Documents/Fachschaft/Berufungskomission/Pohl/Sitzungen
r:/home/tudattr/.genesis/Documents/Uni/Studium/2023_Sommersemester/ethfuzz-evaluation/eval_ityfuzz/contracts/VeriSmart-benchmarks
m:/run/media/tudattr

View File

@ -1,10 +0,0 @@
#!/bin/bash
FILENAME=$(date -I)
while true; do
TIMESTAMP=$(date +%s)
STATS=$(acpi | sed "s/.*\([0-9]\{2\}\)%.*/\1/")
echo "$TIMESTAMP,$STATS" >> ~/.scripts/battery_$FILENAME.log
sleep 1
done

View File

@ -1,23 +0,0 @@
#!/bin/sh
type xbacklight >/dev/null 2>&1 || {
echo >&2 "I require xbacklight but it's not installed. Aborting."
exit 1
}
type dunstify >/dev/null 2>&1 || {
echo >&2 "I require dunstify but it's not installed. Aborting."
exit 1
}
case $1 in
"up"*)
xbacklight -inc 10 &
currentBrightness=$(xbacklight -get)
dunstify -r 1 'brightness up'\ \($currentBrightness%\)
;;
"down"*)
xbacklight -dec 10 &
currentBrightness=$(xbacklight -get)
dunstify -r 1 'brightness down'\ \($currentBrightness%\)
;;
esac

View File

@ -1,8 +0,0 @@
Were just two lonely people trying to hate ourselves a little less.
Before I leapt, I should have seen the view from halfway down.
Every happy ending has the day after the happy ending.
Theres no deep down. I believe that all we are is what we do.
It gets easier. Every day it gets a little easier. But you gotta do it every day — thats the hard part. But it does get easier.
Sometimes, life's a bitch and then you keep living.
I don't understand how people live. It's amazing to me that people wake up every morning and say: "Yeah! Another day, let's do it!" How do people do it? I don't know how.
Don't stop dancing.

17
config/.scripts/screen.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/sh
type xbacklight >/dev/null 2>&1 || { echo >&2 "I require xbacklight but it's not installed. Aborting."; exit 1; }
type dunstify >/dev/null 2>&1 || { echo >&2 "I require dunstify but it's not installed. Aborting."; exit 1; }
case $1 in
"up"*)
xbacklight -inc 10 &
currentBrightness=$(xbacklight | cut -d\. -f1);
dunstify -r 1 'brightness up'\ \($currentBrightness%\);
;;
"down"*)
xbacklight -dec 10 &
currentBrightness=$(xbacklight | cut -d\. -f1);
dunstify -r 1 'brightness down'\ \($currentBrightness%\);
;;
esac

View File

@ -1,57 +1,38 @@
#!/bin/sh #!/bin/sh
type xset >/dev/null 2>&1 || { echo >&2 "I require xset but it's not installed. Aborting."; exit 1; }
lower_battery_threshold=10 lower_battery_threshold=10
KBD="" KBD="";
oldKBD="" oldKBD="";
connected_monitors=""
old_connected_monitors=""
internal_monitor="eDP"
kb_routine() { function kb_routine {
oldKBD="$KBD" oldKBD="$KBD";
case "$(xset -q | grep -A 0 'LED' | cut -c59-67)" in case "$(xset -q | grep -A 0 'LED' | cut -c59-67)" in
"00000000") "00000000")
KBD="Europe" KBD="Europe" ;;
;; "00001000")
"00001000") KBD="Deutsch" ;;
KBD="Deutsch" *) KBD="unknown" ;;
;; esac
*) KBD="unknown" ;;
esac
if [ "$KBD" != "$oldKBD" ]; then if [ "$KBD" != "$oldKBD" ]; then
dunstify -r 1 "$KBD" dunstify -r 1 "$KBD";
fi
}
battery_routine() {
capacity="$(cat /sys/class/power_supply/BAT0/capacity)"
if [ "$capacity" -lt $lower_battery_threshold ]; then
acpi | grep -q '0: Discharging' && dunstify "Battery at $capacity%"
sleep 60
fi
}
monitors() {
connected_monitors=$(xrandr | grep -c "\<connected\>")
if [ "$connected_monitors" != "old_connected_monitors" ]; then
if [ "$connected_monitors" -eq 1 ]; then
# dunstify -r 1 "Swichting to single monitor"
xrandr --output $internal_monitor --auto
fi fi
if [ "$connected_monitors" -gt 1 ]; then
external_monitor=$(xrandr | grep "\<connected\>" | grep -v $internal_monitor | cut -d" " -f1)
# dunstify -r 1 "Swichting to external monitor"
xrandr --output $internal_monitor --off --output "$external_monitor" --auto
fi
old_connected_monitors=$connected_monitors
fi
} }
while :; do function battery_routine {
kb_routine capacity=$(< /sys/class/power_supply/BAT0/capacity)
battery_routine if [[ $capacity -lt lower_battery_threshold ]]; then
# monitors acpi | grep -q '0: Discharging' && dunstify "Battery at $capacity%";
sleep 1 sleep 60;
fi
}
while :
do
kb_routine
battery_routine
sleep 1;
done done

View File

@ -1,4 +1,189 @@
Include config_homelab # Services
Include config_services Host github.com gitlab.com git.uni-due.de
Include config_syssec Port 22
Include config_work User git
IdentityFile /mnt/veracrypt1/git
Host github.com
Hostname github.com
Host gitlab.com
Hostname gitlab.com
Host git.uni-due.de
HostName git.uni-due.de
Host git.tudattr.dev
Hostname 192.168.20.12
Port 2222
User git
IdentityFile /mnt/veracrypt1/git
# Homeserver
Host madrigal
HostName 192.168.70.1
Port 2200
User tudattr
IdentityFile /mnt/veracrypt1/mikrotik_rsa
Host inko inko.mii
HostName 192.168.20.14
Host naruto naruto.mii
HostName 192.168.20.13
Host pi pi.mii
HostName 192.168.20.11
Host aya01 aya01.mii
HostName 192.168.20.12
Host behemoth behemoth.mii
User tuan
HostName 192.168.30.174
Host mii
HostName tudattr.dev
Host inko.mii pi.mii aya01.mii naruto.mii behemoth.mii
ProxyJump mii
Host mii pi aya01 inko naruto inko.mii pi.mii aya01.mii naruto.mii behemoth behemoth.mii
Port 22
User tudattr
IdentityFile /mnt/veracrypt1/genesis
# Work
Host mini
HostName 100.76.45.158
Port 22
User tudattr
IdentityFile /mnt/veracrypt1/genesis
Host tail-pi
HostName 100.93.79.94
Port 22
User tuant
IdentityFile /mnt/veracrypt1/work/minis
Host ncs-head
HostName 132.252.68.50
Port 2122
User tuan-dat.tran
IdentityFile /mnt/veracrypt1/genesis
ForwardX11 yes
ProxyJump tail-pi
Host ncs-head-user
HostName 132.252.68.50
Port 2122
User user
IdentityFile /mnt/veracrypt1/tudattr
ForwardX11 yes
Host ncs2
HostName 192.168.1.13
User tuan-dat.tran
Host ncs2 ncs2-user ncs-node1 ncs-node2 ncs-node2-user ncs-node3 ncs-node4 ncs-node5 ncs-node6 ncs-node7 ncs-wedge
Port 22
IdentityFile /mnt/veracrypt1/genesis
ProxyJump ncs-head
Host ncs2-user
HostName 192.168.1.13
User user # tuan-dat.tran
Host ncs-node1
HostName 192.168.1.11
User user
Host ncs-node2
HostName 192.168.1.7
User tuan-dat.tran
ForwardX11 yes
Host ncs-node2-user
HostName 192.168.1.7
User user
Host ncs-node3
Hostname 192.168.1.19
User tuan-dat.tran
ForwardX11 yes
Host ncs-node3-user
Hostname 192.168.1.19
User user
IdentityFile /mnt/veracrypt1/tudattr
ForwardX11 yes
Host ncs-node4
HostName 192.168.1.9
User tuan-dat.tran
Host ncs-node4-user
HostName 192.168.1.9
Port 22
User user
IdentityFile /mnt/veracrypt1/tudattr
ProxyJump ncs-head
Host ncs-node5
HostName 192.168.1.15
User tuan-dat.tran
Host ncs-node6
Hostname 192.168.1.17
User tuan-dat.tran
Host ncs-node6-user
Hostname 192.168.1.17
Port 22
User user
IdentityFile /mnt/veracrypt1/tudattr
# ForwardX11 yes
ProxyJump ncs-head
Host ncs-node7
Hostname 192.168.1.18
User tuan-dat.tran
ForwardX11 yes
Host ncs-wedge
Hostname 192.168.1.5
User user
Host ncs-gpu
Hostname 192.168.1.21
Port 22
User tuan
IdentityFile /mnt/veracrypt1/tudattr
ForwardX11 yes
ProxyJump ncs-head
Host ami
Hostname 3.72.156.214
Port 22
User ubuntu
IdentityFile /mnt/veracrypt1/work/aws-rizk.pem
## 5g IANA
Host 5g-iana-mec
Hostname 192.168.100.1
Port 22
User udue
IdentityFile /mnt/veracrypt1/genesis
Host uulm-obu0 uulm-obu1
Port 22
User user
ProxyJump 5g-iana-mec
IdentityFile /mnt/veracrypt1/genesis
Host uulm-obu0
Hostname 192.168.201.7
Host uulm-obu1
Hostname 192.168.201.11

View File

@ -1,91 +0,0 @@
# Homeserver
Host madrigal
HostName 192.168.70.1
Port 2200
User tudattr
IdentityFile /mnt/veracrypt1/mikrotik_rsa
Host inko inko.mii
HostName 192.168.20.14
User root
Host naruto naruto.mii
HostName 192.168.20.13
Host pi pi.mii
HostName 192.168.20.11
Host aya01 aya01.mii
HostName 192.168.20.12
User root
Host lulu lulu.mii
HostName 192.168.20.28
User root
Host k3s-loadbalancer.aya01 k3s-loadbalancer
HostName 192.168.20.22
ProxyJump aya01
Host k3s-server01.aya01 k3s-server01
HostName 192.168.20.24
ProxyJump aya01
Host k3s-server02.aya01 k3s-server02
HostName 192.168.20.30
ProxyJump aya01
Host k3s-server00.aya01 k3s-server00
HostName 192.168.20.21
ProxyJump aya01
Host k3s-agent00.aya01 k3s-agent00
HostName 192.168.20.25
ProxyJump aya01
Host k3s-agent01.aya01 k3s-agent01
HostName 192.168.20.26
ProxyJump aya01
Host k3s-agent02.aya01 k3s-agent02
HostName 192.168.20.27
ProxyJump aya01
Host k3s-longhorn02.aya01 k3s-longhorn02
HostName 192.168.20.31
ProxyJump aya01
Host k3s-longhorn00.aya01 k3s-longhorn00
HostName 192.168.20.32
ProxyJump aya01
Host docker-host00 docker-host00.aya01
HostName 192.168.20.34
ProxyJump aya01
Host docker-host01 docker-host01.aya01
HostName 192.168.20.35
ProxyJump aya01
Host k3s-postgres.aya01 k3s-postgres
HostName 192.168.20.23
ProxyJump aya01
Host behemoth behemoth.pi
User tuan
HostName 192.168.30.174
IdentityFile /mnt/veracrypt1/genesis
Host behemoth.pi
ProxyJump pi
Host mii
HostName tudattr.dev
Host inko.mii pi.mii aya01.mii naruto.mii
ProxyJump mii
Host mii pi inko naruto inko.mii pi.mii naruto.mii aya01 aya01.mii k3s-server00.aya01 k3s-server00 k3s-loadbalancer.aya01 k3s-loadbalancer k3s-postgres.aya01 k3s-postgres k3s-server01.aya01 k3s-server01 k3s-agent00.aya01 k3s-agent00 k3s-agent01.aya01 k3s-agent01 k3s-agent02.aya01 k3s-agent02 k3s-server02.aya01 k3s-server02 k3s-longhorn00.aya01 k3s-longhorn00 k3s-longhorn01.aya01 k3s-longhorn01 k3s-longhorn02.aya01 k3s-longhorn02 docker-host00 docker-host00.aya01 docker-host01 docker-host01.aya01
Port 22
User tudattr
IdentityFile /mnt/veracrypt1/genesis

View File

@ -1,24 +0,0 @@
# Services
Host github.com gitlab.com git.uni-due.de git.ude-syssec.de
Port 22
User git
IdentityFile /mnt/veracrypt1/git
Host git.ude-syssec.de
Hostname git.ude-syssec.de
Host github.com
Hostname github.com
Host gitlab.com
Hostname gitlab.com
Host git.uni-due.de
HostName git.uni-due.de
Host git.tudattr.dev
Hostname 192.168.20.34
Port 2222
User git
IdentityFile /mnt/veracrypt1/git
ProxyJump mii

View File

@ -1,6 +0,0 @@
Host tuan-ethfuzz
HostName 132.252.68.42
User tuan
IdentityFile /mnt/veracrypt1/genesis
Port 2207
ForwardAgent yes

View File

@ -1,144 +0,0 @@
# Work
Host mini
HostName 100.76.45.158
Port 22
User tudattr
IdentityFile /mnt/veracrypt1/genesis
Host ncs-pi
HostName 100.103.158.102
Port 22
User tuant
IdentityFile /mnt/veracrypt1/work/minis
Host ncs-head
HostName 132.252.68.50
Port 2122
User tuan-dat.tran
IdentityFile /mnt/veracrypt1/genesis
ProxyJump ncs-pi
Host ncs-head-user
HostName 132.252.68.50
Port 2122
User user
IdentityFile /mnt/veracrypt1/tudattr
Host ncs2
HostName 192.168.1.13
User tuan-dat.tran
Host ncs2 ncs2-user ncs-node1 ncs-node2 ncs-node2-user ncs-node3 ncs-node4 ncs-node5 ncs-node6 ncs-node7 ncs-wedge
Port 22
IdentityFile /mnt/veracrypt1/genesis
ProxyJump ncs-head
Host ncs2-user
HostName 192.168.1.13
User user # tuan-dat.tran
Host ncs-node1
HostName 192.168.1.11
User user
Host ncs-node2
HostName 192.168.1.7
User tuan-dat.tran
Host ncs-node2-user
HostName 192.168.1.7
User user
Host ncs-node3
Hostname 192.168.1.19
User tuan-dat.tran
Host ncs-node3-user
Hostname 192.168.1.19
User user
IdentityFile /mnt/veracrypt1/tudattr
Host ncs-node4
HostName 192.168.1.9
User tuan-dat.tran
Host ncs-node4-user
HostName 192.168.1.9
Port 22
User user
IdentityFile /mnt/veracrypt1/tudattr
ProxyJump ncs-head
Host ncs-node5
HostName 192.168.1.15
User tuan-dat.tran
Host ncs-node6
Hostname 192.168.1.17
User tuan-dat.tran
Host ncs-node6-user
Hostname 192.168.1.17
Port 22
User user
IdentityFile /mnt/veracrypt1/tudattr
ProxyJump ncs-head
Host ncs-node7
Hostname 192.168.1.18
User tuan-dat.tran
Host ncs-wedge
Hostname 192.168.1.5
User user
Host ncs-gpu
Hostname 192.168.1.21
Port 22
User tuan
IdentityFile /mnt/veracrypt1/tudattr
ProxyJump ncs-head
Host ami
Hostname 3.72.156.214
Port 22
User ubuntu
IdentityFile /mnt/veracrypt1/work/aws-rizk.pem
## 5g IANA
Host 5g-iana-mec 5g-iana-mec.naruto.mii
Hostname 192.168.100.1
Port 22
User udue
IdentityFile /mnt/veracrypt1/genesis
Host uulm-obu0 uulm-obu1 uulm-obu0.naruto.mii uulm-obu0.naruto.mii
Port 22
User user
IdentityFile /mnt/veracrypt1/genesis
Host uulm-obu0 uulm-obu0.naruto.mii
Hostname 192.168.200.6
Host uulm-obu1 uulm-obu1.naruto.mii
Hostname 192.168.200.11
Host 5g-iana-mec.naruto.mii uulm-obu1.naruto.mii uulm-obu0.naruto.mii nxw.naruto.mii
ProxyJump naruto.mii
Host nxw.naruto.mii nxw
User nxw
Hostname 192.168.100.4
Host uulm-obu0 uulm-obu1
ProxyJump 5g-iana-mec
Host uulm-obu0.naruto.mii uulm-obu0.naruto.mii
ProxyJump 5g-iana-mec.naruto.mii
Host nextworks.naruto.mii
ProxyJump 5g-iana-mec.naruto.mii
Host nextworks nextworks.naruto.mii
Hostname 192.168.100.4
User nxw

View File

@ -1,59 +1,66 @@
{ {
"LanguageTool.nvim": { "branch": "master", "commit": "809e7d77fec834597f495fec737c59292a10025b" }, "LazyVim": { "branch": "main", "commit": "0107a1079be7fb92f7d5b7e2c40818f47cf425d9" },
"LazyVim": { "branch": "main", "commit": "7c7c196a78e936a1bc4cf28e7908e9bd96d75607" }, "LuaSnip": { "branch": "master", "commit": "a7a4b4682c4b3e2ba82b82a4e6e5f5a0e79dec32" },
"SchemaStore.nvim": { "branch": "main", "commit": "ed65feb5b8026d7c6b1981cfe9d97402342d344d" }, "SchemaStore.nvim": { "branch": "main", "commit": "7efe039d0675f4f1b03f946cc457891d13a6495f" },
"bufferline.nvim": { "branch": "main", "commit": "5cc447cb2b463cb499c82eaeabbed4f5fa6a0a44" }, "bufferline.nvim": { "branch": "main", "commit": "64e2c5def50dfd6b6f14d96a45fa3d815a4a1eef" },
"catppuccin": { "branch": "main", "commit": "65bf0b16f57a3db70d6a93ac68882dd9a31d0565" }, "catppuccin": { "branch": "main", "commit": "045e3499d9ec8d84635fb08877ae44fd33f6a38d" },
"clangd_extensions.nvim": { "branch": "main", "commit": "34c8eaa12be192e83cd4865ce2375e9f53e728f2" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-git": { "branch": "main", "commit": "ec049036e354ed8ed0215f2427112882e1ea7051" }, "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"conform.nvim": { "branch": "master", "commit": "6a28c90082a67f62a323ab90d988e000a718a8c7" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
"crates.nvim": { "branch": "main", "commit": "8bf8358ee326d5d8c11dcd7ac0bcc9ff97dbc785" }, "conform.nvim": { "branch": "master", "commit": "a605ce4b2db397c84ae6fa8bcfc85f00b985bc73" },
"dashboard-nvim": { "branch": "master", "commit": "d2c5a4d1341f5ca1ed2ecb4ecfcff2bc8ea18b14" }, "crates.nvim": { "branch": "main", "commit": "b4f4987ccdb1cc3899ee541ef4375c73c48c4570" },
"dial.nvim": { "branch": "master", "commit": "ed4d6a5bbd5e479b4c4a3019d148561a2e6c1490" }, "dashboard-nvim": { "branch": "master", "commit": "413442b12d85315fc626c44a0ce4929b213ef604" },
"flash.nvim": { "branch": "main", "commit": "34c7be146a91fec3555c33fe89c7d643f6ef5cf1" }, "dressing.nvim": { "branch": "master", "commit": "18e5beb3845f085b6a33c24112b37988f3f93c06" },
"friendly-snippets": { "branch": "main", "commit": "de8fce94985873666bd9712ea3e49ee17aadb1ed" }, "flash.nvim": { "branch": "main", "commit": "48817af25f51c0590653bbc290866e4890fe1cbe" },
"fzf-lua": { "branch": "main", "commit": "ce1e24f2a48089b65deefcb0a71a9856839002b5" }, "friendly-snippets": { "branch": "main", "commit": "dcd4a586439a1c81357d5b9d26319ae218cc9479" },
"gitsigns.nvim": { "branch": "main", "commit": "2d725fdd7fe4a612fa3171ca0a965f455d8dc325" }, "gitsigns.nvim": { "branch": "main", "commit": "4e348641b8206c3b8d23080999e3ddbe4ca90efc" },
"grug-far.nvim": { "branch": "main", "commit": "190c03d54e8976491e6e49acb97087bf4182b079" }, "headlines.nvim": { "branch": "master", "commit": "618ef1b2502c565c82254ef7d5b04402194d9ce3" },
"indent-blankline.nvim": { "branch": "master", "commit": "04e44b09ee3ff189c69ab082edac1ef7ae2e256c" }, "indent-blankline.nvim": { "branch": "master", "commit": "3d08501caef2329aba5121b753e903904088f7e6" },
"lazy.nvim": { "branch": "main", "commit": "077102c5bfc578693f12377846d427f49bc50076" }, "lazy.nvim": { "branch": "main", "commit": "83493db50a434a4c5c648faf41e2ead80f96e478" },
"lazydev.nvim": { "branch": "main", "commit": "491452cf1ca6f029e90ad0d0368848fac717c6d2" }, "lualine.nvim": { "branch": "master", "commit": "26dac2fcadb6e622790ab08e36d0dba3d3765398" },
"lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" },
"luvit-meta": { "branch": "main", "commit": "ce76f6f6cdc9201523a5875a4471dcfe0186eb60" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "4d0e5b49363cac187326998b96aa6a2884e0e89b" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "55716a879568a498fa236593c8119789054a3b8e" },
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "mason.nvim": { "branch": "main", "commit": "3b5068f0fc565f337d67a2d315d935f574848ee7" },
"mini.ai": { "branch": "main", "commit": "9b9b7cfa38b4871c3e44cfe89cf6d53fd40684d9" }, "mini.ai": { "branch": "main", "commit": "ee9446a17c160aba6a04ff22097389c41872c878" },
"mini.icons": { "branch": "main", "commit": "a2742459f0ee32806c2438ca06b4d8b331f3f4d4" }, "mini.bufremove": { "branch": "main", "commit": "931a3bb514147d9e812767275c4beba6b779b1d3" },
"mini.pairs": { "branch": "main", "commit": "7e834c5937d95364cc1740e20d673afe2d034cdb" }, "mini.comment": { "branch": "main", "commit": "a4b7e46deb9ad2feb8902cc5dbf087eced112ee5" },
"mini.surround": { "branch": "main", "commit": "48a9795c9d352c771e1ab5dedab6063c0a2df037" }, "mini.indentscope": { "branch": "main", "commit": "cf07f19e718ebb0bcc5b00999083ce11c37b8d40" },
"neo-tree.nvim": { "branch": "main", "commit": "a77af2e764c5ed4038d27d1c463fa49cd4794e07" }, "mini.pairs": { "branch": "main", "commit": "04f58f2545ed80ac3b52dd4826e93f33e15b2af6" },
"noice.nvim": { "branch": "main", "commit": "df448c649ef6bc5a6a633a44f2ad0ed8d4442499" }, "mini.surround": { "branch": "main", "commit": "a1b590cc3b676512de507328d6bbab5e43794720" },
"nui.nvim": { "branch": "main", "commit": "b58e2bfda5cea347c9d58b7f11cf3012c7b3953f" }, "neo-tree.nvim": { "branch": "v3.x", "commit": "742db4e60c74e5fbcc596aaf9e7575e1342dfd09" },
"nvim-ansible": { "branch": "main", "commit": "44dabdaa8a9193b7f564a8408ed6d7107705030a" }, "neoconf.nvim": { "branch": "main", "commit": "ffdeab72dc167543f9b3355baceb0918f1e81fc0" },
"nvim-cmp": { "branch": "main", "commit": "29fb4854573355792df9e156cb779f0d31308796" }, "neodev.nvim": { "branch": "main", "commit": "84e0290f5600e8b89c0dfcafc864f45496a53400" },
"nvim-lint": { "branch": "master", "commit": "16b21a7d04d06661f92f273a0744fd81fb19e09e" }, "noice.nvim": { "branch": "main", "commit": "bf67d70bd7265d075191e7812d8eb42b9791f737" },
"nvim-lspconfig": { "branch": "master", "commit": "59a6766cbf32c7e4cf3ed685ccad7ffe1dde8c40" }, "nui.nvim": { "branch": "main", "commit": "3dc46d725f7b94bee5117c0a699b57b1902b5d65" },
"nvim-notify": { "branch": "master", "commit": "fbef5d32be8466dd76544a257d3f3dce20082a07" }, "nvim-ansible": { "branch": "main", "commit": "d115cb9bb3680c990e2684f58cf333663fff03b8" },
"nvim-snippets": { "branch": "main", "commit": "56b4052f71220144689caaa2e5b66222ba5661eb" }, "nvim-cmp": { "branch": "main", "commit": "04e0ca376d6abdbfc8b52180f8ea236cbfddf782" },
"nvim-treesitter": { "branch": "master", "commit": "39016abc99853c3e9d70f1bec7e2fa661b9a81bf" }, "nvim-lint": { "branch": "master", "commit": "d78c8ab992f48890580653f74a362c6e5ef2eccc" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "3e450cd85243da99dc23ebbf14f9c70e9a0c26a4" }, "nvim-lspconfig": { "branch": "master", "commit": "4bdd3800b4148f670c6cf55ef65f490148eeb550" },
"nvim-ts-autotag": { "branch": "main", "commit": "e239a560f338be31337e7abc3ee42515daf23f5e" }, "nvim-notify": { "branch": "master", "commit": "5371f4bfc1f6d3adf4fe9d62cd3a9d44356bfd15" },
"onedark.vim": { "branch": "main", "commit": "390b893d361c356ac1b00778d849815f2aa44ae4" }, "nvim-spectre": { "branch": "master", "commit": "d1db6c1d37252b5a38f199e2f590c5a1617d9254" },
"outline.nvim": { "branch": "main", "commit": "6c44527837ff7ac1cd054dc365a721e881020a2e" }, "nvim-treesitter": { "branch": "master", "commit": "f87882858438834d2fbb6379aa2be37de901751b" },
"persistence.nvim": { "branch": "main", "commit": "f6aad7dde7fcf54148ccfc5f622c6d5badd0cc3d" }, "nvim-treesitter-context": { "branch": "master", "commit": "b8b7e52c1517d401d7c519787d5dc4528c41291a" },
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "d2a4ffc22d9d38d44edb73da007b3cf43451e9b4" },
"render-markdown.nvim": { "branch": "main", "commit": "fc05fb7c56795f191b6800799a2ec6ea325ba715" }, "nvim-ts-autotag": { "branch": "main", "commit": "531f48334c422222aebc888fd36e7d109cb354cd" },
"rustaceanvim": { "branch": "master", "commit": "e1f9464d9e1addeccb170eb7968471966965f5a3" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "7ab799a9792f7cf3883cf28c6a00ad431f3d382a" },
"tailwindcss-colorizer-cmp.nvim": { "branch": "main", "commit": "3d3cd95e4a4135c250faf83dd5ed61b8e5502b86" }, "nvim-web-devicons": { "branch": "master", "commit": "a851380fbea4c1312d11f13d5cdc86a7a19808dd" },
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, "onedark.vim": { "branch": "main", "commit": "57b77747694ea5676c3ca0eeaf9567dc499730c0" },
"tokyonight.nvim": { "branch": "main", "commit": "2e1daa1d164ad8cc3e99b44ca68e990888a66038" }, "orgmode": { "branch": "master", "commit": "261c987345131a736066c25ea409f4d10904b0af" },
"trouble.nvim": { "branch": "main", "commit": "2f3b537f2207ce32f4459f9d56746ee013b5e01b" }, "persistence.nvim": { "branch": "main", "commit": "4982499c1636eac254b72923ab826ee7827b3084" },
"ts-comments.nvim": { "branch": "main", "commit": "2002692ad1d3f6518d016550c20c2a890f0cbf0e" }, "plenary.nvim": { "branch": "master", "commit": "f7adfc4b3f4f91aab6caebf42b3682945fbc35be" },
"vim-ledger": { "branch": "master", "commit": "dbc683e24bd5338b8c12540227a58b2d247e097a" }, "rustaceanvim": { "branch": "master", "commit": "69a22c2ec63ab375190006751562b62ebb318250" },
"vimtex": { "branch": "master", "commit": "0785fd98af20f308ce6856f75a70a4ece9abab29" }, "semshi": { "branch": "master", "commit": "0182447e2ff4dfa04cd2dfe5f189e012c581ca45" },
"which-key.nvim": { "branch": "main", "commit": "8badb359f7ab8711e2575ef75dfe6fbbd87e4821" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" },
"yanky.nvim": { "branch": "main", "commit": "73215b77d22ebb179cef98e7e1235825431d10e4" } "telescope.nvim": { "branch": "master", "commit": "67c598fdd4fca113224281c85721c4d8a6df055e" },
} "todo-comments.nvim": { "branch": "main", "commit": "833d8dd8b07eeda37a09e99460f72a02616935cb" },
"tokyonight.nvim": { "branch": "main", "commit": "c025baf23b62f044eff1f4ef561c45de636f0e32" },
"trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" },
"venv-selector.nvim": { "branch": "main", "commit": "2ad34f36d498ff5193ea10f79c87688bd5284172" },
"vim-illuminate": { "branch": "master", "commit": "305bf07b919ac526deb5193280379e2f8b599926" },
"vim-ledger": { "branch": "master", "commit": "281346a221434574dd7f8767a352b2bf0b218b74" },
"vim-startuptime": { "branch": "master", "commit": "308b0088a864c4711a96e45b6734cf9294074f65" },
"vimtex": { "branch": "master", "commit": "9ce62bbf7ea8f6bb232bbff5549cd7745a3fd918" },
"which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" }
}

View File

@ -1,25 +1,19 @@
{ {
"extras": [ "extras": [
"lazyvim.plugins.extras.coding.mini-surround",
"lazyvim.plugins.extras.coding.yanky",
"lazyvim.plugins.extras.editor.dial",
"lazyvim.plugins.extras.editor.fzf",
"lazyvim.plugins.extras.editor.outline",
"lazyvim.plugins.extras.formatting.prettier",
"lazyvim.plugins.extras.lang.ansible", "lazyvim.plugins.extras.lang.ansible",
"lazyvim.plugins.extras.lang.clangd",
"lazyvim.plugins.extras.lang.docker", "lazyvim.plugins.extras.lang.docker",
"lazyvim.plugins.extras.lang.git", "lazyvim.plugins.extras.lang.elixir",
"lazyvim.plugins.extras.lang.json", "lazyvim.plugins.extras.lang.json",
"lazyvim.plugins.extras.lang.markdown", "lazyvim.plugins.extras.lang.markdown",
"lazyvim.plugins.extras.lang.python", "lazyvim.plugins.extras.lang.python",
"lazyvim.plugins.extras.lang.python-semshi",
"lazyvim.plugins.extras.lang.rust", "lazyvim.plugins.extras.lang.rust",
"lazyvim.plugins.extras.lang.tailwind",
"lazyvim.plugins.extras.lang.tex", "lazyvim.plugins.extras.lang.tex",
"lazyvim.plugins.extras.lang.toml", "lazyvim.plugins.extras.lang.yaml"
"lazyvim.plugins.extras.util.dot"
], ],
"news": { "news": {
"NEWS.md": "6520" "NEWS.md": "2123"
}, },
"version": 6 "version": 3
} }

View File

@ -1,10 +1,3 @@
-- Autocmds are automatically loaded on the VeryLazy event -- Autocmds are automatically loaded on the VeryLazy event
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua -- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
-- Add any additional autocmds here -- Add any additional autocmds here
vim.api.nvim_create_autocmd({ "Filetype" }, {
pattern = { "tex" },
callback = function()
vim.cmd("LanguageToolSetUp")
end,
})

View File

@ -1,23 +1,19 @@
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then if not vim.loop.fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git" -- bootstrap lazy.nvim
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) -- stylua: ignore
if vim.v.shell_error ~= 0 then vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath })
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end end
vim.opt.rtp:prepend(lazypath) vim.opt.rtp:prepend(vim.env.LAZY or lazypath)
require("lazy").setup({ require("lazy").setup({
spec = { spec = {
-- add LazyVim and import its plugins -- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" }, { "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import any extras modules here
-- { import = "lazyvim.plugins.extras.lang.typescript" },
-- { import = "lazyvim.plugins.extras.lang.json" },
-- { import = "lazyvim.plugins.extras.ui.mini-animate" },
-- import/override with your plugins -- import/override with your plugins
{ import = "plugins" }, { import = "plugins" },
}, },
@ -31,10 +27,7 @@ require("lazy").setup({
-- version = "*", -- try installing the latest stable version for plugins that support semver -- version = "*", -- try installing the latest stable version for plugins that support semver
}, },
install = { colorscheme = { "tokyonight", "habamax" } }, install = { colorscheme = { "tokyonight", "habamax" } },
checker = { checker = { enabled = true }, -- automatically check for plugin updates
enabled = true, -- check for plugin updates periodically
notify = false, -- notify on update
}, -- automatically check for plugin updates
performance = { performance = {
rtp = { rtp = {
-- disable some rtp plugins -- disable some rtp plugins

View File

@ -1,10 +1,3 @@
-- Options are automatically loaded before lazy.nvim startup -- Options are automatically loaded before lazy.nvim startup
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua -- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
-- Add any additional options here -- Add any additional options here
local opt = vim.opt
opt.spelllang = { "en_us", "de_de" }
vim.api.nvim_set_option_value("colorcolumn", "79", {})
vim.g.languagetool_server_command = "/usr/bin/languagetool --http"

View File

@ -30,6 +30,14 @@ return {
-- disable trouble -- disable trouble
{ "folke/trouble.nvim", enabled = false }, { "folke/trouble.nvim", enabled = false },
-- add symbols-outline
{
"simrat39/symbols-outline.nvim",
cmd = "SymbolsOutline",
keys = { { "<leader>cs", "<cmd>SymbolsOutline<cr>", desc = "Symbols Outline" } },
config = true,
},
-- override nvim-cmp and add cmp-emoji -- override nvim-cmp and add cmp-emoji
{ {
"hrsh7th/nvim-cmp", "hrsh7th/nvim-cmp",
@ -63,6 +71,18 @@ return {
}, },
}, },
-- add telescope-fzf-native
{
"telescope.nvim",
dependencies = {
"nvim-telescope/telescope-fzf-native.nvim",
build = "make",
config = function()
require("telescope").load_extension("fzf")
end,
},
},
-- add pyright to lspconfig -- add pyright to lspconfig
{ {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
@ -157,11 +177,7 @@ return {
"nvim-lualine/lualine.nvim", "nvim-lualine/lualine.nvim",
event = "VeryLazy", event = "VeryLazy",
opts = function(_, opts) opts = function(_, opts)
table.insert(opts.sections.lualine_x, { table.insert(opts.sections.lualine_x, "😄")
function()
return "😄"
end,
})
end, end,
}, },
@ -194,4 +210,56 @@ return {
}, },
}, },
}, },
-- Use <tab> for completion and snippets (supertab)
-- first: disable default <tab> and <s-tab> behavior in LuaSnip
{
"L3MON4D3/LuaSnip",
keys = function()
return {}
end,
},
-- then: setup supertab in cmp
{
"hrsh7th/nvim-cmp",
dependencies = {
"hrsh7th/cmp-emoji",
},
---@param opts cmp.ConfigSchema
opts = function(_, opts)
local has_words_before = function()
unpack = unpack or table.unpack
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
end
local luasnip = require("luasnip")
local cmp = require("cmp")
opts.mapping = vim.tbl_extend("force", opts.mapping, {
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
-- You could replace the expand_or_jumpable() calls with expand_or_locally_jumpable()
-- this way you will only jump inside the snippet region
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif has_words_before() then
cmp.complete()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, { "i", "s" }),
})
end,
},
} }

View File

@ -1,4 +0,0 @@
return {
-- Add vim-ledger
{ "vigoux/LanguageTool.nvim" },
}

View File

@ -0,0 +1,27 @@
return {
{
"nvim-orgmode/orgmode",
dependencies = {
{ "nvim-treesitter/nvim-treesitter", lazy = true },
},
event = "VeryLazy",
config = function()
-- Load treesitter grammar for org
require("orgmode").setup_ts_grammar()
-- Setup treesitter
require("nvim-treesitter.configs").setup({
highlight = {
enable = true,
},
ensure_installed = { "org" },
})
-- Setup orgmode
require("orgmode").setup({
org_agenda_files = "~/orgfiles/**/*",
org_default_notes_file = "~/orgfiles/refile.org",
})
end,
},
}

View File

@ -0,0 +1,44 @@
return {
"mrcjkb/rustaceanvim",
version = "^4", -- Recommended
ft = { "rust" },
opts = {
server = {
on_attach = function(_, bufnr)
vim.keymap.set("n", "<leader>cR", function()
vim.cmd.RustLsp("codeAction")
end, { desc = "Code Action", buffer = bufnr })
vim.keymap.set("n", "<leader>dr", function()
vim.cmd.RustLsp("debuggables")
end, { desc = "Rust debuggables", buffer = bufnr })
end,
default_settings = {
-- rust-analyzer language server configuration
["rust-analyzer"] = {
cargo = {
allFeatures = true,
loadOutDirsFromCheck = true,
runBuildScripts = true,
},
-- Add clippy lints for Rust.
checkOnSave = {
allFeatures = true,
command = "clippy",
extraArgs = { "--no-deps" },
},
procMacro = {
enable = true,
ignored = {
["async-trait"] = { "async_trait" },
["napi-derive"] = { "napi" },
["async-recursion"] = { "async_recursion" },
},
},
},
},
},
},
config = function(_, opts)
vim.g.rustaceanvim = vim.tbl_deep_extend("force", {}, opts or {})
end,
}

Binary file not shown.

Binary file not shown.

View File

@ -1,197 +0,0 @@
Röstschmiede
Cortado
Kubernetes
ARM64
ICCS
Jupyter
aggnode
gefixed
OBUs
disable
markdownlint
EthFuzz
Ethereum
Blockchain
Fuzzers
DAO
ethFuzz
EF/CF
EVM
libAFL
Fuzzer
revm
Tx
TxSeq
fuzzer
smartbugs
daedaluzz
precompiles
Echidna
AFL
callees
fuzzers
prebuilt
LibAFL
code
wieviel
wieviele
Cryptowährung
Instrumentations
Werkzeuge
transpiliert
gefuzzt
Transpilierung
reentrancies
Fuzzings
ityFuzz
ItyFuzz
gemanaged
fuzzen
Bytecode
Fuzzern
ThinkPad
E14
NAPP
PQoS
NMClient
JSON
ip
CONFIG
GNSS
gpsd
gps
OBU
webhook
nmcli
MEC
nginx
RTMP
Tichy
Taibi
Davide
Strukturorientiertes
RWTH
Simulink
Stateflow
AUTOSAR
MSR
lifecycle
Wahlpflichtvorlesungen
Proggen
Mastern
Präsenzlehre
respectivly
Annekdoten
Walid
Maalej
VLs
FSE
W3
Fachschaftsvorsitzenden
Todos
Oulu
Coveragemessung
IANA
SHK
Rizk
Bachelorsproject
Giesen
bachelorproject
Zitationsmetriken
Lehreerfahrung
Hasselbring
paluno
Vogalsang
UC6
EOW
UULM
Nehal
Giorgos
Thanos
uulm
obu0
obu1
orin
dml
dmlo
uc6dmlarm0
obu
uc6dmlarm02041
uc6dmlarm1
uc6dmlarm12051
uc6dmlarm2
uc6dmlarm22061
uc6dml
mec
uc6aggnode
NmCli
NmSender
TODO
uc6dmltrain0
uc6dmltrain02031
uc6dml90
uc6nmcli0
uc6nmcli2
uc6nmcli1
uc6pqos1841
uc6pqos
uc6pqos0
uc6nmsen21831
uc6nmsen2
uc6nmsender
eMBB
uc6aggnode1781
iana
uc6aggnode6
uc6dmltrain1
uc6dmltrain1541
us6nmclient1771
uc6nmclient
Monteiro
Dextra
DextraData
CTO
CompSci
CTF
Pentesting
Privatly
Monotonität
Gehaltsrange
inbetween
Homelab
Skillset
DevOps
ausverfrachtet
Ansible
IaC
Proxmox
Sina
Arbeitszeitsregelung
SRE
SREs
SLO
k3s
config
kubernetes
KUBECONFIG
localhost
gitea
RBAC
netcup
proxmox
LVM
Infura
Etherscan
Hypervisor
vCPUs
ESXI
finalevent
fe
reentrancy
blockchain
perf
#eentrency
#eentrency
reentrency/!
delegatecall
CCS

View File

@ -2,44 +2,49 @@
export ZSH="$HOME/.oh-my-zsh" export ZSH="$HOME/.oh-my-zsh"
export PATH="$PATH:$HOME/.go/bin:$HOME/.local/bin:$HOME/.cargo/bin:$HOME/.dotnet/tools:$HOME/.emacs.d/bin" export PATH="$PATH:$HOME/.go/bin:$HOME/.local/bin:$HOME/.cargo/bin:$HOME/.dotnet/tools:$HOME/.emacs.d/bin"
export DOTNET_CLI_TELEMETRY_OPTOUT=1 export DOTNET_CLI_TELEMETRY_OPTOUT=1
export PenTestTools=$HOME/Local/PenTesting/
export CTF=$HOME/Documents/CTF/
export WORKSPACE=$HOME/workspace_l export WORKSPACE=$HOME/workspace_l
export ZSHRC="$HOME/.zshrc" export ZSHRC="$HOME/.zshrc"
export VISUAL="nvim" export VISUAL="nvim"
export EDITOR="nvim" export EDITOR="nvim"
export KUBECONFIG=$HOME/.kube/config
# History # History
export HISTSIZE=50000 export HISTSIZE=10000000
export SAVEHIST=50000 export SAVEHIST=10000000
export HISTTIMEFORMAT="[%F %T] " export HISTTIMEFORMAT="[%F %T] "
setopt INC_APPEND_HISTORY
setopt EXTENDED_HISTORY setopt EXTENDED_HISTORY
setopt HIST_EXPIRE_DUPS_FIRST
setopt HIST_IGNORE_DUPS
setopt HIST_IGNORE_ALL_DUPS
setopt HIST_FIND_NO_DUPS setopt HIST_FIND_NO_DUPS
setopt HIST_IGNORE_SPACE
setopt HIST_SAVE_NO_DUPS
setopt SHARE_HISTORY
# Alias # Alias
alias kc="kubectl"
alias kns="kubens"
alias q="exit" alias q="exit"
alias b="byobu"
alias vim="nvim" alias vim="nvim"
alias cat="bat --pager=never" alias cat="bat --pager=never"
alias ranger='ranger --choosedir=$HOME/.rangerdir; LASTDIR=`cat $HOME/.rangerdir`; cd "$LASTDIR"' alias ranger='ranger --choosedir=$HOME/.rangerdir; LASTDIR=`cat $HOME/.rangerdir`; cd "$LASTDIR"'
alias xsel='xsel -ib' alias xsel='xsel -ib'
alias msfconsole="msfconsole -x \"db_connect metasploit@msf\""
alias nmap="nmap -T5 --min-parallelism 100 -Pn"
alias ed="\emacs --daemon"
alias e="open_emacs"
alias df="df -h" alias df="df -h"
alias picpaste="xclip -selection clipboard -t image/png -o" alias picpaste="xclip -selection clipboard -t image/png -o"
alias eledger="emacsclient -nw ~/Documents/Finanzen/Ledger/MyBudget.ledger"
alias sshconfig="emacsclient -nw ~/.ssh/config"
alias econfig="emacsclient -nw ~/.doom.d/init.el"
alias wttr="curl wttr.in/Essen" alias wttr="curl wttr.in/Essen"
alias tvres="xrandr --output HDMI1 --transform 1.02,0,-20,0,1.02,-10,0,0,1"
alias defaultres="xrandr --output HDMI1 --transform 1.00,0,0,0,1.00,0,0,0,1"
alias zshconfig="emacsclient -nw ~/.zshrc; source ~/.zshrc;"
alias notify="dunstify \"ping~\"" alias notify="dunstify \"ping~\""
alias ekill="pkill emacs; pkill emacsclient; ed"
alias latexmk="latexmk -f -pdf -interaction=nonstopmode" alias latexmk="latexmk -f -pdf -interaction=nonstopmode"
alias picotik="picocom --b 115200 /dev/ttyUSB0" alias picotik="picocom --b 115200 /dev/ttyUSB0"
alias kc="kubectl" alias ls="eza"
alias nspeedl="curl -s -o /dev/null -w \"DNS Lookup: %{time_namelookup}\nTCP Connect: %{time_connect}\nTotal: %{time_total}\n\" http://www.tudattr.dev" ## git
alias gps="git push soft --all"
alias gras="add_soft_git"
# Theme # Theme
ZSH_THEME="agnoster" ZSH_THEME="agnoster"
@ -49,16 +54,12 @@ plugins=(
git git
history history
z z
zsh-eza
) )
randpw() { < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-$1};echo;}; randpw() { < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-$1};echo;};
autoload -U +X bashcompinit && bashcompinit
autoload -Uz compinit && compinit
# Source # Source
source $ZSH/oh-my-zsh.sh source $ZSH/oh-my-zsh.sh
eval "$(starship init zsh)"
add_soft_git() { git remote add soft ssh://git.aya01:/$1 }
open_emacs() { emacsclient -c $1 & disown; };