Package essential software

This commit is contained in:
Manuel Thalmann 2024-07-15 12:10:06 +02:00
parent ed065e6991
commit 8d1c754106
7 changed files with 178 additions and 1 deletions

View file

@ -3,14 +3,49 @@ begin
set -l dir (status dirname)
function initialize -V dir
source "$dir/../Scripts/software.fish"
source "$dir/../Software/base-devel/main.fish"
source "$dir/../Software/pacman/main.fish"
source "$dir/../Software/yay/main.fish"
yayinst powershell-bin
end
if not type -q installSoftware
function installSoftware -V dir
"$dir/../Collections/personal.sh";
source "$dir/../../Common/Scripts/config.fish"
source "$dir/../Scripts/software.fish"
if collectionActive essentials
yayinst \
mkinitcpio-firmware \
neofetch \
bash-completion \
wget \
oh-my-posh-bin \
screen \
tmux \
htop \
lsof \
zsh \
fish \
pkgfile \
sl \
rar
sudo pkgfile --update
source "$dir/../Software/openssh/main.fish"
source "$dir/../Software/vim/main.fish"
source "$dir/../Software/git/main.fish"
end
if collectionActive common
yayinst \
tldr \
btop \
nvtop \
numbat-bin \
terminal-parrot
end
end
end

View file

@ -0,0 +1,19 @@
#!/bin/env fish
begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW -V dir
yayinst \
git \
git-lfs \
gitflow-avh \
gitflow-bashcompletion-avh \
gitflow-fishcompletion-avh \
gitflow-zshcompletion-avh
fish "$dir/../../../Common/Software/git/main.fish" configure
end
runInstaller $argv
end

View file

@ -0,0 +1,23 @@
#!/bin/env fish
begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
yayinst \
openssh \
libfido2
end
function configureSW
systemctl --global enable --now ssh-agent
begin
printf %s\n \
"#!/bin/bash" \
'export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"'
end | sudo tee "/etc/profile.d/openssh.sh" > /dev/null
end
runInstaller $argv
end

View file

@ -0,0 +1,20 @@
#!/bin/env fish
begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
source "$dir/../../../Common/Software/vim/main.fish"
function installSW
yayinst (
# Necessary for accessing clipboard in terminal: https://wiki.archlinux.org/title/Vim
) gvim \
vi-vim-symlink (
# Add clipboard support for wayland: https://www.reddit.com/r/Fedora/comments/ax9p9t/comment/jjb4p7b/
) vim-wayland-clipboard-git \
wl-clipboard
configureSW
end
runInstaller $argv
end

View file

@ -3,3 +3,7 @@ function getConfig -S -a property
source "$(status dirname)/eval-module.fish"
evalModule "$CONFIG_MODULE" "$property" $argv[2..]
end
function collectionActive -S -a name
[ "$(getConfig "valhalla.software.$name" --json)" = "true" ]
end

View file

@ -0,0 +1,55 @@
#!/bin/env fish
begin
source "$(status dirname)/../../Scripts/software.fish"
function configureSW -S
git config --global init.defaultBranch "main"
git config --global user.name "Manuel Thalmann"
git config --global user.email "m@nuth.ch"
begin # Git Flow
set -l dir (mktemp -d)
pushd "$dir" > /dev/null
git init
git commit --allow-empty -m "Initial commit" > /dev/null
git branch master || true &> /dev/null
git branch main || true &> /dev/null
git branch dev || true &> /dev/null
yes "" | git flow init &> /dev/null
git flow config set --global master main > /dev/null
git flow config set --global develop dev > /dev/null
popd > /dev/null
rm -rf "$dir"
end
git config --global alias.ahfange init
git config --global alias.tuedezue add
git config --global alias.beschuldig blame
git config --global alias.zieh pull
git config --global alias.druck push
git config --global alias.machnah clone
git config --global alias.hol fetch
git config --global alias.zwiigab branch
git config --global alias.buechiih commit
git config --global alias.eich rebase
git config --global alias.erd rebase
git config --global alias.gahufwiifelde rebase
git config --global alias.vergliich diff
git config --global alias.tuezemme merge
git config --global alias.versorg stash
git config --global alias.markier tag
git config --global alias.pflueckoepfel cherry-pick
git config --global alias.pflueckhimbeeri cherry-pick
git config --global alias.buechuus checkout
git config --global alias.quaetsch 'merge --squash'
git config --global alias.pfudle 'push --force'
git config --global alias.beschuldigung blame
git config --global alias.zwiigli branch
git config --global alias.tagebuech log
git config --global alias.versteck stash
git config --global alias.zuestand status
git config --global alias.markierig tag
end
end

View file

@ -0,0 +1,21 @@
#!/bin/env fish
begin
set -l dir (status dirname)
source "$dir/../../Scripts/software.fish"
function installSW
configureSW
end
function configureSW
set -l configFile /etc/vimrc
set -l indicator "set clipboard"
if not grep "\b$indicator\b" "$configFile" > /dev/null
# As described in https://wiki.archlinux.org/title/Vim#Clipboard
echo "$indicator+=unnamed,unnamedplus" | sudo tee "$configFile" > /dev/null;
end
end
runInstaller $argv
end