reorganize after reinstall

This commit is contained in:
2024-08-03 01:27:55 -04:00
parent a8d72d4b9a
commit 9f03aef14a
4 changed files with 325 additions and 380 deletions

View File

@@ -1,15 +1,6 @@
# Workstation
- [Workstation](#workstation)
- [Framework AMD Notes](#framework-amd-notes)
- [ATH12K Wifi Drivers](#ath12k-wifi-drivers)
- [Microcode](#microcode)
- [linux-git kernel](#linux-git-kernel)
- [Base Tools](#base-tools)
- [ZSH](#zsh)
- [Prompt Themes](#prompt-themes)
- [Aliases](#aliases)
- [Rollback Pacman Update](#rollback-pacman-update)
- [Podman](#podman)
- [Docker](#docker)
- [QEMU/KVM](#qemukvm)
@@ -37,140 +28,12 @@
- [AWS CLI](#aws-cli)
- [NSlookup](#nslookup)
- [rpi-imager](#rpi-imager)
- [Install rpi-imager](#install-rpi-imager)
- [Upgrade rpi-imager](#upgrade-rpi-imager)
- [qFlipper](#qflipper)
- [Nextcloud Talk](#nextcloud-talk)
## Framework AMD Notes
### ATH12K Wifi Drivers
Install the wireless-regdb to set the regulatory domain to US
```bash
pacman -S wireless-regdb
```
Edit `/etc/conf.d/wireless-regdom` to set the domain
<https://git.codelinaro.org/clo/ath-firmware/ath12k-firmware/-/tree/main>
1. `git clone https://git.codelinaro.org/clo/ath-firmware/ath12k-firmware`
2. `cd ath12k-firmware`
3. Run the following:
```bash
wget https://github.com/qca/qca-swiss-army-knife/raw/master/tools/scripts/ath12k/ath12k-fw-repo
chmod 755 ath12k-fw-repo
sudo ./ath12k-fw-repo --install /lib/firmware
```
4. `sudo cp ath12k/board.bin /lib/firmware/ath12k/WCN7850/hw2.0/`
5. `sudo cp ath12k/regdb.bin /lib/firmware/ath12k/WCN7850/hw2.0/`
6. Reboot
### Microcode
```bash
pacman -S amd-ucode
```
Edit /boot/loader/entries/.conf and add the following:
```bash
title Arch Linux (Work)
linux /vmlinuz-linux
initrd /amd-ucode.img
initrd /initramfs-linux.img
options ...
```
### linux-git kernel
<https://aur.archlinux.org/packages/linux-git>
1. `git clone https://aur.archlinux.org/linux-git.git`
2. `cd linux-git`
3. `makepkg`
4. `sudo pacman -U linux-git... linux-git-headers...`
## Base Tools
```bash
# gvfs and gvfs-dnssd are for webdav support
pacman -S rsync which git iperf3 pwgen dosfstools exfatprogs gvfs gvfs-dnssd
```
## ZSH
```bash
pacman -S zsh grml-zsh-config zsh-syntax-highlighting zsh-autosuggestions pkgfile
chsh -s $(which zsh)
cat <<EOF > ~/.zshrc
# Basic settings
autoload bashcompinit && bashcompinit
autoload -U compinit; compinit
zstyle ':completion:*' menu select
# Prompt settings
autoload -Uz promptinit
promptinit
PROMPT_EOL_MARK=
# Syntax Highlighting
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
# Command Not Found Autocomplete
source /usr/share/doc/pkgfile/command-not-found.zsh
### Custom Commands and Aliases ###
EOF
```
### Prompt Themes
See: <https://wiki.archlinux.org/title/Zsh#Prompt_themes>
Use `prompt -l` to list prompts
Use `prompt -p` to see previews
In your `.zshrc` set the following:
```bash
autoload -Uz promptinit
promptinit
prompt grml
```
### Aliases
You can put you aliases in `.zshrc` with the following format:
```bash
alias update='sudo pacman -Syu --noconfirm'
```
It's recommended that for complicated/multiline aliases you create a folder called
`~/.local/scripts` where you store each alias. Make sure to back up this folder!
#### Rollback Pacman Update
This script will grep for all updates performed today and roll them back one by one.
rollback_update.sh
```bash
grep -a upgraded /var/log/pacman.log| grep $(date +"%Y-%m-%d") > /tmp/lastupdates.txt
awk '{print $4}' /tmp/lastupdates.txt > /tmp/lines1;awk '{print $5}' /tmp/lastupdates.txt | sed 's/(/-/g' > /tmp/lines2
paste /tmp/lines1 /tmp/lines2 > /tmp/lines
tr -d "[:blank:]" < /tmp/lines > /tmp/packages
cd /var/cache/pacman/pkg/
for i in $(cat /tmp/packages); do sudo pacman --noconfirm -U "$i"*; done
```
- [FFMpeg](#ffmpeg)
- [Youtube-dlp](#youtube-dlp)
- [Iperf3](#iperf3)
- [Glances](#glances)
## Podman
@@ -211,41 +74,14 @@ You can use btrfs as your storage driver by following these instructions:
## QEMU/KVM
1. Install virtualization capabilties
Install virtualization capabilties
```bash
pacman -S qemu-full libvirt iptables-nft dnsmasq virt-manager qemu-desktop swtpm
usermod -aG libvirt ducoterra
```
2. Edit /etc/libvirt/libvirtd.conf
```conf
...
unix_sock_group = 'libvirt'
...
unix_sock_rw_perms = '0770'
...
```
3. Edit /etc/libvirt/qemu.conf
```conf
# Some examples of valid values are:
#
# user = "qemu" # A user named "qemu"
# user = "+0" # Super user (uid=0)
# user = "100" # A user named "100" or a user with uid=100
#
user = "ducoterra"
# The group for QEMU processes run by the system instance. It can be
# specified in a similar way to user.
group = "ducoterra"
```
4. `sudo systemctl enable --now libvirtd`
5. `sudo virsh net-autostart default`
```bash
# DNSMasq is required - do not start it with systemd, qemu will handle that.
pacman -S qemu-full dnsmasq virt-manager
systemctl enable --now libvirtd
virsh net-autostart default
```
If you get a blank screen when launching a VM check that you've used the correct bios -
either secboot or not secboot. This is the most common problem.
@@ -560,6 +396,7 @@ Type=Application
# Install less if you don't have it already
pacman -S less
cd ~/Downloads
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
@@ -574,7 +411,11 @@ complete -C '/usr/local/bin/aws_completer' aws
## NSlookup
```bash
pacman -Syu bind
# Do this in a toolbox
toolbox enter
# Install
pacman -S bind
```
## rpi-imager
@@ -582,33 +423,9 @@ pacman -Syu bind
<https://github.com/raspberrypi/rpi-imager>
```bash
sudo pacman -S cmake qt5-base
```
### Install rpi-imager
```bash
git clone https://github.com/raspberrypi/rpi-imager.git
cd rpi-imager
mkdir -p build
cd build
cmake ../src
make
sudo make install
```
### Upgrade rpi-imager
```bash
```bash
cd rpi-imager
git pull
rm -r build
mkdir -p build
cd build
cmake ../src
make
sudo make install
toolbox create -d ubuntu -r 24.04
toolbox enter toolbox enter ubuntu-toolbox-24.04
sudo apt install rpi-imager
```
## qFlipper
@@ -649,3 +466,37 @@ Type=Application
```bash
update-desktop-database
```
## FFMpeg
```bash
# Select pipewire-jack when prompted
pacman -S ffmpeg
```
## Youtube-dlp
<https://github.com/yt-dlp/yt-dlp>
1. Download `yt-dlp_linux`
2. `clamdscan yt-dlp_linux`
3. `cp yt-dlp_linux /usr/local/bin/yt-dlp`
4. Install ffmpeg `pacman -S ffmpeg`
Download the best quality video:
```bash
yt-dlp -f "bv+ba/b" https://...
```
## Iperf3
```bash
pacman -S iperf3
```
## Glances
```bash
pacman -S glances
```