├── .config ├── alacritty │ ├── alacritty.toml │ └── themes │ │ ├── ayu_dark.toml │ │ ├── ayu_light.toml │ │ ├── everforest_dark.toml │ │ ├── everforest_light.toml │ │ ├── one_dark.toml │ │ └── one_light.toml ├── btop │ ├── btop.conf │ └── themes │ │ └── everforest-light-medium.theme ├── git │ └── config ├── neofetch │ ├── anime.png │ ├── ascii.txt │ └── config.conf ├── tmuxp │ ├── infra.yaml │ ├── odoo.yml │ └── pynocchio.yaml └── yadm │ └── bootstrap ├── .github ├── README.md ├── dotfiles.png ├── screenshot.png └── screenshot_2.png ├── .gitignore ├── .gitmodules ├── .hidden ├── .local └── bin │ ├── atty │ ├── backupdot │ ├── colorpanes │ ├── colortest │ ├── colorview │ ├── prlink │ └── tmuxp ├── .tmux.conf ├── .zsh_aliases ├── .zshenv ├── .zshrc └── LICENSE /.config/alacritty/alacritty.toml: -------------------------------------------------------------------------------- 1 | import = [ 2 | "/home/michell/.config/alacritty/color.toml", 3 | ] 4 | 5 | [env] 6 | TERM = "xterm-256color" 7 | 8 | [font] 9 | size = 12.0 10 | 11 | [font.bold] 12 | family = "JetBrainsMono Nerd Font" 13 | style = "Bold" 14 | 15 | [font.bold_italic] 16 | family = "JetBrainsMono Nerd Font" 17 | style = "Bold Italic" 18 | 19 | [font.italic] 20 | family = "JetBrainsMono Nerd Font" 21 | style = "Italic" 22 | 23 | [font.normal] 24 | family = "JetBrainsMono Nerd Font" 25 | style = "Regular" 26 | 27 | [font.offset] 28 | x = 0 29 | y = 1 30 | 31 | [keyboard] 32 | bindings = [ 33 | { action = "Paste", key = "V", mods = "Control|Shift" }, 34 | { action = "Copy", key = "C", mods = "Control|Shift" }, 35 | { action = "PasteSelection", key = "Insert", mods = "Shift" }, 36 | { action = "ResetFontSize", key = "Key0", mods = "Control" }, 37 | { action = "ResetFontSize", key = "Equals", mods = "Control" }, 38 | { action = "IncreaseFontSize", key = "Plus", mods = "Control" }, 39 | { action = "DecreaseFontSize", key = "Minus", mods = "Control" }, 40 | { action = "ToggleFullscreen", key = "F11", mods = "None" }, 41 | { action = "Paste", key = "Paste", mods = "None" }, 42 | { action = "Copy", key = "Copy", mods = "None" }, 43 | { action = "ClearLogNotice", key = "L", mods = "Control" }, 44 | { chars = "\f", key = "L", mods = "Control" }, 45 | { action = "ScrollPageUp", key = "PageUp", mode = "~Alt", mods = "None" }, 46 | { action = "ScrollPageDown", key = "PageDown", mode = "~Alt", mods = "None" }, 47 | { action = "ScrollToTop", key = "Home", mode = "~Alt", mods = "Shift" }, 48 | { action = "ScrollToBottom", key = "End", mode = "~Alt", mods = "Shift" }, 49 | ] 50 | 51 | [scrolling] 52 | history = 5000 53 | 54 | [window] 55 | dynamic_padding = false 56 | opacity = 1 57 | blur = true 58 | title = "Alacritty" 59 | 60 | [window.class] 61 | general = "Alacritty" 62 | instance = "Alacritty" 63 | 64 | [window.padding] 65 | x = 2 66 | y = 1 67 | -------------------------------------------------------------------------------- /.config/alacritty/themes/ayu_dark.toml: -------------------------------------------------------------------------------- 1 | # Colors (Ayu Dark) 2 | 3 | # Default colors 4 | [colors.primary] 5 | background = '#0A0E14' 6 | foreground = '#B3B1AD' 7 | 8 | # Normal colors 9 | [colors.normal] 10 | black = '#01060E' 11 | red = '#EA6C73' 12 | green = '#91B362' 13 | yellow = '#F9AF4F' 14 | blue = '#53BDFA' 15 | magenta = '#FAE994' 16 | cyan = '#90E1C6' 17 | white = '#C7C7C7' 18 | 19 | # Bright colors 20 | [colors.bright] 21 | black = '#686868' 22 | red = '#F07178' 23 | green = '#C2D94C' 24 | yellow = '#FFB454' 25 | blue = '#59C2FF' 26 | magenta = '#FFEE99' 27 | cyan = '#95E6CB' 28 | white = '#FFFFFF' 29 | -------------------------------------------------------------------------------- /.config/alacritty/themes/ayu_light.toml: -------------------------------------------------------------------------------- 1 | # Colors (Ayu Light) 2 | 3 | # Default colors - taken from ayu-colors 4 | [colors.primary] 5 | background = '#FCFCFC' 6 | foreground = '#5C6166' 7 | 8 | # Normal colors - taken from ayu-iTerm 9 | [colors.normal] 10 | black = '#010101' 11 | red = '#e7666a' 12 | green = '#80ab24' 13 | yellow = '#eba54d' 14 | blue = '#4196df' 15 | magenta = '#9870c3' 16 | cyan = '#51b891' 17 | white = '#c1c1c1' 18 | 19 | # Bright colors - pastel lighten 0.1 except black lighten with 0.2 20 | [colors.bright] 21 | black = '#343434' 22 | red = '#ee9295' 23 | green = '#9fd32f' 24 | yellow = '#f0bc7b' 25 | blue = '#6daee6' 26 | magenta = '#b294d2' 27 | cyan = '#75c7a8' 28 | white = '#dbdbdb' 29 | -------------------------------------------------------------------------------- /.config/alacritty/themes/everforest_dark.toml: -------------------------------------------------------------------------------- 1 | # Colors (Everforest Dark) 2 | 3 | # Default colors 4 | [colors.primary] 5 | background = '#2d353b' 6 | foreground = '#d3c6aa' 7 | 8 | # Normal colors 9 | [colors.normal] 10 | black = '#475258' 11 | red = '#e67e80' 12 | green = '#a7c080' 13 | yellow = '#dbbc7f' 14 | blue = '#7fbbb3' 15 | magenta = '#d699b6' 16 | cyan = '#83c092' 17 | white = '#d3c6aa' 18 | 19 | # Bright colors 20 | [colors.bright] 21 | black = '#475258' 22 | red = '#e67e80' 23 | green = '#a7c080' 24 | yellow = '#dbbc7f' 25 | blue = '#7fbbb3' 26 | magenta = '#d699b6' 27 | cyan = '#83c092' 28 | white = '#d3c6aa' 29 | -------------------------------------------------------------------------------- /.config/alacritty/themes/everforest_light.toml: -------------------------------------------------------------------------------- 1 | # Colors (Everforest Light) 2 | 3 | # Default colors 4 | [colors.primary] 5 | background = '#fdf6e3' 6 | foreground = '#5c6a72' 7 | 8 | # Normal colors 9 | [colors.normal] 10 | black = '#5c6a72' 11 | red = '#f85552' 12 | green = '#8da101' 13 | yellow = '#dfa000' 14 | blue = '#3a94c5' 15 | magenta = '#df69ba' 16 | cyan = '#35a77c' 17 | white = '#e0dcc7' 18 | 19 | # Bright Colors 20 | [colors.bright] 21 | black = '#5c6a72' 22 | red = '#f85552' 23 | green = '#8da101' 24 | yellow = '#dfa000' 25 | blue = '#3a94c5' 26 | magenta = '#df69ba' 27 | cyan = '#35a77c' 28 | white = '#e0dcc7' 29 | -------------------------------------------------------------------------------- /.config/alacritty/themes/one_dark.toml: -------------------------------------------------------------------------------- 1 | # Colors (One Dark) 2 | 3 | # Default colors 4 | [colors.primary] 5 | background = '#282c34' 6 | foreground = '#abb2bf' 7 | 8 | # Normal colors 9 | [colors.normal] 10 | black = '#1e2127' 11 | red = '#e06c75' 12 | green = '#98c379' 13 | yellow = '#d19a66' 14 | blue = '#61afef' 15 | magenta = '#c678dd' 16 | cyan = '#56b6c2' 17 | white = '#abb2bf' 18 | 19 | # Bright colors 20 | [colors.bright] 21 | black = '#5c6370' 22 | red = '#e06c75' 23 | green = '#98c379' 24 | yellow = '#d19a66' 25 | blue = '#61afef' 26 | magenta = '#c678dd' 27 | cyan = '#56b6c2' 28 | white = '#ffffff' 29 | -------------------------------------------------------------------------------- /.config/alacritty/themes/one_light.toml: -------------------------------------------------------------------------------- 1 | [colors.primary] 2 | background = '#f8f8f8' 3 | foreground = '#2a2b33' 4 | 5 | [colors.normal] 6 | black = '#000000' 7 | red = '#de3d35' 8 | green = '#3e953a' 9 | yellow = '#d2b67b' 10 | blue = '#2f5af3' 11 | magenta = '#a00095' 12 | cyan = '#3e953a' 13 | white = '#bbbbbb' 14 | 15 | [colors.bright] 16 | black = '#000000' 17 | red = '#de3d35' 18 | green = '#3e953a' 19 | yellow = '#d2b67b' 20 | blue = '#2f5af3' 21 | magenta = '#a00095' 22 | cyan = '#3e953a' 23 | white = '#ffffff' 24 | -------------------------------------------------------------------------------- /.config/btop/btop.conf: -------------------------------------------------------------------------------- 1 | #? Config file for btop v. 1.3.0 2 | 3 | #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. 4 | #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" 5 | color_theme = "/usr/share/btop/themes/everforest-dark-hard.theme" 6 | 7 | #* If the theme set background should be shown, set to False if you want terminal background transparency. 8 | theme_background = True 9 | 10 | #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. 11 | truecolor = True 12 | 13 | #* Set to true to force tty mode regardless if a real tty has been detected or not. 14 | #* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. 15 | force_tty = False 16 | 17 | #* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. 18 | #* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. 19 | #* Use whitespace " " as separator between different presets. 20 | #* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty" 21 | presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty" 22 | 23 | #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. 24 | #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. 25 | vim_keys = False 26 | 27 | #* Rounded corners on boxes, is ignored if TTY mode is ON. 28 | rounded_corners = True 29 | 30 | #* Default symbols to use for graph creation, "braille", "block" or "tty". 31 | #* "braille" offers the highest resolution but might not be included in all fonts. 32 | #* "block" has half the resolution of braille but uses more common characters. 33 | #* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. 34 | #* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. 35 | graph_symbol = "braille" 36 | 37 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 38 | graph_symbol_cpu = "default" 39 | 40 | # Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty". 41 | graph_symbol_gpu = "default" 42 | 43 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 44 | graph_symbol_mem = "default" 45 | 46 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 47 | graph_symbol_net = "default" 48 | 49 | # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". 50 | graph_symbol_proc = "default" 51 | 52 | #* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace. 53 | shown_boxes = "cpu mem net proc" 54 | 55 | #* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. 56 | update_ms = 2000 57 | 58 | #* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", 59 | #* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. 60 | proc_sorting = "cpu lazy" 61 | 62 | #* Reverse sorting order, True or False. 63 | proc_reversed = False 64 | 65 | #* Show processes as a tree. 66 | proc_tree = False 67 | 68 | #* Use the cpu graph colors in the process list. 69 | proc_colors = True 70 | 71 | #* Use a darkening gradient in the process list. 72 | proc_gradient = True 73 | 74 | #* If process cpu usage should be of the core it's running on or usage of the total available cpu power. 75 | proc_per_core = False 76 | 77 | #* Show process memory as bytes instead of percent. 78 | proc_mem_bytes = True 79 | 80 | #* Show cpu graph for each process. 81 | proc_cpu_graphs = True 82 | 83 | #* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) 84 | proc_info_smaps = False 85 | 86 | #* Show proc box on left side of screen instead of right. 87 | proc_left = False 88 | 89 | #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). 90 | proc_filter_kernel = False 91 | 92 | #* In tree-view, always accumulate child process resources in the parent process. 93 | proc_aggregate = False 94 | 95 | #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. 96 | #* Select from a list of detected attributes from the options menu. 97 | cpu_graph_upper = "Auto" 98 | 99 | #* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available. 100 | #* Select from a list of detected attributes from the options menu. 101 | cpu_graph_lower = "Auto" 102 | 103 | #* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off". 104 | show_gpu_info = "Auto" 105 | 106 | #* Toggles if the lower CPU graph should be inverted. 107 | cpu_invert_lower = True 108 | 109 | #* Set to True to completely disable the lower CPU graph. 110 | cpu_single_graph = False 111 | 112 | #* Show cpu box at bottom of screen instead of top. 113 | cpu_bottom = False 114 | 115 | #* Shows the system uptime in the CPU box. 116 | show_uptime = True 117 | 118 | #* Show cpu temperature. 119 | check_temp = True 120 | 121 | #* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. 122 | cpu_sensor = "Auto" 123 | 124 | #* Show temperatures for cpu cores also if check_temp is True and sensors has been found. 125 | show_coretemp = True 126 | 127 | #* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. 128 | #* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. 129 | #* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries. 130 | #* Example: "4:0 5:1 6:3" 131 | cpu_core_map = "" 132 | 133 | #* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine". 134 | temp_scale = "celsius" 135 | 136 | #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. 137 | base_10_sizes = False 138 | 139 | #* Show CPU frequency. 140 | show_cpu_freq = True 141 | 142 | #* Draw a clock at top of screen, formatting according to strftime, empty string to disable. 143 | #* Special formatting: /host = hostname | /user = username | /uptime = system uptime 144 | clock_format = "%X" 145 | 146 | #* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. 147 | background_update = True 148 | 149 | #* Custom cpu model name, empty string to disable. 150 | custom_cpu_name = "" 151 | 152 | #* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ". 153 | #* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user". 154 | disks_filter = "" 155 | 156 | #* Show graphs instead of meters for memory values. 157 | mem_graphs = True 158 | 159 | #* Show mem box below net box instead of above. 160 | mem_below_net = False 161 | 162 | #* Count ZFS ARC in cached and available memory. 163 | zfs_arc_cached = True 164 | 165 | #* If swap memory should be shown in memory box. 166 | show_swap = True 167 | 168 | #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. 169 | swap_disk = True 170 | 171 | #* If mem box should be split to also show disks info. 172 | show_disks = True 173 | 174 | #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. 175 | only_physical = True 176 | 177 | #* Read disks list from /etc/fstab. This also disables only_physical. 178 | use_fstab = True 179 | 180 | #* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) 181 | zfs_hide_datasets = False 182 | 183 | #* Set to true to show available disk space for privileged users. 184 | disk_free_priv = False 185 | 186 | #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. 187 | show_io_stat = True 188 | 189 | #* Toggles io mode for disks, showing big graphs for disk read/write speeds. 190 | io_mode = False 191 | 192 | #* Set to True to show combined read/write io graphs in io mode. 193 | io_graph_combined = False 194 | 195 | #* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". 196 | #* Example: "/mnt/media:100 /:20 /boot:1". 197 | io_graph_speeds = "" 198 | 199 | #* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False. 200 | net_download = 100 201 | 202 | net_upload = 100 203 | 204 | #* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. 205 | net_auto = True 206 | 207 | #* Sync the auto scaling for download and upload to whichever currently has the highest scale. 208 | net_sync = True 209 | 210 | #* Starts with the Network Interface specified here. 211 | net_iface = "" 212 | 213 | #* Show battery stats in top right if battery is present. 214 | show_battery = True 215 | 216 | #* Which battery to use if multiple are present. "Auto" for auto detection. 217 | selected_battery = "Auto" 218 | 219 | #* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". 220 | #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. 221 | log_level = "WARNING" 222 | 223 | #* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards. 224 | nvml_measure_pcie_speeds = True 225 | 226 | #* Horizontally mirror the GPU graph. 227 | gpu_mirror_graph = True 228 | 229 | #* Custom gpu0 model name, empty string to disable. 230 | custom_gpu_name0 = "" 231 | 232 | #* Custom gpu1 model name, empty string to disable. 233 | custom_gpu_name1 = "" 234 | 235 | #* Custom gpu2 model name, empty string to disable. 236 | custom_gpu_name2 = "" 237 | 238 | #* Custom gpu3 model name, empty string to disable. 239 | custom_gpu_name3 = "" 240 | 241 | #* Custom gpu4 model name, empty string to disable. 242 | custom_gpu_name4 = "" 243 | 244 | #* Custom gpu5 model name, empty string to disable. 245 | custom_gpu_name5 = "" -------------------------------------------------------------------------------- /.config/btop/themes/everforest-light-medium.theme: -------------------------------------------------------------------------------- 1 | # All graphs and meters can be gradients 2 | # For single color graphs leave "mid" and "end" variable empty. 3 | # Use "start" and "end" variables for two color gradient 4 | # Use "start", "mid" and "end" for three color gradient 5 | 6 | # Main background, empty for terminal default, need to be empty if you want transparent background 7 | theme[main_bg]="#fdf6e3" 8 | 9 | # Main text color 10 | theme[main_fg]="#5c6a72" 11 | 12 | # Title color for boxes 13 | theme[title]="#5c6a72" 14 | 15 | # Highlight color for keyboard shortcuts 16 | theme[hi_fg]="#df69ba" 17 | 18 | # Background color of selected items 19 | theme[selected_bg]="#4F585E" 20 | 21 | # Foreground color of selected items 22 | theme[selected_fg]="#dfa000" 23 | 24 | # Color of inactive/disabled text 25 | theme[inactive_fg]="#9DA9A0" 26 | 27 | # Color of text appearing on top of graphs, i.e uptime and current network graph scaling 28 | theme[graph_text]="#5c6a72" 29 | 30 | # Misc colors for processes box including mini cpu graphs, details memory graph and details status text 31 | theme[proc_misc]="#8da101" 32 | 33 | # Cpu box outline color 34 | theme[cpu_box]="#4F585E" 35 | 36 | # Memory/disks box outline color 37 | theme[mem_box]="#4F585E" 38 | 39 | # Net up/down box outline color 40 | theme[net_box]="#4F585E" 41 | 42 | # Processes box outline color 43 | theme[proc_box]="#4F585E" 44 | 45 | # Box divider line and small boxes line color 46 | theme[div_line]="#4F585E" 47 | 48 | # Temperature graph colors 49 | theme[temp_start]="#8da101" 50 | theme[temp_mid]="#dfa000" 51 | theme[temp_end]="#f85552" 52 | 53 | # CPU graph colors 54 | theme[cpu_start]="#8da101" 55 | theme[cpu_mid]="#dfa000" 56 | theme[cpu_end]="#f85552" 57 | 58 | # Mem/Disk free meter 59 | theme[free_start]="#f85552" 60 | theme[free_mid]="#dfa000" 61 | theme[free_end]="#8da101" 62 | 63 | # Mem/Disk cached meter 64 | theme[cached_start]="#3994c5" 65 | theme[cached_mid]="#35a77c" 66 | theme[cached_end]="#8da101" 67 | 68 | # Mem/Disk available meter 69 | theme[available_start]="#f85552" 70 | theme[available_mid]="#dfa000" 71 | theme[available_end]="#8da101" 72 | 73 | # Mem/Disk used meter 74 | theme[used_start]="#8da101" 75 | theme[used_mid]="#dfa000" 76 | theme[used_end]="#f85552" 77 | 78 | # Download graph colors 79 | theme[download_start]="#8da101" 80 | theme[download_mid]="#35a77c" 81 | theme[download_end]="#3994c5" 82 | 83 | # Upload graph colors 84 | theme[upload_start]="#dfa000" 85 | theme[upload_mid]="#e66868" 86 | theme[upload_end]="#df69ba" 87 | 88 | # Process box color gradient for threads, mem and cpu usage 89 | theme[process_start]="#8da101" 90 | theme[process_mid]="#df69ba" 91 | theme[process_end]="#f85552" 92 | 93 | -------------------------------------------------------------------------------- /.config/git/config: -------------------------------------------------------------------------------- 1 | [user] 2 | name = Michell Stuttgart 3 | email = michellstut@gmail.com 4 | 5 | [github] 6 | user = mstuttgart 7 | 8 | [init] 9 | defaultBranch = main 10 | 11 | [grep] 12 | lineNumber = true 13 | 14 | [help] 15 | autocorrect = 1 16 | 17 | [fetch] 18 | prune = true 19 | 20 | [pull] 21 | rebase = true 22 | 23 | [alias] 24 | last = log -1 HEAD 25 | 26 | append = commit --amend --reuse-message=HEAD 27 | amend = commit --amend 28 | 29 | adda = add . 30 | 31 | cm = commit 32 | cma = commit -a 33 | 34 | ck = checkout 35 | ckb = checkout -b 36 | ckt = checkout -t 37 | 38 | chp = cherry-pick 39 | 40 | contrib = shortlog --summary --numbered 41 | 42 | rbi = rebase -i 43 | 44 | df = diff --word-diff 45 | ft = fetch --all --prune # Fetch all remotes and prune. 46 | 47 | # Logs alias 48 | gl = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit 49 | 50 | # Status alias 51 | st = status 52 | ts = status -sb 53 | 54 | # current branch 55 | here = !git rev-parse --abbrev-ref HEAD 56 | 57 | # publish 58 | up = !git push origin -u $(git here) 59 | upf = !git push -f origin -u $(git here) 60 | 61 | # update 62 | down = !git pull --rebase origin $(git here) 63 | 64 | # https://github.com/sloria/dotfiles/blob/master/roles/git/templates/gitconfig.j2 65 | # Nukes a branch locally and on the origin remote. 66 | nuke = "!f() { git branch -D $1 && git push origin :$1; }; f" 67 | 68 | # Remove local branches that have been removed upstream 69 | cleanup = "!git fetch --all -p && git branch -vv | grep \": gone]\" | awk '{ print $1 }' | xargs -n 1 git branch -D" 70 | 71 | # http://gggritso.com/human-git-aliases 72 | unstage = reset -q HEAD -- 73 | uns = unstage 74 | 75 | # Open .gitconfig in your default editor. 76 | conf = config --global -e 77 | 78 | # list all git alias 79 | alias = !git config -l | grep alias 80 | 81 | [core] 82 | editor = nvim 83 | pager = cat 84 | 85 | [color "branch"] 86 | current = yellow reverse 87 | local = yellow 88 | remote = green 89 | 90 | [blame] 91 | coloring = highlightRecent 92 | 93 | [color "diff"] 94 | meta = yellow bold 95 | frag = magenta bold # line info 96 | old = red # deletions 97 | new = green # additions 98 | 99 | [color "status"] 100 | added = yellow 101 | changed = green 102 | untracked = cyan 103 | 104 | [web] 105 | browser = firefox 106 | -------------------------------------------------------------------------------- /.config/neofetch/anime.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mstuttgart/dotfiles/0152a0c8f4b471ba233f3e7ea9230a7f3c2a21bb/.config/neofetch/anime.png -------------------------------------------------------------------------------- /.config/neofetch/ascii.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ▄ ▄ 5 | ▄ ▀▄ ▄▀ ▄ 6 | █▄█▀███▀█▄█ 7 | ▀█████████▀ 8 | ▄▀ ▀▄ 9 | 10 | 11 | -------------------------------------------------------------------------------- /.config/neofetch/config.conf: -------------------------------------------------------------------------------- 1 | # https://github.com/chick2d/neofetch-themes 2 | # Based in theme made by https://github.com/chatsagnik 3 | 4 | print_info() { 5 | prin " " 6 | info "$(color 1) OS " distro 7 | info "$(color 2) VER" kernel 8 | info "$(color 3) UP " uptime 9 | info "$(color 4) PKG" packages 10 | info "$(color 5) CPU" cpu 11 | info "$(color 6) GPU" gpu 12 | info "$(color 7) MEM" memory 13 | info "$(color 7) DISK" disk 14 | info "$(color 8) THM" theme 15 | info "$(color 8) ICO" icons 16 | prin "$(color 1) $(color 2) $(color 3) $(color 4) $(color 5) $(color 6) $(color 7) $(color 8)" 17 | 18 | } 19 | 20 | # Title 21 | 22 | # Hide/Show Fully qualified domain name. 23 | # 24 | # Default: 'off' 25 | # Values: 'on', 'off' 26 | # Flag: --title_fqdn 27 | title_fqdn="off" 28 | 29 | # Kernel 30 | 31 | # Shorten the output of the kernel function. 32 | # 33 | # Default: 'on' 34 | # Values: 'on', 'off' 35 | # Flag: --kernel_shorthand 36 | # Supports: Everything except *BSDs (except PacBSD and PC-BSD) 37 | # 38 | # Example: 39 | # on: '4.8.9-1-ARCH' 40 | # off: 'Linux 4.8.9-1-ARCH' 41 | kernel_shorthand="on" 42 | 43 | # Distro 44 | 45 | # Shorten the output of the distro function 46 | # 47 | # Default: 'off' 48 | # Values: 'on', 'tiny', 'off' 49 | # Flag: --distro_shorthand 50 | # Supports: Everything except Windows and Haiku 51 | distro_shorthand="off" 52 | 53 | # Show/Hide OS Architecture. 54 | # Show 'x86_64', 'x86' and etc in 'Distro:' output. 55 | # 56 | # Default: 'on' 57 | # Values: 'on', 'off' 58 | # Flag: --os_arch 59 | # 60 | # Example: 61 | # on: 'Arch Linux x86_64' 62 | # off: 'Arch Linux' 63 | os_arch="on" 64 | 65 | # Uptime 66 | 67 | # Shorten the output of the uptime function 68 | # 69 | # Default: 'on' 70 | # Values: 'on', 'tiny', 'off' 71 | # Flag: --uptime_shorthand 72 | # 73 | # Example: 74 | # on: '2 days, 10 hours, 3 mins' 75 | # tiny: '2d 10h 3m' 76 | # off: '2 days, 10 hours, 3 minutes' 77 | uptime_shorthand="on" 78 | 79 | # Memory 80 | 81 | # Show memory pecentage in output. 82 | # 83 | # Default: 'off' 84 | # Values: 'on', 'off' 85 | # Flag: --memory_percent 86 | # 87 | # Example: 88 | # on: '1801MiB / 7881MiB (22%)' 89 | # off: '1801MiB / 7881MiB' 90 | memory_percent="off" 91 | 92 | # Change memory output unit. 93 | # 94 | # Default: 'mib' 95 | # Values: 'kib', 'mib', 'gib' 96 | # Flag: --memory_unit 97 | # 98 | # Example: 99 | # kib '1020928KiB / 7117824KiB' 100 | # mib '1042MiB / 6951MiB' 101 | # gib: ' 0.98GiB / 6.79GiB' 102 | memory_unit="gib" 103 | 104 | # Packages 105 | 106 | # Show/Hide Package Manager names. 107 | # 108 | # Default: 'tiny' 109 | # Values: 'on', 'tiny' 'off' 110 | # Flag: --package_managers 111 | # 112 | # Example: 113 | # on: '998 (pacman), 8 (flatpak), 4 (snap)' 114 | # tiny: '908 (pacman, flatpak, snap)' 115 | # off: '908' 116 | package_managers="on" 117 | 118 | # Shell 119 | 120 | # Show the path to $SHELL 121 | # 122 | # Default: 'off' 123 | # Values: 'on', 'off' 124 | # Flag: --shell_path 125 | # 126 | # Example: 127 | # on: '/bin/bash' 128 | # off: 'bash' 129 | shell_path="off" # Show $SHELL version 130 | # Default: 'on' 131 | # Values: 'on', 'off' 132 | # Flag: --shell_version 133 | # 134 | # Example: 135 | # on: 'bash 4.4.5' 136 | # off: 'bash' 137 | shell_version="on" 138 | 139 | # CPU 140 | 141 | # CPU speed type 142 | # 143 | # Default: 'bios_limit' 144 | # Values: 'scaling_cur_freq', 'scaling_min_freq', 'scaling_max_freq', 'bios_limit'. 145 | # Flag: --speed_type 146 | # Supports: Linux with 'cpufreq' 147 | # NOTE: Any file in '/sys/devices/system/cpu/cpu0/cpufreq' can be used as a value. 148 | speed_type="bios_limit" 149 | 150 | # CPU speed shorthand 151 | # 152 | # Default: 'off' 153 | # Values: 'on', 'off'. 154 | # Flag: --speed_shorthand 155 | # NOTE: This flag is not supported in systems with CPU speed less than 1 GHz 156 | # 157 | # Example: 158 | # on: 'i7-6500U (4) @ 3.1GHz' 159 | # off: 'i7-6500U (4) @ 3.100GHz' 160 | speed_shorthand="on" 161 | 162 | # Enable/Disable CPU brand in output. 163 | # 164 | # Default: 'on' 165 | # Values: 'on', 'off' 166 | # Flag: --cpu_brand 167 | # 168 | # Example: 169 | # on: 'Intel i7-6500U' 170 | # off: 'i7-6500U (4)' 171 | cpu_brand="on" 172 | 173 | # CPU Speed 174 | # Hide/Show CPU speed. 175 | # 176 | # Default: 'on' 177 | # Values: 'on', 'off' 178 | # Flag: --cpu_speed 179 | # 180 | # Example: 181 | # on: 'Intel i7-6500U (4) @ 3.1GHz' 182 | # off: 'Intel i7-6500U (4)' 183 | cpu_speed="on" 184 | 185 | # CPU Cores 186 | # Display CPU cores in output 187 | # 188 | # Default: 'logical' 189 | # Values: 'logical', 'physical', 'off' 190 | # Flag: --cpu_cores 191 | # Support: 'physical' doesn't work on BSD. 192 | # 193 | # Example: 194 | # logical: 'Intel i7-6500U (4) @ 3.1GHz' (All virtual cores) 195 | # physical: 'Intel i7-6500U (2) @ 3.1GHz' (All physical cores) 196 | # off: 'Intel i7-6500U @ 3.1GHz' 197 | cpu_cores="logical" 198 | 199 | # CPU Temperature 200 | # Hide/Show CPU temperature. 201 | # Note the temperature is added to the regular CPU function. 202 | # 203 | # Default: 'off' 204 | # Values: 'C', 'F', 'off' 205 | # Flag: --cpu_temp 206 | # Supports: Linux, BSD 207 | # NOTE: For FreeBSD and NetBSD-based systems, you'll need to enable 208 | # coretemp kernel module. This only supports newer Intel processors. 209 | # 210 | # Example: 211 | # C: 'Intel i7-6500U (4) @ 3.1GHz [27.2°C]' 212 | # F: 'Intel i7-6500U (4) @ 3.1GHz [82.0°F]' 213 | # off: 'Intel i7-6500U (4) @ 3.1GHz' 214 | cpu_temp="off" 215 | 216 | # GPU 217 | 218 | # Enable/Disable GPU Brand 219 | # 220 | # Default: 'on' 221 | # Values: 'on', 'off' 222 | # Flag: --gpu_brand 223 | # 224 | # Example: 225 | # on: 'AMD HD 7950' 226 | # off: 'HD 7950' 227 | gpu_brand="on" 228 | 229 | # Which GPU to display 230 | # 231 | # Default: 'all' 232 | # Values: 'all', 'dedicated', 'integrated' 233 | # Flag: --gpu_type 234 | # Supports: Linux 235 | # 236 | # Example: 237 | # all: 238 | # GPU1: AMD HD 7950 239 | # GPU2: Intel Integrated Graphics 240 | # 241 | # dedicated: 242 | # GPU1: AMD HD 7950 243 | # 244 | # integrated: 245 | # GPU1: Intel Integrated Graphics 246 | gpu_type="all" 247 | 248 | # Resolution 249 | 250 | # Display refresh rate next to each monitor 251 | # Default: 'off' 252 | # Values: 'on', 'off' 253 | # Flag: --refresh_rate 254 | # Supports: Doesn't work on Windows. 255 | # 256 | # Example: 257 | # on: '1920x1080 @ 60Hz' 258 | # off: '1920x1080' 259 | refresh_rate="off" 260 | 261 | # Gtk Theme / Icons / Font 262 | 263 | # Shorten output of GTK Theme / Icons / Font 264 | # 265 | # Default: 'off' 266 | # Values: 'on', 'off' 267 | # Flag: --gtk_shorthand 268 | # 269 | # Example: 270 | # on: 'Numix, Adwaita' 271 | # off: 'Numix [GTK2], Adwaita [GTK3]' 272 | gtk_shorthand="off" 273 | 274 | # Enable/Disable gtk2 Theme / Icons / Font 275 | # 276 | # Default: 'on' 277 | # Values: 'on', 'off' 278 | # Flag: --gtk2 279 | # 280 | # Example: 281 | # on: 'Numix [GTK2], Adwaita [GTK3]' 282 | # off: 'Adwaita [GTK3]' 283 | gtk2="on" 284 | 285 | # Enable/Disable gtk3 Theme / Icons / Font 286 | # 287 | # Default: 'on' 288 | # Values: 'on', 'off' 289 | # Flag: --gtk3 290 | # 291 | # Example: 292 | # on: 'Numix [GTK2], Adwaita [GTK3]' 293 | # off: 'Numix [GTK2]' 294 | gtk3="on" 295 | 296 | # IP Address 297 | 298 | # Website to ping for the public IP 299 | # 300 | # Default: 'http://ident.me' 301 | # Values: 'url' 302 | # Flag: --ip_host 303 | public_ip_host="http://ident.me" 304 | 305 | # Public IP timeout. 306 | # 307 | # Default: '2' 308 | # Values: 'int' 309 | # Flag: --ip_timeout 310 | public_ip_timeout=2 311 | 312 | # Desktop Environment 313 | 314 | # Show Desktop Environment version 315 | # 316 | # Default: 'on' 317 | # Values: 'on', 'off' 318 | # Flag: --de_version 319 | de_version="on" 320 | 321 | # Disk 322 | 323 | # Which disks to display. 324 | # The values can be any /dev/sdXX, mount point or directory. 325 | # NOTE: By default we only show the disk info for '/'. 326 | # 327 | # Default: '/' 328 | # Values: '/', '/dev/sdXX', '/path/to/drive'. 329 | # Flag: --disk_show 330 | # 331 | # Example: 332 | # disk_show=('/' '/dev/sdb1'): 333 | # 'Disk (/): 74G / 118G (66%)' 334 | # 'Disk (/mnt/Videos): 823G / 893G (93%)' 335 | # 336 | # disk_show=('/'): 337 | # 'Disk (/): 74G / 118G (66%)' 338 | # 339 | disk_show=('/') 340 | 341 | # Disk subtitle. 342 | # What to append to the Disk subtitle. 343 | # 344 | # Default: 'mount' 345 | # Values: 'mount', 'name', 'dir', 'none' 346 | # Flag: --disk_subtitle 347 | # 348 | # Example: 349 | # name: 'Disk (/dev/sda1): 74G / 118G (66%)' 350 | # 'Disk (/dev/sdb2): 74G / 118G (66%)' 351 | # 352 | # mount: 'Disk (/): 74G / 118G (66%)' 353 | # 'Disk (/mnt/Local Disk): 74G / 118G (66%)' 354 | # 'Disk (/mnt/Videos): 74G / 118G (66%)' 355 | # 356 | # dir: 'Disk (/): 74G / 118G (66%)' 357 | # 'Disk (Local Disk): 74G / 118G (66%)' 358 | # 'Disk (Videos): 74G / 118G (66%)' 359 | # 360 | # none: 'Disk: 74G / 118G (66%)' 361 | # 'Disk: 74G / 118G (66%)' 362 | # 'Disk: 74G / 118G (66%)' 363 | disk_subtitle="mount" 364 | 365 | # Disk percent. 366 | # Show/Hide disk percent. 367 | # 368 | # Default: 'on' 369 | # Values: 'on', 'off' 370 | # Flag: --disk_percent 371 | # 372 | # Example: 373 | # on: 'Disk (/): 74G / 118G (66%)' 374 | # off: 'Disk (/): 74G / 118G' 375 | disk_percent="on" 376 | 377 | # Song 378 | 379 | # Manually specify a music player. 380 | # 381 | # Default: 'auto' 382 | # Values: 'auto', 'player-name' 383 | # Flag: --music_player 384 | # 385 | # Available values for 'player-name': 386 | # 387 | # amarok 388 | # audacious 389 | # banshee 390 | # bluemindo 391 | # clementine 392 | # cmus 393 | # deadbeef 394 | # deepin-music 395 | # dragon 396 | # elisa 397 | # exaile 398 | # gnome-music 399 | # gmusicbrowser 400 | # gogglesmm 401 | # guayadeque 402 | # io.elementary.music 403 | # iTunes 404 | # juk 405 | # lollypop 406 | # mocp 407 | # mopidy 408 | # mpd 409 | # muine 410 | # netease-cloud-music 411 | # olivia 412 | # playerctl 413 | # pogo 414 | # pragha 415 | # qmmp 416 | # quodlibet 417 | # rhythmbox 418 | # sayonara 419 | # smplayer 420 | # spotify 421 | # strawberry 422 | # tauonmb 423 | # tomahawk 424 | # vlc 425 | # xmms2d 426 | # xnoise 427 | # yarock 428 | music_player="spotify" 429 | 430 | # Format to display song information. 431 | # 432 | # Default: '%artist% - %album% - %title%' 433 | # Values: '%artist%', '%album%', '%title%' 434 | # Flag: --song_format 435 | # 436 | # Example: 437 | # default: 'Song: Jet - Get Born - Sgt Major' 438 | song_format="%artist% - %album% - %title%" 439 | 440 | # Print the Artist, Album and Title on separate lines 441 | # 442 | # Default: 'off' 443 | # Values: 'on', 'off' 444 | # Flag: --song_shorthand 445 | # 446 | # Example: 447 | # on: 'Artist: The Fratellis' 448 | # 'Album: Costello Music' 449 | # 'Song: Chelsea Dagger' 450 | # 451 | # off: 'Song: The Fratellis - Costello Music - Chelsea Dagger' 452 | song_shorthand="off" 453 | 454 | # 'mpc' arguments (specify a host, password etc). 455 | # 456 | # Default: '' 457 | # Example: mpc_args=(-h HOST -P PASSWORD) 458 | mpc_args=() 459 | 460 | # Text Colors 461 | 462 | # Text Colors 463 | # 464 | # Default: 'distro' 465 | # Values: 'distro', 'num' 'num' 'num' 'num' 'num' 'num' 466 | # Flag: --colors 467 | # 468 | # Each number represents a different part of the text in 469 | # this order: 'title', '@', 'underline', 'subtitle', 'colon', 'info' 470 | # 471 | # Example: 472 | # colors=(distro) - Text is colored based on Distro colors. 473 | # colors=(4 6 1 8 8 6) - Text is colored in the order above. 474 | colors=(distro) 475 | 476 | # Text Options 477 | 478 | # Toggle bold text 479 | # 480 | # Default: 'on' 481 | # Values: 'on', 'off' 482 | # Flag: --bold 483 | bold="on" 484 | 485 | # Enable/Disable Underline 486 | # 487 | # Default: 'on' 488 | # Values: 'on', 'off' 489 | # Flag: --underline 490 | underline_enabled="on" 491 | 492 | # Underline character 493 | # 494 | # Default: '-' 495 | # Values: 'string' 496 | # Flag: --underline_char 497 | underline_char="-" 498 | 499 | # Info Separator 500 | # Replace the default separator with the specified string. 501 | # 502 | # Default: ':' 503 | # Flag: --separator 504 | # 505 | # Example: 506 | # separator="->": 'Shell-> bash' 507 | # separator=" =": 'WM = dwm' 508 | separator=":" 509 | 510 | # Color Blocks 511 | 512 | # Color block range 513 | # The range of colors to print. 514 | # 515 | # Default: '0', '15' 516 | # Values: 'num' 517 | # Flag: --block_range 518 | # 519 | # Example: 520 | # 521 | # Display colors 0-7 in the blocks. (8 colors) 522 | # neofetch --block_range 0 7 523 | # 524 | # Display colors 0-15 in the blocks. (16 colors) 525 | # neofetch --block_range 0 15 526 | block_range=(0 15) 527 | 528 | # Toggle color blocks 529 | # 530 | # Default: 'on' 531 | # Values: 'on', 'off' 532 | # Flag: --color_blocks 533 | color_blocks="on" 534 | 535 | # Color block width in spaces 536 | # 537 | # Default: '3' 538 | # Values: 'num' 539 | # Flag: --block_width 540 | block_width=3 541 | 542 | # Color block height in lines 543 | # 544 | # Default: '1' 545 | # Values: 'num' 546 | # Flag: --block_height 547 | block_height=1 548 | 549 | # Color Alignment 550 | # 551 | # Default: 'auto' 552 | # Values: 'auto', 'num' 553 | # Flag: --col_offset 554 | # 555 | # Number specifies how far from the left side of the terminal (in spaces) to 556 | # begin printing the columns, in case you want to e.g. center them under your 557 | # text. 558 | # Example: 559 | # col_offset="auto" - Default behavior of neofetch 560 | # col_offset=7 - Leave 7 spaces then print the colors 561 | col_offset="auto" 562 | 563 | # Progress Bars 564 | 565 | # Bar characters 566 | # 567 | # Default: '-', '=' 568 | # Values: 'string', 'string' 569 | # Flag: --bar_char 570 | # 571 | # Example: 572 | # neofetch --bar_char 'elapsed' 'total' 573 | # neofetch --bar_char '-' '=' 574 | bar_char_elapsed="-" 575 | bar_char_total="=" 576 | 577 | # Toggle Bar border 578 | # 579 | # Default: 'on' 580 | # Values: 'on', 'off' 581 | # Flag: --bar_border 582 | bar_border="on" 583 | 584 | # Progress bar length in spaces 585 | # Number of chars long to make the progress bars. 586 | # 587 | # Default: '15' 588 | # Values: 'num' 589 | # Flag: --bar_length 590 | bar_length=15 591 | 592 | # Progress bar colors 593 | # When set to distro, uses your distro's logo colors. 594 | # 595 | # Default: 'distro', 'distro' 596 | # Values: 'distro', 'num' 597 | # Flag: --bar_colors 598 | # 599 | # Example: 600 | # neofetch --bar_colors 3 4 601 | # neofetch --bar_colors distro 5 602 | bar_color_elapsed="distro" 603 | bar_color_total="distro" 604 | 605 | # Info display 606 | # Display a bar with the info. 607 | # 608 | # Default: 'off' 609 | # Values: 'bar', 'infobar', 'barinfo', 'off' 610 | # Flags: --cpu_display 611 | # --memory_display 612 | # --battery_display 613 | # --disk_display 614 | # 615 | # Example: 616 | # bar: '[---=======]' 617 | # infobar: 'info [---=======]' 618 | # barinfo: '[---=======] info' 619 | # off: 'info' 620 | cpu_display="off" 621 | memory_display="off" 622 | battery_display="off" 623 | disk_display="off" 624 | 625 | # Backend Settings 626 | 627 | # Image backend. 628 | # 629 | # Default: 'ascii' 630 | # Values: 'ascii', 'caca', 'chafa', 'jp2a', 'iterm2', 'off', 631 | # 'pot', 'termpix', 'pixterm', 'tycat', 'w3m', 'kitty' 632 | # Flag: --backend 633 | image_backend="ascii" 634 | 635 | # Image Source 636 | # 637 | # Which image or ascii file to display. 638 | # 639 | # Default: 'auto' 640 | # Values: 'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/' 641 | # 'command output (neofetch --ascii "$(fortune | cowsay -W 30)")' 642 | # Flag: --source 643 | # 644 | # NOTE: 'auto' will pick the best image source for whatever image backend is used. 645 | # In ascii mode, distro ascii art will be used and in an image mode, your 646 | # wallpaper will be used. 647 | image_source="${HOME}/.config/neofetch/ascii.txt" 648 | 649 | # Ascii Options 650 | 651 | # Ascii distro 652 | # Which distro's ascii art to display. 653 | # 654 | # Default: 'auto' 655 | # Values: 'auto', 'distro_name' 656 | # Flag: --ascii_distro 657 | # NOTE: AIX, Alpine, Anarchy, Android, Antergos, antiX, "AOSC OS", 658 | # "AOSC OS/Retro", Apricity, ArcoLinux, ArchBox, ARCHlabs, 659 | # ArchStrike, XFerience, ArchMerge, Arch, Artix, Arya, Bedrock, 660 | # Bitrig, BlackArch, BLAG, BlankOn, BlueLight, bonsai, BSD, 661 | # BunsenLabs, Calculate, Carbs, CentOS, Chakra, ChaletOS, 662 | # Chapeau, Chrom*, Cleanjaro, ClearOS, Clear_Linux, Clover, 663 | # Condres, Container_Linux, CRUX, Cucumber, Debian, Deepin, 664 | # DesaOS, Devuan, DracOS, DarkOs, DragonFly, Drauger, Elementary, 665 | # EndeavourOS, Endless, EuroLinux, Exherbo, Fedora, Feren, FreeBSD, 666 | # FreeMiNT, Frugalware, Funtoo, GalliumOS, Garuda, Gentoo, Pentoo, 667 | # gNewSense, GNOME, GNU, GoboLinux, Grombyang, Guix, Haiku, Huayra, 668 | # Hyperbola, janus, Kali, KaOS, KDE_neon, Kibojoe, Kogaion, 669 | # Korora, KSLinux, Kubuntu, LEDE, LFS, Linux_Lite, 670 | # LMDE, Lubuntu, Lunar, macos, Mageia, MagpieOS, Mandriva, 671 | # Manjaro, Maui, Mer, Minix, LinuxMint, MX_Linux, Namib, 672 | # Neptune, NetBSD, Netrunner, Nitrux, NixOS, Nurunner, 673 | # NuTyX, OBRevenge, OpenBSD, openEuler, OpenIndiana, openmamba, 674 | # OpenMandriva, OpenStage, OpenWrt, osmc, Oracle, OS Elbrus, PacBSD, 675 | # Parabola, Pardus, Parrot, Parsix, TrueOS, PCLinuxOS, Peppermint, 676 | # popos, Porteus, PostMarketOS, Proxmox, Puppy, PureOS, Qubes, Radix, 677 | # Raspbian, Reborn_OS, Redstar, Redcore, Redhat, Refracted_Devuan, 678 | # Regata, Rosa, sabotage, Sabayon, Sailfish, SalentOS, Scientific, 679 | # Septor, SereneLinux, SharkLinux, Siduction, Slackware, SliTaz, 680 | # SmartOS, Solus, Source_Mage, Sparky, Star, SteamOS, SunOS, 681 | # openSUSE_Leap, openSUSE_Tumbleweed, openSUSE, SwagArch, Tails, 682 | # Trisquel, Ubuntu-Budgie, Ubuntu-GNOME, Ubuntu-MATE, Ubuntu-Studio, 683 | # Ubuntu, Venom, Void, Obarun, windows10, Windows7, Xubuntu, Zorin, 684 | # and IRIX have ascii logos 685 | # NOTE: Arch, Ubuntu, Redhat, and Dragonfly have 'old' logo variants. 686 | # Use '{distro name}_old' to use the old logos. 687 | # NOTE: Ubuntu has flavor variants. 688 | # Change this to Lubuntu, Kubuntu, Xubuntu, Ubuntu-GNOME, 689 | # Ubuntu-Studio, Ubuntu-Mate or Ubuntu-Budgie to use the flavors. 690 | # NOTE: Arcolinux, Dragonfly, Fedora, Alpine, Arch, Ubuntu, 691 | # CRUX, Debian, Gentoo, FreeBSD, Mac, NixOS, OpenBSD, android, 692 | # Antrix, CentOS, Cleanjaro, ElementaryOS, GUIX, Hyperbola, 693 | # Manjaro, MXLinux, NetBSD, Parabola, POP_OS, PureOS, 694 | # Slackware, SunOS, LinuxLite, OpenSUSE, Raspbian, 695 | # postmarketOS, and Void have a smaller logo variant. 696 | # Use '{distro name}_small' to use the small variants. 697 | ascii_distro="auto" 698 | 699 | # Ascii Colors 700 | # 701 | # Default: 'distro' 702 | # Values: 'distro', 'num' 'num' 'num' 'num' 'num' 'num' 703 | # Flag: --ascii_colors 704 | # 705 | # Example: 706 | # ascii_colors=(distro) - Ascii is colored based on Distro colors. 707 | # ascii_colors=(4 6 1 8 8 6) - Ascii is colored using these colors. 708 | ascii_colors=(1 2 3 4 5 6) 709 | 710 | # Bold ascii logo 711 | # Whether or not to bold the ascii logo. 712 | # 713 | # Default: 'on' 714 | # Values: 'on', 'off' 715 | # Flag: --ascii_bold 716 | ascii_bold="on" 717 | 718 | # Image Options 719 | 720 | # Image loop 721 | # Setting this to on will make neofetch redraw the image constantly until 722 | # Ctrl+C is pressed. This fixes display issues in some terminal emulators. 723 | # 724 | # Default: 'off' 725 | # Values: 'on', 'off' 726 | # Flag: --loop 727 | image_loop="on" 728 | 729 | # Thumbnail directory 730 | # 731 | # Default: '~/.cache/thumbnails/neofetch' 732 | # Values: 'dir' 733 | thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch" 734 | 735 | # Crop mode 736 | # 737 | # Default: 'normal' 738 | # Values: 'normal', 'fit', 'fill' 739 | # Flag: --crop_mode 740 | # 741 | # See this wiki page to learn about the fit and fill options. 742 | # https://github.com/dylanaraps/neofetch/wiki/What-is-Waifu-Crop%3F 743 | crop_mode="normal" 744 | 745 | # Crop offset 746 | # Note: Only affects 'normal' crop mode. 747 | # 748 | # Default: 'center' 749 | # Values: 'northwest', 'north', 'northeast', 'west', 'center' 750 | # 'east', 'southwest', 'south', 'southeast' 751 | # Flag: --crop_offset 752 | crop_offset="center" 753 | 754 | # Image size 755 | # The image is half the terminal width by default. 756 | # 757 | # Default: 'auto' 758 | # Values: 'auto', '00px', '00%', 'none' 759 | # Flags: --image_size 760 | # --size 761 | image_size="auto" 762 | 763 | # Gap between image and text 764 | # 765 | # Default: '3' 766 | # Values: 'num', '-num' 767 | # Flag: --gap 768 | gap=3 769 | 770 | # Image offsets 771 | # Only works with the w3m backend. 772 | # 773 | # Default: '0' 774 | # Values: 'px' 775 | # Flags: --xoffset 776 | # --yoffset 777 | yoffset=0 778 | xoffset=0 779 | 780 | # Image background color 781 | # Only works with the w3m backend. 782 | # 783 | # Default: '' 784 | # Values: 'color', 'blue' 785 | # Flag: --b 786 | -------------------------------------------------------------------------------- /.config/tmuxp/infra.yaml: -------------------------------------------------------------------------------- 1 | session_name: infra 2 | windows: 3 | - focus: 'true' 4 | layout: b545,191x42,0,0,8 5 | options: {} 6 | panes: 7 | - pane 8 | start_directory: /home/michell/Workspace/multidadosti-erp/infra 9 | window_name: zsh 10 | - layout: b546,191x42,0,0,9 11 | options: {} 12 | panes: 13 | - focus: 'true' 14 | shell_command: zsh 15 | start_directory: /home/michell/Workspace/multidadosti-erp/infra 16 | window_name: zsh 17 | -------------------------------------------------------------------------------- /.config/tmuxp/odoo.yml: -------------------------------------------------------------------------------- 1 | session_name: odoo 2 | start_directory: ~/Workspace/multidadosti-erp/odoo 3 | 4 | windows: 5 | # Emptiness will simply open a blank pane, if no shell_command_before. 6 | # All these are equivalent 7 | - window_name: nvim 8 | panes: 9 | - cls 10 | 11 | # an empty string will be treated as a carriage return 12 | - window_name: server 13 | panes: 14 | - cls 15 | 16 | # a pane can have other options but still be blank 17 | - window_name: git 18 | panes: 19 | - cls 20 | -------------------------------------------------------------------------------- /.config/tmuxp/pynocchio.yaml: -------------------------------------------------------------------------------- 1 | session_name: pynocchio 2 | windows: 3 | - focus: 'true' 4 | layout: b541,191x42,0,0,4 5 | options: {} 6 | panes: 7 | - pane 8 | start_directory: /home/michell/Workspace/mstuttgart/pynocchio 9 | window_name: zsh 10 | - layout: b542,191x42,0,0,5 11 | options: {} 12 | panes: 13 | - focus: 'true' 14 | shell_command: zsh 15 | start_directory: /home/michell/Workspace/mstuttgart/pynocchio 16 | window_name: zsh 17 | -------------------------------------------------------------------------------- /.config/yadm/bootstrap: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -eu 4 | 5 | # Variables for dotfiles repo. 6 | GIT_USER="mstuttgart" 7 | GIT_REPO="dotfiles" 8 | 9 | # colors to log 10 | RED='\e[31m' 11 | YELLOW='\e[33m' 12 | GREEN='\e[32m' 13 | BOLDBLUE="\e[1;34m" 14 | BOLDGREEN="\e[1;32m" 15 | ENDCOLOR="\e[0m" 16 | 17 | # log functions 18 | function echo_nl { 19 | echo "" 20 | } 21 | 22 | function echo_print { 23 | echo -e "${BOLDBLUE}=> $1 ${ENDCOLOR}" 24 | } 25 | 26 | function echo_info { 27 | echo -e "${BOLDGREEN}[info] $1 ${ENDCOLOR}" 28 | } 29 | 30 | function echo_ok { 31 | echo -e "${GREEN}[ok] $1 ✔${ENDCOLOR}" 32 | } 33 | 34 | function echo_warning { 35 | echo -e "${YELLOW}[alert] $1 ${ENDCOLOR}" 36 | } 37 | 38 | function echo_error { 39 | echo -e "${RED}[error] ✖ $1 ✖ ${ENDCOLOR}" 40 | } 41 | 42 | function check_return_code { 43 | 44 | # The $1 is $?, the result of last command 45 | if [ "$1" -eq 0 ]; then 46 | echo_ok "$2" 47 | else 48 | echo_error "$2" 49 | exit 1 50 | fi 51 | 52 | echo_nl 53 | } 54 | 55 | function print_header { 56 | clear 57 | echo -e "${BOLDBLUE} 58 | 59 | ██████╗ ██████╗ ████████╗███████╗██╗██╗ ███████╗███████╗ 60 | ██╔══██╗██╔═══██╗╚══██╔══╝██╔════╝██║██║ ██╔════╝██╔════╝ 61 | ██║ ██║██║ ██║ ██║ █████╗ ██║██║ █████╗ ███████╗ 62 | ██║ ██║██║ ██║ ██║ ██╔══╝ ██║██║ ██╔══╝ ╚════██║ 63 | ██████╔╝╚██████╔╝ ██║ ██║ ██║███████╗███████╗███████║ 64 | ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝ 65 | 66 | ${YELLOW}BOOTSTRAP SCRiPT${BOLDGREEN} 67 | 68 | " >&1 69 | } 70 | 71 | function print_footer { 72 | echo -e "${BOLDGREEN} 73 | Bootstrap of dotfiles completed!${YELLOW} 74 | Log out${BOLDBLUE} and${YELLOW} login${BOLDBLUE} to apply changes!${ENDCOLOR} 75 | 76 | " >&1 77 | } 78 | 79 | function update_distro { 80 | echo_info "Update System" 81 | sudo apt update 82 | sudo apt upgrade -y 83 | sudo apt autoremove -y 84 | } 85 | 86 | function update_yadm_repo { 87 | echo_print "Updating the yadm repo origin URL" 88 | yadm remote set-url origin "git@github.com:${GIT_USER}/${GIT_REPO}.git" 89 | echo_ok "origin set" 90 | } 91 | 92 | function install_docker { 93 | 94 | echo_print "Install docker" 95 | 96 | # Install asdf version manager 97 | if [ ! -f "/usr/bin/docker" ]; then 98 | sudo apt install ca-certificates curl -y 99 | 100 | # Add Docker's official GPG key: 101 | sudo install -m 0755 -d /etc/apt/keyrings 102 | sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc 103 | sudo chmod a+r /etc/apt/keyrings/docker.asc 104 | 105 | # Add the repository to Apt sources: 106 | echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ 107 | $(. /etc/os-release && echo "$UBUNTU_CODENAME") stable" | 108 | sudo tee /etc/apt/sources.list.d/docker.list >/dev/null 109 | 110 | sudo apt-get update 111 | sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y 112 | 113 | # Avoid use sudo do run docker 114 | sudo usermod -aG docker "$USER" 115 | 116 | # Habilita e inicia o servidor do docker 117 | sudo systemctl enable docker 118 | sudo systemctl start docker 119 | 120 | echo_print "Docker installed. Please reboot to use it" 121 | fi 122 | 123 | } 124 | 125 | function install_nvim { 126 | 127 | wget https://github.com/neovim/neovim/releases/download/v0.10.2/nvim.appimage 128 | chmod +x nvim.appimage 129 | mv nvim.appimage nvim 130 | sudo mv nvim /usr/bin 131 | 132 | NVIM_PKG=( 133 | "ripgrep" 134 | "python3-pip" 135 | "gcc" 136 | "git" 137 | "python3-dev" 138 | "ncurses-term" 139 | "fd-find" 140 | "fzf" 141 | "xclip" 142 | ) 143 | 144 | for app in "${NVIM_PKG[@]}"; do 145 | 146 | echo_info "-----------------------------------------------" 147 | echo_print "Installing $app" 148 | 149 | # Install app 150 | sudo apt install "$app" -y 151 | 152 | # The $? get result of last command 153 | check_return_code $? "$app" 154 | 155 | done 156 | 157 | echo_ok "nvim installed" 158 | } 159 | 160 | function install_i3wm { 161 | 162 | i3wm_pkg=( 163 | "acpi" 164 | "arandr" 165 | "autorandr" 166 | #"arc-gtk-theme-eos" 167 | #"archlinux-xdg-menu" 168 | #"awesome-terminal-fonts" 169 | #"dex" 170 | "dmenu" 171 | "dunst" 172 | #"eos-settings-i3wm" 173 | #"endeavouros-xfce4-terminal-colors" 174 | #"eos-lightdm-slick-theme" 175 | #"eos-qogir-icons" 176 | "galculator" 177 | "gsimplecal" 178 | # "gvfs" 179 | # "gvfs-afc" 180 | # "gvfs-gphoto2" 181 | # "gvfs-mtp" 182 | # "gvfs-nfs" 183 | # "gvfs-smb" 184 | "i3-wm" 185 | "i3lock" 186 | "jq" 187 | # "lightdm" 188 | # "lightdm-slick-greeter" 189 | # "nwg-look" 190 | "mpv" 191 | "lxappearance" 192 | # "network-manager-applet" 193 | "neofetch" 194 | "nitrogen" 195 | "numlockx" 196 | "picom" 197 | "playerctl" 198 | "polybar" 199 | # "polkit-gnome" 200 | "rofi" 201 | # "scrot" 202 | "sysstat" 203 | "thunar" 204 | "thunar-archive-plugin" 205 | "thunar-volman" 206 | "tumbler" 207 | "unzip" 208 | "viewnior" 209 | "xarchiver" 210 | "xbindkeys" 211 | "xdg-user-dirs-gtk" 212 | "xed" 213 | # "xorg-xbacklight" 214 | # "xorg-xdpyinfo" 215 | "zip" 216 | #"ttf-jetbrains-mono-nerd" 217 | #"ttf-sourcecodepro-nerd" 218 | ) 219 | echo 220 | 221 | for app in "${i3wm_pkg[@]}"; do 222 | 223 | echo_info "-----------------------------------------------" 224 | echo_print "Installing $app" 225 | 226 | # Install app 227 | sudo apt install "$app" -y 228 | 229 | # The $? get result of last command 230 | check_return_code $? "$app" 231 | 232 | done 233 | 234 | } 235 | 236 | function install_zsh { 237 | echo_print "Install and configure ZSH" 238 | 239 | zsh_pkg=( 240 | zsh 241 | curl 242 | #starship 243 | ) 244 | 245 | echo 246 | 247 | for app in "${zsh_pkg[@]}"; do 248 | echo_print "Installing $app" 249 | 250 | # Install app 251 | sudo apt install "$app" -y 252 | 253 | # The $? get result of last command 254 | check_return_code $? "$app" 255 | 256 | done 257 | 258 | #curl -sS https://starship.rs/install.sh | sh 259 | 260 | if [ ! -d "$HOME/.zplug" ]; then 261 | echo_info "Install zplug" 262 | curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh 263 | fi 264 | 265 | if [ "$(basename "$SHELL")" != 'zsh' ]; then 266 | echo_info "Change Shell to Zsh" 267 | chsh -s /bin/zsh 268 | fi 269 | 270 | echo_nl 271 | } 272 | 273 | function install_packages { 274 | 275 | APT_PACKAGES=( 276 | # cli apps 277 | "bat" 278 | "btop" 279 | "eza" 280 | "net-tools" 281 | "p7zip" 282 | "pass" 283 | "pwgen" 284 | "unrar" 285 | "wget" 286 | ca-certificates 287 | 288 | 289 | # Programming 290 | "alacritty" 291 | "cmake" 292 | "gcc" 293 | "git" 294 | "make" 295 | build-essential 296 | libssl-dev 297 | zlib1g-dev 298 | libbz2-dev 299 | libreadline-dev 300 | libsqlite3-dev 301 | curl 302 | git 303 | libncursesw5-dev 304 | xz-utils 305 | tk-dev 306 | libxml2-dev 307 | libxmlsec1-dev 308 | libffi-dev 309 | liblzma-dev 310 | "python3-dev" 311 | "python3-pip" 312 | "python3-venv" 313 | "pipx" 314 | "tig" 315 | "tmux" 316 | 317 | # apps 318 | "filezilla" 319 | "firefox" 320 | "flameshot" 321 | "foliate" 322 | "font-manager" 323 | "gimp" 324 | "gpick" 325 | "meld" 326 | "poedit" 327 | "spotify-client" 328 | "transmission-gtk" 329 | ) 330 | 331 | echo_info "Install packages" 332 | 333 | for app in "${APT_PACKAGES[@]}"; do 334 | 335 | echo_info "-----------------------------------------------" 336 | echo_print "Installing $app" 337 | 338 | # Install app 339 | sudo apt install "$app" -y 340 | 341 | # The $? get result of last command 342 | check_return_code $? "$app" 343 | 344 | done 345 | 346 | FLATPACK_PACKAGES=( 347 | "com.github.IsmaelMartinez.teams_for_linux" 348 | "com.getpostman.Postman" 349 | ) 350 | 351 | for app in "${AURPackages[@]}"; do 352 | 353 | echo_info "-----------------------------------------------" 354 | echo_print "Installing $app" 355 | 356 | # Install app 357 | flatpak install flathub "$app" 358 | 359 | # The $? get result of last command 360 | check_return_code $? "$app" 361 | 362 | done 363 | 364 | echo_info "-----------------------------------------------" 365 | echo_print "Installing $app" 366 | 367 | echo_info "-----------------------------------------------" 368 | echo_print "Installing Docker" 369 | 370 | # install tmux plugin manager 371 | if [ ! -d "$HOME/.tmux/plugins/tpm" ]; then 372 | git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm 373 | fi 374 | 375 | # Install asdf version manager 376 | if [ ! -d "$HOME/.asdf" ]; then 377 | git clone https://github.com/asdf-vm/asdf.git "$HOME/.asdf" --branch v0.13.1 378 | fi 379 | 380 | # Install python and nodejs plugins 381 | ./.asdf/bin/asdf plugin-add python 382 | ./.asdf/bin/asdf plugin-add nodejs 383 | 384 | # Install rust 385 | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh 386 | 387 | } 388 | 389 | function install_fonts { 390 | echo_print "Download and Install Nerd Fonts" 391 | 392 | TEMP_DIR="/tmp/nerd-fonts" 393 | 394 | if [ ! -d /tmp/nerd-fonts ]; then 395 | echo_info "Clone Nerd Font Repositorie" 396 | git clone --depth 1 git@github.com:ryanoasis/nerd-fonts.git "$TEMP_DIR" 397 | fi 398 | 399 | cd "$TEMP_DIR" 400 | 401 | echo_info "Install Font JetBrainsMono" 402 | ./install.sh -q JetBrainsMono 403 | 404 | echo_info "Install Font SourceCodePro" 405 | ./install.sh -q SourceCodePro 406 | 407 | echo_info "Update font cache" 408 | fc-cache -f -v >/dev/null 2>&1 409 | 410 | } 411 | 412 | # Because Git submodule commands cannot operate without a work tree, they must 413 | # be run from within $HOME (assuming this is the root of your dotfiles) 414 | cd "$HOME" || exit 415 | 416 | print_header 417 | 418 | PS3="Select action please: " 419 | 420 | items=("Update System" "Install Packages" "Install Neovim" "Install Fonts" "Install ZSH" "Install Docker") 421 | 422 | while true; do 423 | select item in "${items[@]}" Quit; do 424 | case $REPLY in 425 | 1) 426 | echo "Selected item #$item" 427 | update_distro 428 | echo 429 | break 430 | ;; 431 | 2) 432 | echo "Selected item #$item" 433 | install_packages 434 | echo 435 | break 436 | ;; 437 | 3) 438 | echo "Selected item #$item" 439 | install_nvim 440 | echo 441 | break 442 | ;; 443 | 4) 444 | echo "Selected item #$item" 445 | install_fonts 446 | echo 447 | break 448 | ;; 449 | 5) 450 | echo "Selected item #$item" 451 | install_zsh 452 | echo 453 | break 454 | ;; 455 | 6) 456 | echo "Selected item #$item" 457 | install_docker 458 | echo 459 | break 460 | ;; 461 | $((${#items[@]} + 1))) 462 | echo "We're done!" 463 | print_footer 464 | break 2 465 | ;; 466 | *) 467 | echo "Ooops - unknown choice $REPLY" 468 | break 469 | ;; 470 | esac 471 | done 472 | done 473 | 474 | -------------------------------------------------------------------------------- /.github/README.md: -------------------------------------------------------------------------------- 1 |

2 | 3 | 4 | 5 |

6 | 7 | ## About 8 | 9 | This repository serves as my way to help me setup and maintain my Linux Mint. 10 | 11 | ![Screenshot from 2024-11-03 14-31-57](https://github.com/user-attachments/assets/98905a99-dd9e-42ec-99a5-9ae0f5ecbdb4) 12 | 13 | - OS: [Linux Mint 22 Cinnamon](https://linuxmint.com/) 14 | - Shell: [zsh](https://github.com/zsh-users/zsh) 15 | - [pure](https://github.com/sindresorhus/pure) : Minimalistic, powerful and extremely customizable Zsh prompt 16 | - [zplug](https://github.com/zplug/zplug) : A next-generation plugin manager for zsh 17 | - [zsh-syntax-highlighting](https://github.com/zsh-users/zsh-syntax-highlighting) : Fish shell like syntax highlighting for Zsh. 18 | - [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions) : Fish-like autosuggestions for zsh 19 | - [zsh-z](https://github.com/agkozak/zsh-z) : A native Zsh port of z.sh with added features. 20 | - [zsh-autopair](https://github.com/hlissner/zsh-autopair) : Auto-close and delete matching delimiters in zsh 21 | - [asdf](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/asdf) : *Oh-My-Zsh* asdf plugin 22 | - [fzf](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/fzf) : *Oh-My-Zsh* fzf plugin 23 | - [virtualenvwrapper](https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/virtualenvwrapper) : *Oh-My-Zsh* python virtualenvwrapper plugin 24 | - Terminal: [alacritty](https://github.com/alacritty/alacritty) 25 | - [tig](https://github.com/jonas/tig) : Text-mode interface for git 26 | - [bat](https://github.com/sharkdp/bat) : A cat(1) clone with wings 27 | - [fzf](https://github.com/junegunn/fzf) : A command-line fuzzy finder 28 | - [eza](https://github.com/eza-community/eza) : A modern replacement for ‘ls’ 29 | - [btop](https://github.com/aristocratos/btop) : A monitor of resources 30 | - Editor: [neovim](https://neovim.io/) -- check my configuration [here](https://github.com/mstuttgart/nvim) 31 | 32 | ## Setup 33 | 34 | > [!CAUTION] 35 | > Settings applied by this repository are very personal, and definitely not suite everyones needs. Don’t blindly use my settings unless you know what that entails. Use at your own risk! 36 | 37 | My dotfiles is managed by [yadm](https://yadm.io), a dotfiles manager. This makes it simple to set up a new computer and keep updates my config files. I order to set up a new system with these dotfiles, do the following: 38 | 39 | ```sh 40 | sudo apt install yadm git -y 41 | ``` 42 | 43 | To others systems install instructions, see [here](https://yadm.io/docs/install). 44 | 45 | ### Get the dots 46 | 47 | Use `yadm` to clone this repo and set up your enviromnent. 48 | 49 | ```sh 50 | yadm clone git@github.com:mstuttgart/dotfiles.git --no-bootstrap 51 | ``` 52 | 53 | The `clone` and `pull` command may result in warnings because of pre-existing dotfiles. Overwrite the existing files with commands below. 54 | 55 | ```sh 56 | yadm reset --hard origin/linux-mint-22 57 | 58 | # download nvim 59 | git clone git@github.com:mstuttgart/nvim.git .config/nvim 60 | ``` 61 | 62 | Execute the follow command to install all dependencies and apps: 63 | 64 | ```sh 65 | yadm bootstrap 66 | ``` 67 | -------------------------------------------------------------------------------- /.github/dotfiles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mstuttgart/dotfiles/0152a0c8f4b471ba233f3e7ea9230a7f3c2a21bb/.github/dotfiles.png -------------------------------------------------------------------------------- /.github/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mstuttgart/dotfiles/0152a0c8f4b471ba233f3e7ea9230a7f3c2a21bb/.github/screenshot.png -------------------------------------------------------------------------------- /.github/screenshot_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mstuttgart/dotfiles/0152a0c8f4b471ba233f3e7ea9230a7f3c2a21bb/.github/screenshot_2.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # .gitignore 2 | ## already tracked 3 | .zshrc 4 | .zshenv 5 | .gitconfig 6 | 7 | ## compiled dynamic langauages 8 | *.pyc 9 | *.zwc 10 | 11 | *.log 12 | 13 | *.idea 14 | *.iml 15 | *.code-workspace 16 | 17 | # You may want to customise this file depending on your Operating System 18 | # and the editor that you use. 19 | # 20 | # We recommend that you use a Global Gitignore for files that are not related 21 | # to the project. (https://help.github.com/articles/ignoring-files/#create-a-global-gitignore) 22 | 23 | # OS 24 | # 25 | # Ref: https://github.com/github/gitignore/blob/master/Global/macOS.gitignore 26 | # General 27 | .DS_Store 28 | .AppleDouble 29 | .LSOverride 30 | 31 | # Icon must end with two \r 32 | Icon 33 | 34 | 35 | # Thumbnails 36 | ._* 37 | 38 | # Files that might appear in the root of a volume 39 | .DocumentRevisions-V100 40 | .fseventsd 41 | .Spotlight-V100 42 | .TemporaryItems 43 | .Trashes 44 | .VolumeIcon.icns 45 | .com.apple.timemachine.donotpresent 46 | 47 | # Directories potentially created on remote AFP share 48 | .AppleDB 49 | .AppleDesktop 50 | Network Trash Folder 51 | Temporary Items 52 | .apdisk 53 | 54 | # Ref: https://github.com/github/gitignore/blob/master/Global/Windows.gitignore 55 | # Windows thumbnail cache files 56 | Thumbs.db 57 | Thumbs.db:encryptable 58 | ehthumbs.db 59 | ehthumbs_vista.db 60 | 61 | # Dump file 62 | *.stackdump 63 | 64 | # Folder config file 65 | [Dd]esktop.ini 66 | 67 | # Recycle Bin used on file shares 68 | $RECYCLE.BIN/ 69 | 70 | # Windows Installer files 71 | *.cab 72 | *.msi 73 | *.msix 74 | *.msm 75 | *.msp 76 | 77 | # Windows shortcuts 78 | *.lnk 79 | 80 | # Ref: https://github.com/github/gitignore/blob/master/Global/Linux.gitignore 81 | *~ 82 | 83 | # temporary files which can be created if a process still has a handle open of a deleted file 84 | .fuse_hidden* 85 | 86 | # KDE directory preferences 87 | .directory 88 | 89 | # Linux trash folder which might appear on any partition or disk 90 | .Trash-* 91 | 92 | # .nfs files are created when an open file is removed but is still being accessed 93 | .nfs* 94 | 95 | # Archives 96 | # https://github.com/github/gitignore/blob/master/Global/Archives.gitignore 97 | # It's better to unpack these files and commit the raw source because 98 | # git has its own built in compression methods. 99 | *.7z 100 | *.jar 101 | *.rar 102 | *.zip 103 | *.gz 104 | *.gzip 105 | *.tgz 106 | *.bzip 107 | *.bzip2 108 | *.bz2 109 | *.xz 110 | *.lzma 111 | *.cab 112 | *.xar 113 | *.zst 114 | 115 | # Packing-only formats 116 | *.iso 117 | *.tar 118 | 119 | # Package management formats 120 | *.dmg 121 | *.xpi 122 | *.gem 123 | *.egg 124 | *.deb 125 | *.rpm 126 | *.msi 127 | *.msm 128 | *.msp 129 | *.txz 130 | 131 | # Editors 132 | # 133 | # Ref: https://github.com/github/gitignore/blob/master/Global 134 | # Ref: https://github.com/github/gitignore/blob/master/Global/JetBrains.gitignore 135 | # Ref: https://github.com/github/gitignore/blob/master/Global/VisualStudioCode.gitignore 136 | .idea 137 | 138 | *.swp 139 | 140 | # Homedir 141 | Videos/ 142 | Pictures/ 143 | Downloads/ 144 | IdeaProjects/ 145 | Templates/ 146 | Dropbox/ 147 | Desktop/ 148 | Documents/ 149 | .cache/ 150 | caches/ 151 | .zoom/ 152 | .zi/ 153 | .vscode-oss/ 154 | .vim/ 155 | .thunderbird/ 156 | .sylpheed-2.0/ 157 | .steam* 158 | .ssh/ 159 | .pki/ 160 | .pkg-cache/ 161 | .spamassassin/ 162 | .phoronix-test-suite/ 163 | .parallel/ 164 | .nvm/ 165 | .npm/ 166 | .node/ 167 | .mozilla/ 168 | .minikube/ 169 | .m2/repository/ 170 | *history* 171 | .kde4/ 172 | .jdks/ 173 | .java/ 174 | .hyper_plugins/ 175 | .gradle/ 176 | .gnupg/ 177 | .electron-gyp/ 178 | .dropbox*/ 179 | .claws-mail/ 180 | .cargo/ 181 | .asdf/ 182 | .adobe-reader*/ 183 | 184 | ## .config abusers 185 | .config/opera/ 186 | .config/evolution/ 187 | .config/discord/ 188 | .config/hexchat/ 189 | .config/zconvey/ 190 | .config/pulse/ 191 | .config/gtk-*/ 192 | .config/ranger/ 193 | .config/ibus/ 194 | .config/chromium/ 195 | .config/BraveSoftware/ 196 | .config/filezilla/ 197 | .config/akonadi/ 198 | .config/Slack/ 199 | .config/Signal/ 200 | .config/Microsoft/ 201 | .config/JetBrains/ 202 | .config/Hyper/ 203 | .config/FontBase/ 204 | .config/Code - OSS/ 205 | .config/Bitwarden/ 206 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule ".config/nvim"] 2 | path = .config/nvim 3 | url = git@github.com:mstuttgart/nvim.git 4 | [submodule "/home/michell/.config/alacritty/themes"] 5 | path = /home/michell/.config/alacritty/themes 6 | url = git@github.com:mstuttgart/alacritty-theme.git 7 | -------------------------------------------------------------------------------- /.hidden: -------------------------------------------------------------------------------- 1 | snap 2 | VirtualBox VMs 3 | ProgramasRFB 4 | Applications 5 | Postman 6 | docker 7 | mechvibes_custom 8 | ProgramasRFB 9 | LICENSE 10 | -------------------------------------------------------------------------------- /.local/bin/atty: -------------------------------------------------------------------------------- 1 | /home/michell/.local/share/pipx/venvs/atty/bin/atty -------------------------------------------------------------------------------- /.local/bin/backupdot: -------------------------------------------------------------------------------- 1 | #!/usr/bin/bash 2 | # 3 | notify-send "📦 Dotfiles Sync" "Starting dotfiles repository sync..." 4 | 5 | # change to home folder 6 | cd "$HOME" || exit 7 | 8 | # git stages modification and deletions, without new files 9 | yadm add -u 10 | 11 | # Make a backup commit 12 | yadm commit -m "Daily backup: $(date)" 13 | 14 | # Get remote updates 15 | yadm down 16 | 17 | # make a push 18 | yadm up 19 | 20 | notify-send "📦 Dotfiles Sync" "Dotfiles sync complete." 21 | -------------------------------------------------------------------------------- /.local/bin/colorpanes: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Author: GekkoP 4 | # Source: http://linuxbbq.org/bbs/viewtopic.php?f=4&t=1656#p33189 5 | 6 | f=3 b=4 7 | for j in f b; do 8 | for i in {0..7}; do 9 | printf -v $j$i %b "\e[${!j}${i}m" 10 | done 11 | done 12 | d=$'\e[1m' 13 | t=$'\e[0m' 14 | v=$'\e[7m' 15 | 16 | 17 | cat << EOF 18 | 19 | $f0████$d▄$t $f1████$d▄$t $f2████$d▄$t $f3████$d▄$t $f4████$d▄$t $f5████$d▄$t $f6████$d▄$t $f7████$d▄$t 20 | $f0████$d█$t $f1████$d█$t $f2████$d█$t $f3████$d█$t $f4████$d█$t $f5████$d█$t $f6████$d█$t $f7████$d█$t 21 | $f0████$d█$t $f1████$d█$t $f2████$d█$t $f3████$d█$t $f4████$d█$t $f5████$d█$t $f6████$d█$t $f7████$d█$t 22 | $d$f0 ▀▀▀▀ $d$f1 ▀▀▀▀ $f2▀▀▀▀ $f3▀▀▀▀ $f4▀▀▀▀ $f5▀▀▀▀ $f6▀▀▀▀ $f7▀▀▀▀$t 23 | 24 | EOF 25 | -------------------------------------------------------------------------------- /.local/bin/colortest: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Daniel Crisman's ANSI color chart script from 4 | # The Bash Prompt HOWTO: 6.1. Colours 5 | # http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html 6 | # 7 | # This function echoes a bunch of color codes to the 8 | # terminal to demonstrate what's available. Each 9 | # line is the color code of one forground color, 10 | # out of 17 (default + 16 escapes), followed by a 11 | # test use of that color on all nine background 12 | # colors (default + 8 escapes). 13 | 14 | T='•••' # The text for the color test 15 | 16 | echo -e "\n def 40m 41m 42m 43m 44m 45m 46m 47m"; 17 | 18 | for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \ 19 | '1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \ 20 | ' 36m' '1;36m' ' 37m' '1;37m'; 21 | 22 | do FG=${FGs// /} 23 | echo -en " $FGs \033[$FG $T " 24 | 25 | for BG in 40m 41m 42m 43m 44m 45m 46m 47m; 26 | do echo -en "$EINS \033[$FG\033[$BG $T \033[0m"; 27 | done 28 | echo; 29 | done 30 | echo 31 | -------------------------------------------------------------------------------- /.local/bin/colorview: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Original: http://frexx.de/xterm-256-notes/ 4 | # http://frexx.de/xterm-256-notes/data/colortable16.sh 5 | # Modified by Aaron Griffin 6 | # and further by Kazuo Teramoto 7 | 8 | FGNAMES=(' black ' ' red ' ' green ' ' yellow' ' blue ' 'magenta' ' cyan ' ' white ') 9 | BGNAMES=('DFT' 'BLK' 'RED' 'GRN' 'YEL' 'BLU' 'MAG' 'CYN' 'WHT') 10 | 11 | echo " ┌──────────────────────────────────────────────────────────────────────────┐" 12 | for b in {0..8}; do 13 | ((b>0)) && bg=$((b+39)) 14 | 15 | echo -en "\033[0m ${BGNAMES[b]} │ " 16 | 17 | for f in {0..7}; do 18 | echo -en "\033[${bg}m\033[$((f+30))m ${FGNAMES[f]} " 19 | done 20 | 21 | echo -en "\033[0m │" 22 | echo -en "\033[0m\n\033[0m │ " 23 | 24 | for f in {0..7}; do 25 | echo -en "\033[${bg}m\033[1;$((f+30))m ${FGNAMES[f]} " 26 | done 27 | 28 | echo -en "\033[0m │" 29 | echo -e "\033[0m" 30 | 31 | ((b<8)) && 32 | echo " ├──────────────────────────────────────────────────────────────────────────┤" 33 | done 34 | echo " └──────────────────────────────────────────────────────────────────────────┘" 35 | 36 | -------------------------------------------------------------------------------- /.local/bin/prlink: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Show Github PR link in terminal 4 | # 5 | 6 | if [ "$(git rev-parse --is-inside-work-tree 2>/dev/null)" ]; then 7 | 8 | branch_name="$(git rev-parse --abbrev-ref HEAD)" 9 | 10 | repo_url="$(git remote get-url --push origin | sed -Ee 's#(git@|git://)#https://#' -e 's@com:@com/@' -e 's%\.git$%%' -e 's%\.git$%%' | awk '/github/')" 11 | 12 | # Print Pull Request create link 13 | echo "$repo_url/compare/$branch_name?expand=1" 14 | 15 | else 16 | echo "Not is a git repository" 17 | fi 18 | -------------------------------------------------------------------------------- /.local/bin/tmuxp: -------------------------------------------------------------------------------- 1 | /home/michell/.local/share/pipx/venvs/tmuxp/bin/tmuxp -------------------------------------------------------------------------------- /.tmux.conf: -------------------------------------------------------------------------------- 1 | # vim: ft=tmux 2 | # fix terminal colors 3 | set -g default-terminal "alacritty" 4 | set -ag terminal-overrides ",alacritty:RGB" 5 | 6 | # set -g default-terminal "screen-256color" 7 | # set -ga terminal-overrides ",xterm-256color:RGB" 8 | 9 | # set -g default-terminal "${TERM}" 10 | 11 | # Enable mouse control (clickable windows, panes, resizable panes) 12 | set -g mouse on 13 | 14 | # change prefix 15 | unbind C-b 16 | set -g prefix C-Space 17 | bind C-Space send-prefix 18 | 19 | # switch panes using Alt-arrow without prefix 20 | bind -n M-Left select-pane -L 21 | bind -n M-Right select-pane -R 22 | bind -n M-Up select-pane -U 23 | bind -n M-Down select-pane -D 24 | 25 | # split panes using | and - 26 | bind | split-window -h 27 | bind - split-window -v 28 | unbind '"' 29 | unbind % 30 | 31 | # restore clean screen 32 | # bind C-l send-keys 'C-l' 33 | 34 | # disable status bar 35 | bind-key x set -g status off 36 | bind-key c-x set -g status on 37 | 38 | # active focus-events (when file changes on disk) 39 | # set -g focus-events on 40 | 41 | # Plugins settings 42 | # ---------------------------------------------- 43 | 44 | # tmux pluguin manager 45 | set -g @plugin 'tmux-plugins/tpm' 46 | 47 | # tmux sane defaults 48 | set -g @plugin 'tmux-plugins/tmux-sensible' 49 | 50 | # enables copying highlighted text to system clipboard 51 | set -g @plugin 'tmux-plugins/tmux-yank' 52 | 53 | # ------------------------------------------ 54 | 55 | # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) 56 | run "${HOME}/.tmux/plugins/tpm/tpm" 57 | 58 | # ----------------------------------------- 59 | # Everforest theme 60 | # 61 | # Basic status bar colors 62 | # set -g status-fg "#eee8d5" 63 | # set -g status-bg "#3D484D" 64 | # 65 | # # Left side of status bar 66 | # set -g status-left-length "100" 67 | # set -g status-left-style NONE 68 | # set -g status-left "#[fg=#3D484D,bg=#eee8d5,bold] #S #[fg=#eee8d5,bg=#A7C080,nobold]#[fg=#3D484D,bg=#A7C080] #(whoami) #[fg=#A7C080,bg=#9DA9A0]#[fg=#3D484D,bg=#9DA9A0] #I:#P #[fg=#9DA9A0,bg=#3D484D,nobold]" 69 | # 70 | # # Right side of status bar 71 | # set -g status-right-length "100" 72 | # set -g status-right-style NONE 73 | # set -g status-right "#[fg=#9DA9A0,bg=#3D484D]#[fg=#3D484D,bg=#9DA9A0] %H:%M:%S #[fg=colour3,bg=#9DA9A0]#[fg=#3D484D,bg=colour3] %d-%b-%y #[fg=#eee8d5,bg=colour3]#[fg=colour0,bg=#eee8d5,bold] #H " 74 | # 75 | # # Window status 76 | # set -g window-status-format "#[fg=#9DA9A0,bg=#3D484D] #I:#W#F " 77 | # set -g window-status-current-format "#[fg=#3D484D,bg=#A7C080] #I:#W#F " 78 | # 79 | # # Window separator 80 | # set -g window-status-separator "" 81 | # setw -g window-status-style "NONE,fg=#9DA9A0,bg=#3D484D" 82 | # 83 | # # Window status alignment 84 | # set -g status-justify centre 85 | # 86 | # # Clock mode 87 | # set -g clock-mode-colour colour100 88 | # set -g clock-mode-style 24 89 | 90 | # ----------------------------------------- 91 | # Ayu theme 92 | # 93 | # Basic status bar colors 94 | # set -g status-fg "#CBCCC6" 95 | # set -g status-bg "#1f2430" 96 | # 97 | # # Left side of status bar 98 | # set -g status-left-length "100" 99 | # set -g status-left-style NONE 100 | # set -g status-left "#[fg=#e4e4e4,bg=#707A8C,bold] #S #[fg=#707A8C,bg=#bae673,nobold]#[fg=#1f2430,bg=#bae673] #(whoami) #[fg=#bae673,bg=#D4BFFF]#[fg=#1f2430,bg=#D4BFFF] #I:#P #[fg=#D4BFFF,bg=#1f2430,nobold]" 101 | # 102 | # # Right side of status bar 103 | # set -g status-right-length "100" 104 | # set -g status-right-style NONE 105 | # set -g status-right "#[fg=#D4BFFF,bg=#1f2430]#[fg=#1f2430,bg=#D4BFFF] %H:%M:%S #[fg=#fdcc60,bg=#D4BFFF]#[fg=#1f2430,bg=#fdcc60] %d-%b-%y #[fg=#707A8C,bg=#fdcc60]#[fg=#e4e4e4,bg=#707A8C, bold] #H " 106 | # 107 | # # Window status 108 | # set -g window-status-format "#[fg=#cbccc6,bg=#1f2430] #I:#W#F " 109 | # set -g window-status-current-format "#[fg=#1f2430,bg=#bae673] #I:#W#F " 110 | # 111 | # # Window separator 112 | # set -g window-status-separator "" 113 | # setw -g window-status-style "NONE,fg=#D4BFFF,bg=#1f2430" 114 | # 115 | # # Window status alignment 116 | # set -g status-justify centre 117 | # 118 | # # Clock mode 119 | # set -g clock-mode-colour colour100 120 | # set -g clock-mode-style 24 121 | # 122 | 123 | # ----------------------------------------- 124 | # # Basid theme (ayu) 125 | # # 126 | # # Basic status bar colors 127 | # set -g status-fg "#CBCCC6" 128 | # set -g status-bg "#1f2430" 129 | # 130 | # # Left side of status bar 131 | # set -g status-left-length "100" 132 | # set -g status-left-style NONE 133 | # set -g status-left "" 134 | # 135 | # # Right side of status bar 136 | # set -g status-right-length "100" 137 | # set -g status-right-style NONE 138 | # set -g status-right "" 139 | # 140 | # # Window status 141 | # set -g window-status-format "#[fg=#cbccc6,bg=#242936] #I:#W#F " 142 | # set -g window-status-current-format "#[fg=#242936,bg=#4cbf99, bold] #I:#W#F " 143 | # 144 | # # Window separator 145 | # set -g window-status-separator "┆" 146 | # 147 | # # Window status alignment 148 | # set -g status-justify centre 149 | 150 | # ----------------------------------------- 151 | # Basid theme (everforest) 152 | # 153 | # Basic status bar colors 154 | set -g status-fg "#eee8d5" 155 | set -g status-bg "#3D484D" 156 | 157 | # Left side of status bar 158 | set -g status-left-length "100" 159 | set -g status-left-style NONE 160 | set -g status-left "" 161 | 162 | # Right side of status bar 163 | set -g status-right-length "100" 164 | set -g status-right-style NONE 165 | set -g status-right "" 166 | 167 | # Window status 168 | set -g window-status-format "#[fg=#eee8d5,bg=#3D484D] #I:#W#F " 169 | set -g window-status-current-format "#[fg=#3D484D,bg=#A7C080, bold] #I:#W#F " 170 | 171 | # Window separator 172 | set -g window-status-separator "┆" 173 | 174 | # Window status alignment 175 | set -g status-justify centre 176 | 177 | 178 | -------------------------------------------------------------------------------- /.zsh_aliases: -------------------------------------------------------------------------------- 1 | # General use aliases 2 | # 3 | alias cp="cp -iv" 4 | alias mkdir="mkdir -pv" 5 | alias mv="mv -iv" 6 | alias rm="rm -rf --" 7 | 8 | # eza aliases 9 | alias ls="eza --color=auto --icons" 10 | alias la="eza -la --color=auto --icons" 11 | alias ll="eza -alh --color=auto --icons" 12 | alias lt="eza -a --tree --color=auto --icons" # show tree in directory 13 | 14 | # colorize grep output (good for log files) 15 | alias grep="grep --color=auto" 16 | 17 | # ps aux 18 | alias pgrep="ps aux | grep" 19 | 20 | # system aliases 21 | alias aptu="sudo apt update; sudo apt upgrade -y" 22 | alias aptr="sudo apt remove" 23 | alias apti="sudo apt install" 24 | alias apts="apt-cache search" 25 | 26 | # Add an "alert" alias for long running commands. Use like so: 27 | # sleep 10; alert 28 | alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' 29 | 30 | # clear terminal 31 | alias cls="clear" 32 | 33 | # create directory recursive 34 | alias mkdir="mkdir -pv" 35 | 36 | # pyenv aliases 37 | alias aenv="source .venv/bin/activate" 38 | alias cenv="python3 -m venv .venv" 39 | alias denv="deactivate" 40 | 41 | # using terminfo of kitty in ssh 42 | alias ssh="TERM=xterm-256color ssh" 43 | 44 | # python server to server files 45 | alias pyserver="python3 -m http.server 8000" 46 | 47 | # update pip 48 | alias pipu="pip install pip --upgrade" 49 | alias pipr="pip install -r requirements.txt" 50 | 51 | # nvim aliases 52 | alias nvimconf="cd $HOME/.config/nvim && nvim" 53 | alias nvimclean="nvim --clean" 54 | alias nvimdel="rm -rf $HOME/.local/share/nvim $HOME/.local/state/nvim $HOME/.cache/nvim" 55 | 56 | # i3 and polybar aliases 57 | alias i3conf="nvim $HOME/.config/i3/config" 58 | alias polybarconf="nvim $HOME/.config/polybar/config.ini" 59 | 60 | # terminal aliases 61 | alias wezconf="nvim $HOME/.config/wezterm/wezterm.lua" 62 | alias alacrittyconf="nvim $HOME/.config/alacritty/alacritty.toml" 63 | 64 | # tmux aliases 65 | # attach session 66 | alias tmuxa="tmux a -t" 67 | # create session 68 | alias tmuxs="tmux new -s" 69 | 70 | # Docker 71 | # List databases on postgres container 72 | alias odoodbls="docker exec postgresql psql -U odoo -l" 73 | 74 | # docker compose aliases 75 | alias dcup="docker compose up" 76 | alias dcdn="docker compose down" 77 | alias dcb="docker compose build" 78 | alias dcps="docker compose ps" 79 | alias dcr="docker compose run" 80 | alias dcstop="docker compose stop" 81 | alias dcstart="docker compose start" 82 | alias dcupb="docker compose up --build" 83 | alias dclf="docker compose logs -f" 84 | 85 | # run odoo bin 86 | alias odoorun="docker compose run --rm --remove-orphans --service-ports odoo" 87 | 88 | -------------------------------------------------------------------------------- /.zshenv: -------------------------------------------------------------------------------- 1 | # ~/.zshenv 2 | # Core environment variables 3 | 4 | # set XDG directories 5 | export XDG_CONFIG_HOME="${HOME}/.config" 6 | export XDG_DATA_HOME="${HOME}/.local/share" 7 | export XDG_BIN_HOME="${HOME}/.local/bin" 8 | export XDG_LIB_HOME="${HOME}/.local/lib" 9 | export XDG_CACHE_HOME="${HOME}/.cache" 10 | 11 | # set default applications 12 | export EDITOR="nvim" 13 | export TERMINAL="alacritty" 14 | export BROWSER="firefox" 15 | 16 | # export TERM="xterm-kitty" 17 | #export TERM="alacritty" 18 | # export TERM="xterm-256color" 19 | # export TERM="wezterm" 20 | 21 | # others applications 22 | export GIT_CONFIG="${XDG_CONFIG_HOME}/git/.gitconfig" 23 | export PASSWORD_STORE_DIR="${XDG_DATA_HOME}/pass" 24 | 25 | # Append Cargo to path, if it's installed 26 | #if [[ -d "$HOME/.cargo/bin" ]]; then 27 | # export PATH="$HOME/.cargo/bin:$PATH" 28 | 29 | # Add cargo env 30 | # . "$HOME/.cargo/env" 31 | #fi 32 | 33 | # Append .local/bin to path 34 | export PATH="$XDG_BIN_HOME:$PATH" 35 | 36 | -------------------------------------------------------------------------------- /.zshrc: -------------------------------------------------------------------------------- 1 | # If you come from bash you might have to change your $PATH. 2 | export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH 3 | 4 | # configure zsh history 5 | HISTFILE="${HOME}/.histfile" 6 | HISTSIZE=5000 7 | SAVEHIST=5000 8 | 9 | export TERM=alacritty 10 | 11 | # Preferred editor for local and remote sessions 12 | if [[ -n $SSH_CONNECTION ]]; then 13 | export EDITOR='vim' 14 | 15 | # fix ctrl+p, ctrl+n, ctrl+f and etc not work on tmux and others terminals 16 | # https://superuser.com/questions/750965/tmux-printing-p 17 | bindkey -e 18 | fi 19 | 20 | # fix ctrl+p, ctrl+n, ctrl+f and etc not work on tmux and others terminals 21 | # https://superuser.com/questions/750965/tmux-printing-p 22 | bindkey -e 23 | 24 | # fix delete key 25 | bindkey "\e[3~" delete-char 26 | 27 | # disable INSERT 28 | bindkey -s '\e[2~' '' 29 | 30 | # ---------------------------------------- 31 | # Install zplug and zsh plugins 32 | # zplug 33 | [[ ! -f "${HOME}/.zplug/init.zsh" ]] || source "${HOME}/.zplug/init.zsh" 34 | 35 | # Install zplug 36 | zplug "zplug/zplug", hook-build:"zplug --self-manage" 37 | 38 | # plguins from oh-my-zsh 39 | zplug "plugins/git", from:oh-my-zsh 40 | zplug "plugins/asdf", from:oh-my-zsh 41 | zplug "plugins/fzf", from:oh-my-zsh 42 | zplug "plugins/virtualenvwrapper", from:oh-my-zsh 43 | 44 | # install others plugs 45 | zplug "zdharma-continuum/fast-syntax-highlighting" 46 | zplug "zsh-users/zsh-autosuggestions" 47 | zplug "zsh-users/zsh-completions" 48 | zplug "agkozak/zsh-z" 49 | zplug "hlissner/zsh-autopair" 50 | zplug "mafredri/zsh-async", from:github 51 | zplug "sindresorhus/pure", use:pure.zsh, from:github, as:theme 52 | 53 | 54 | # Install plugins if there are plugins that have not been installed 55 | if ! zplug check; then 56 | zplug install 57 | fi 58 | 59 | # change the path color 60 | zstyle :prompt:pure:virtualenv color white 61 | zstyle :prompt:pure:git:branch color yellow 62 | zstyle :prompt:pure:path color cyan 63 | 64 | # Then, source plugins and add commands to $PATH 65 | zplug load 66 | 67 | # load aliases 68 | if [ -f "$HOME/.zsh_aliases" ]; then 69 | . "$HOME/.zsh_aliases" 70 | fi 71 | 72 | 73 | # Fiz thunar file manager not update gtk theme 74 | if [[ -f "$HOME/.profile" ]]; then 75 | . "$HOME/.profile" 76 | fi 77 | 78 | #export STARSHIP_CONFIG="$HOME/.config/starship/starship.toml" 79 | # eval "$(starship init zsh)" 80 | 81 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Michell Stuttgart 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | --------------------------------------------------------------------------------