Browse Source

feat: start using stow

master
Tovi Jaeschke-Rogers 2 months ago
parent
commit
88f8d1c0ea
13 changed files with 63 additions and 636 deletions
  1. +0
    -5
      .bash_profile
  2. +0
    -13
      .bashrc
  3. +49
    -25
      .config/aliasrc
  4. +0
    -183
      .config/hypr/hyprland.conf
  5. +0
    -4
      .config/hypr/hyprpaper.conf
  6. +0
    -34
      .config/hypr/start-in-tray.sh
  7. +0
    -8
      .config/hypr/xdg.sh
  8. +0
    -161
      .config/waybar/config
  9. +0
    -98
      .config/waybar/style.css
  10. +0
    -46
      .config/wofi/style.css
  11. +1
    -1
      .local/bin/dwm-autostart
  12. +13
    -0
      .zshrc
  13. +0
    -58
      update.sh

+ 0
- 5
.bash_profile View File

@ -1,5 +0,0 @@
#
# ~/.bash_profile
#
[[ -f ~/.bashrc ]] && . ~/.bashrc

+ 0
- 13
.bashrc View File

@ -1,13 +0,0 @@
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
PS1='[\u@\h \W]\$ '
set -o vi
source ~/.config/aliasrc

+ 49
- 25
.config/aliasrc View File

@ -1,27 +1,51 @@
#!/bin/sh
alias \
q='exit' \
ls="ls --color=auto" \
ll="ls -G -alh" \
dd='sudo dd status=progress' \
h="history 1 | grep" \
vim='nvim' \
grep='grep --color=auto' \
p='sudo pacman' \
extip='curl -s www.icanhazip.com' \
gitup='git remote | xargs -L1 git push --all' \
gco='git checkout' \
gbls='git --no-pager branch -a' \
vv='nvim ~/.config/nvim/init.lua' \
vz='nvim ~/.zshrc && source ~/.zshrc' \
va='nvim ~/.config/aliasrc && source ~/.zshrc' \
sz='source ~/.zshrc' \
delorig='find . -name "*.orig" -exec rm {} \;' \
delbak='find . -name "*.bak" -exec rm {} \;' \
cpp="rsync --progress --recursive" \
sv="sudo nvim" \
c="xclip -selection clipboard" \
v="xclip -selection clipboard -o" \
lf="lfcd" \
dcu='docker-compose up' \
dce='docker-compose exec' \
dps="docker ps" \
ds="docker stop" \
paratest='docker compose exec fpm ./test' \
phpunit='docker compose exec fpm ./vendor/bin/phpunit' \
dm='mysql -h localhost -P 33061 --protocol=tcp -u root -psecret' \
staging-mysql='mysql --host tf-codium-staging.ch66levpagqo.ap-southeast-2.rds.amazonaws.com --user=root --password=r43r34rg' \
mailhog='docker run -d --restart unless-stopped -p 1025:1025 -p 8025:8025 mailhog/mailhog' \
t12wl='docker run -it -v $(pwd):/workpace -v /root/.ssh:/root/.ssh:ro -v ~/.aws:/root/.aws -w /workpace hashicorp/terraform:0.12.27 workspace list ' \
t12ws='docker run -it -v $(pwd):/workpace -v /root/.ssh:/root/.ssh:ro -v ~/.aws:/root/.aws -w /workpace hashicorp/terraform:0.12.27 workspace select ' \
t12wd='docker run -it -v $(pwd):/workpace -v /root/.ssh:/root/.ssh:ro -v ~/.aws:/root/.aws -w /workpace hashicorp/terraform:0.12.27 workspace delete ' \
t12='docker run -it -v $(pwd):/workpace -v /root/.ssh:/root/.ssh:ro -v ~/.aws:/root/.aws -w /workpace hashicorp/terraform:0.12.27 ' \
ducks='du -cks * | sort -rn | head' \
fn="find . -name" \
artisan="docker-compose exec fpm php artisan" \
tinker="docker-compose exec fpm php artisan tinker" \
phpunit="docker-compose exec fpm ./vendor/bin/phpunit" \
jsonlint="python -m json.tool" \
migseed="docker-compose exec fpm php artisan migrate --seed" \
dsa="docker kill $(docker ps -q)"
alias q='exit'
alias ls="ls --color=auto"
alias ll="ls -G -alh"
alias dd='sudo dd status=progress'
alias h="history 1 | grep"
alias vim='nvim'
alias grep='grep --color=auto'
alias p='sudo pacman'
alias extip='curl -s www.icanhazip.com'
alias vz='nvim ~/.zshrc && source ~/.zshrc'
alias va='nvim ~/.config/aliasrc && source ~/.zshrc'
alias sz='source ~/.zshrc'
alias c="xclip -selection clipboard"
alias v="xclip -selection clipboard -o"
alias lf="lfcd"
alias dc='docker-compose'
alias dcu='docker-compose up'
alias dce='docker-compose exec'
alias dps="docker ps"
alias phpunit='docker-compose exec fpm ./vendor/bin/phpunit'
alias paratest='docker-compose exec fpm ./test'
alias tinker="docker-compose exec fpm php artisan tinker"
alias artisan="docker-compose exec fpm php artisan"
alias ducks='du -cks * | sort -rn | head'
alias jsonlint="python -m json.tool"
alias thermoview-run='docker-compose -f docker-compose.yml run desktop bash -c "/opt/local-electron.sh" ; rm -rf desktop/pulse-*'
alias thermoview-build-run='dce node gulp && docker-compose -f docker-compose.yml run desktop bash -c "/opt/build/build-local.sh && /opt/local-electron.sh" ; rm -rf desktop/pulse-*'
alias refresh-strng='dce server sh -c "./based -migrate-fresh && ./based -seed && ./based -sync-stripe-products"'

+ 0
- 183
.config/hypr/hyprland.conf View File

@ -1,183 +0,0 @@
# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=DVI-D-1,preferred,-1920x0,auto
monitor=HDMI-A-1,preferred,auto,auto
# workspace binding
workspace=1,monitor:DVI-D-1
workspace=2,monitor:HDMI-A-1
workspace=3,monitor:HDMI-A-1
workspace=4,monitor:HDMI-A-1
workspace=5,monitor:HDMI-A-1
workspace=6,monitor:HDMI-A-1
workspace=7,monitor:HDMI-A-1
workspace=8,monitor:HDMI-A-1
workspace=9,monitor:HDMI-A-1
workspace=10,monitor:HDMI-A-1
# Execute your favorite apps at launch
exec-once = ~/.config/hypr/xdg.sh
exec-once = hyprpaper
exec-once = swayidle -w timeout 600 swaylock before-sleep swaylock
exec-once = ~/.config/hypr/start-in-tray.sh
# Set programs that you use
$terminal = alacritty
$fileManager = dolphin
$menu = wofi --show drun
# Some default env vars.
env = XCURSOR_SIZE,24
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
kb_layout = us
kb_variant =
kb_model =
kb_options =
kb_rules =
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}
general {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
gaps_in = 5
gaps_out = 10
border_size = 2
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
layout = master
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
allow_tearing = false
}
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 5
blur {
enabled = true
size = 3
passes = 1
}
drop_shadow = yes
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
}
animations {
enabled = yes
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = yes # you probably want this
}
master {
new_is_master = true
new_on_top = true
}
gestures {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
workspace_swipe = off
}
misc {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
force_default_wallpaper = 0 # Set to 0 to disable the anime mascot wallpapers
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:epic-mouse-v1 {
sensitivity = -0.5
}
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
windowrulev2 = nomaximizerequest, class:.* # You'll probably like this.
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod SHIFT, Return, exec, $terminal
bind = $mainMod, Q, killactive,
bind = $mainMod SHIFT, Q, exit,
bind = $mainMod, V, togglefloating,
bind = $mainMod, P, exec, $menu
# DWM style window management
bind = $mainMod, Return, layoutmsg, swapwithmaster
bind = $mainMod, J, layoutmsg, cyclenext
bind = $mainMod, K, layoutmsg, cycleprev
bind = $mainMod, I, layoutmsg, addmaster
bind = $mainMod, D, layoutmsg, removemaster
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10
# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

+ 0
- 4
.config/hypr/hyprpaper.conf View File

@ -1,4 +0,0 @@
preload = ~/Pictures/arch-wp-1.png
wallpaper = DVI-D-1,~/Pictures/arch-wp-1.png
wallpaper = HDMI-A-1,~/Pictures/arch-wp-1.png

+ 0
- 34
.config/hypr/start-in-tray.sh View File

@ -1,34 +0,0 @@
#!/bin/sh
# start waybar and programs with tray icons after pause
waybar_loop() {
# restart waybar on crash (after suspend mode)
WAYBAR_RESTARTS=0
while [ $WAYBAR_RESTARTS != 6 ]; do # limited to 5 restars
pgrep Hyprland || break # exit if Hyprland is not running
waybar
let WAYBAR_RESTARTS++
notify-send -a "start-in-tray.sh" "Waybar crashed!"
sleep 1
done
}
# wait for xdg-desktop-portal-hyprland to start
until pgrep -f 'xdg-desktop-portal-hyprland'; do echo 'test' && sleep 2; done
# override monitor for workspace 2 and 4 with eDP-2
# hyprctl monitors | grep eDP-2 && \
# hyprctl --batch "keyword workspace 2,monitor:eDP-2 ; keyword workspace 4,monitor:eDP-2"
waybar_loop &
sleep 1 # wait for waybar
nm-applet --indicator &
# crow &
# syncthingtray --wait &
XDG_CURRENT_DESKTOP=gnome telegram-desktop &
# blueman-applet &
hyprctl dispatch workspace 1
# hyprctl dispatch moveworkspacetomonitor 2 0

+ 0
- 8
.config/hypr/xdg.sh View File

@ -1,8 +0,0 @@
#!/bin/bash
sleep 1
killall -e xdg-desktop-portal-hyprland
killall -e xdg-desktop-portal-wlr
killall xdg-desktop-portal
/usr/lib/xdg-desktop-portal-hyprland &
sleep 2
/usr/lib/xdg-desktop-portal &

+ 0
- 161
.config/waybar/config View File

@ -1,161 +0,0 @@
{
"layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
"height": 34, // Waybar height (to be removed for auto height)
// "width": 1280, // Waybar width
"spacing": 4, // Gaps between modules (4px)
// Choose the order of the modules
"modules-left": ["hyprland/workspaces", "idle_inhibitor", "pulseaudio", "network", "custom/updates"],
"modules-center": ["hyprland/window"],
"modules-right": ["cpu", "memory", "temperature", "tray", "clock"],
// Modules configuration
"hyprland/workspaces": {
"disable-scroll": true,
"on-click": "activate",
"all-outputs": false,
// "format": "{name}: {icon}",
"format": "{name}",
"on-scroll-up": "hyprctl dispatch workspace m-1 > /dev/null",
"on-scroll-down": "hyprctl dispatch workspace m+1 > /dev/null",
},
"keyboard-state": {
"numlock": false,
"capslock": false,
"format": "{name} {icon}",
"format-icons": {
"locked": "",
"unlocked": ""
}
},
"hyprland/window": {
"max-length": 50,
"separate-outputs": true
},
"mpd": {
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
"format-disconnected": "Disconnected ",
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
"unknown-tag": "N/A",
"interval": 2,
"consume-icons": {
"on": " "
},
"random-icons": {
"off": "<span color=\"#f53c3c\"></span> ",
"on": " "
},
"repeat-icons": {
"on": " "
},
"single-icons": {
"on": "1 "
},
"state-icons": {
"paused": "",
"playing": ""
},
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
"spacing": 0
},
"clock": {
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%Y-%m-%d}"
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"temperature": {
"critical-threshold": 80,
"format": "{temperatureC}°C {icon}",
"format-icons": ["", "", ""]
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% 🗲",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
},
"battery#bat2": {
"bat": "BAT2"
},
"network": {
// "interface": "wlan0", // (Optional) To force the use of this interface
"format-wifi": "{essid} ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio": {
// "scroll-step": 10, // %, can be a float
"format": "{volume}%{icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
},
"custom/notification": {
"tooltip": false,
"format": "{} {icon}",
"format-icons": {
"notification": "<span foreground='red'><sup></sup></span> ",
"none": "",
"dnd-notification": "<span foreground='red'><sup></sup></span> ",
"dnd-none": "",
"inhibited-notification": "<span foreground='red'><sup></sup></span> ",
"inhibited-none": "",
"dnd-inhibited-notification": "<span foreground='red'><sup></sup></span> ",
"dnd-inhibited-none": ""
},
"return-type": "json",
"exec-if": "which swaync-client",
"exec": "swaync-client -swb",
"on-click": "sleep 0.1 && swaync-client -t -sw",
"on-click-right": "swaync-client -d -sw",
"escape": true
},
"custom/updates": {
"format": "{} {icon}",
"return-type": "json",
"format-icons": {
"has-updates": "󱍷",
"updated": "󰂪"
},
"exec-if": "which waybar-module-pacman-updates",
"exec": "waybar-module-pacman-updates"
}
}

+ 0
- 98
.config/waybar/style.css View File

@ -1,98 +0,0 @@
@define-color base00 #181818;
@define-color base01 #2b2e37;
@define-color base02 #3b3e47;
@define-color base03 #585858;
@define-color base04 #b8b8b8;
@define-color base05 #d8d8d8;
@define-color base06 #e8e8e8;
@define-color base07 #f8f8f8;
@define-color base08 #ab4642;
@define-color base09 #dc9656;
@define-color base0A #f7ca88;
@define-color base0B #a1b56c;
@define-color base0C #86c1b9;
@define-color base0D #7cafc2;
@define-color base0E #ba8baf;
@define-color base0F #a16946;
* {
transition: none;
box-shadow: none;
}
#waybar {
font-family: 'Source Code Pro', sans-serif;
font-size: 1.2em;
font-weight: 400;
color: @base04;
background: @base01;
}
#workspaces {
margin: 0 4px;
}
#workspaces button {
margin: 4px 0;
padding: 0 4px;
color: @base05;
}
#workspaces button.visible {
}
#workspaces button.active {
border-radius: 4px;
background-color: @base02;
}
#workspaces button.urgent {
color: rgba(238, 46, 36, 1);
}
#tray {
margin: 4px 4px 4px 4px;
border-radius: 4px;
background-color: @base02;
}
#tray * {
padding: 0 6px;
border-left: 1px solid @base00;
}
#tray *:first-child {
border-left: none;
}
#mode, #battery, #cpu, #memory, #network, #pulseaudio, #idle_inhibitor, #backlight, #custom-storage, #custom-updates, #custom-weather, #custom-mail, #clock, #temperature {
margin: 4px 2px;
padding: 0 6px;
background-color: @base02;
border-radius: 4px;
min-width: 20px;
}
#pulseaudio.muted {
color: @base0F;
}
#pulseaudio.bluetooth {
color: @base0C;
}
#clock {
margin-left: 0px;
margin-right: 4px;
background-color: transparent;
}
#temperature.critical {
color: @base0F;
}
#window {
font-size: 0.9em;
font-weight: 400;
font-family: sans-serif;
}

+ 0
- 46
.config/wofi/style.css View File

@ -1,46 +0,0 @@
/*
Arc-Dark Color Scheme
*/
@define-color highlight #fbf1c7;
@define-color base1 #ffffff;
@define-color base3 #282828;
*{
font-family: UbuntuMono;
}
window {
border: 1px solid @highlight;
}
#input {
margin-bottom: 15px;
padding:3px;
border-radius: 5px;
border:none;
color: #282828;
}
#inner-box {
background-color: @base3;
}
#outer-box {
margin: 1px;
padding:15px;
background-color: #282828;
}
#text {
padding: 5px;
color: @highlight;
}
#entry:nth-child() {
color: @base1;
}
#entry:selected {
border: 2px solid @highlight;
}

+ 1
- 1
.local/bin/dwm-autostart View File

@ -1,6 +1,6 @@
#!/bin/bash
~/.local/bin/remap-keys
# ~/.local/bin/remap-keys
dunst --config ~/.config/dunst/dunstrc &
xautolock -time 10 -locker slock &
~/.local/bin/setbg


+ 13
- 0
.zshrc View File

@ -23,6 +23,8 @@ zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
export EDITOR=nvim
export GIT_EDITOR=nvim
export BROWSER=chromium
# Disable the log builtin, so we don't conflict with /usr/bin/log
disable log
@ -174,6 +176,10 @@ lfcd () {
}
bindkey -s '^o' 'lfcd\n'
function cdv () {
cd $(xclip -selection clipboard -o)
}
function cdf () {
cd $(find . -type d -print | fzf)
}
@ -181,11 +187,18 @@ function cdf () {
export PATH="/usr/local/opt/php@7.4/bin:$PATH"
export PATH="/usr/local/opt/php@7.4/sbin:$PATH"
# eval "$(starship init zsh)"
export LESS='-R'
export LESSOPEN='|~/.lessfilter %s'
export QT_QPA_PLATFORMTHEME="qt5ct"
# Open tmux when new interactive shell
#if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then
# exec tmux
#fi
export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/platform-tools


+ 0
- 58
update.sh View File

@ -1,58 +0,0 @@
#!/bin/sh
DOTFILES_DIR="${HOME}/Software/dotfiles"
declare -a FILES=(
.bash_profile
.bashrc
.inputrc
.iterm2_shell_integration.bash
.xinitrc
.config/nvim/init.lua
.config/nvim/lua/packer-plugins.lua
.config/nvim/lua/helper/toggle-tab-width.lua
.config/nvim/lua/config/tmux.lua
.config/nvim/lua/config/treesitter.lua
.config/nvim/lua/config/php-doc.lua
.config/nvim/lua/config/go.lua
.config/nvim/lua/config/cmp.lua
.config/nvim/lua/config/general/remaps.lua
.config/nvim/lua/config/general/options.lua
.config/nvim/lua/config/general/autocmd.lua
.config/nvim/lua/config/general/colorscheme.lua
.config/nvim/lua/config/general/init.lua
.config/nvim/lua/config/gitsigns.lua
.config/nvim/lua/config/luasnip.lua
.config/nvim/lua/config/lsp.lua
.config/nvim/lua/config/nvim-neo-tree.lua
.config/nvim/lua/config/lualine.lua
.config/nvim/lua/config/telescope.lua
.config/nvim/lua/utils/init.lua
.config/aliasrc
.config/lf/
.dwm/autostart.sh
.dwm/dwm-sss
.local/bin/
.zsh/
.zshrc
)
for F in ${FILES[@]}; do
FILE="${HOME}/$F"
if [[ ! -f $FILE && ! -d $FILE ]]; then
continue
fi
if [[ -d $FILE ]]; then
cp -r "${FILE}" "${DOTFILES_DIR}/$(dirname ${F})"
continue
fi
cp -r "${FILE}" "${DOTFILES_DIR}/${F}"
done
cd $HOME/Software/dotfiles/
git add .
git commit -m "$(date)"
git push origin $(git rev-parse --abbrev-ref HEAD)

Loading…
Cancel
Save