59 lines
1.2 KiB
Python
59 lines
1.2 KiB
Python
from pathlib import Path
|
|
|
|
def sym_link_folders() -> void:
|
|
target_folder = input("Specify the path to the target folder (full path must be used): ")
|
|
|
|
FOLDERS = [
|
|
'Documents',
|
|
'Downloads',
|
|
'Music',
|
|
'Pictures',
|
|
'Repos',
|
|
'Videos',
|
|
]
|
|
|
|
for folder in FOLDERS:
|
|
Path(f"/run/media/1TB/{folder}").symlink_to(f"~/{folder}")
|
|
|
|
def install_apps() -> void:
|
|
APPS = [
|
|
'brave-bin',
|
|
'element-desktop',
|
|
'flatpak'
|
|
'libreoffice-fresh',
|
|
'neovim-git',
|
|
'proton-mail-bin',
|
|
'proton-vpn-gtk-app',
|
|
'rtorrent',
|
|
'steam',
|
|
'stow',
|
|
'tmux',
|
|
'wl-clipboard',
|
|
]
|
|
|
|
for app in APPS:
|
|
subprocess.run(['sudo', 'pacman', '-S', {app}, '--noconfirm'])
|
|
|
|
subprocess.run(['fisher', 'install', 'jorgebucaran/nvm.fish'])
|
|
subprocess.run(['nvm', 'install', 'lts'])
|
|
|
|
def stow_dot_files() -> void:
|
|
DOTFILES = [
|
|
'bash',
|
|
'konsole',
|
|
'menus',
|
|
'nvim',
|
|
'rtorrent',
|
|
'tmux',
|
|
'tmuxp',
|
|
]
|
|
|
|
for dotfile in DOTFILES:
|
|
subprocess.run(['stow', {dotfile}, '--adopt'])
|
|
|
|
subprocess.run(['git', 'checkout', '--', '.'])
|
|
|
|
sym_link_folders()
|
|
install_apps()
|
|
stow_dot_files()
|