Compare commits

..

5 Commits

Author SHA1 Message Date
e051dd49d3 update packages 2024-01-21 12:01:38 -05:00
b19f42a0f4 tweak sway config for idle 2024-01-21 12:00:36 -05:00
ea617a0277 add fwupdmgr settings 2024-01-21 12:00:36 -05:00
7d379abda7 add framework screen to kanshi 2024-01-21 12:00:36 -05:00
a14eedd762 use sd-encrypt and lvm 2024-01-21 12:00:36 -05:00
20 changed files with 195 additions and 87 deletions

View File

@ -1,5 +0,0 @@
title Arch Linux
linux /vmlinuz-linux
initrd /amd-ucode.img
initrd /initramfs-linux-fallback.img
options rd.luks.name=3927d3f3-175f-4b72-9e05-395ef5664c81=cryptlvm rd.luks.options=discard root=/dev/ssd1/root resume=/dev/ssd1/swap rw add_efi_memmap kernel=30

View File

@ -1,5 +0,0 @@
title Arch Linux
linux /vmlinuz-linux
initrd /amd-ucode.img
initrd /initramfs-linux.img
options rd.luks.name=3927d3f3-175f-4b72-9e05-395ef5664c81=cryptlvm rd.luks.options=discard root=/dev/ssd1/root resume=/dev/ssd1/swap rw add_efi_memmap kernel=30

View File

@ -6,5 +6,3 @@ keyserver hkps://hkps.pool.sks-keyservers.net:443
#keyserver hkp://pgp.mit.edu:11371
#keyserver hkp://keyserver.ubuntu.com
keyserver hkps://keyserver.ubuntu.com
keyserver-options import-clean
keyserver-options no-self-sigs-only

View File

@ -5,7 +5,6 @@ BindsTo=sway-session.target
[Service]
Type=simple
ExecStart=/usr/bin/wayvnc
Environment="WAYLAND_DISPLAY=wayland-1"
Restart=on-failure
RestartSec=1
TimeoutStopSec=10

View File

@ -1,3 +0,0 @@
[window]
opacity=0.85
decorations="None"

View File

@ -1,6 +1,6 @@
profile {
output "LG Electronics LG IPS QHD 201NTPCGD520" enable scale 1.30 position 0,0 mode 2560x1440@60Hz
output "LG Electronics LG ULTRAWIDE 0x01010101" enable position 1968,0 mode 2560x1080@60Hz
output "LG Electronics LG ULTRAWIDE 0x00000101" enable position 1968,0 mode 2560x1080@60Hz
}
profile {

View File

@ -9,7 +9,7 @@ set $down j
set $up k
set $right l
set $term alacritty
set $term kitty
set $menu rofi -show combi | xargs swaymsg exec --
# wallpaper
@ -227,9 +227,6 @@ bindsym $mod+Shift+d border toggle
bindsym $mod+m exec makoctl dismiss
bindsym $mod+n exec makoctl restore
# wayvnc
bindsym $mod+Shift+p exec wayvncctl output-cycle
### styles
# class border backgr text

View File

@ -21,5 +21,3 @@ fi
cat append.txt | wget-titles-from-urls >> titles.txt
cat append.txt | youtube-audio
> append.txt
standardize-music

46
home/default/scripts/booksplit Executable file
View File

@ -0,0 +1,46 @@
#!/bin/sh
# Requires ffmpeg (audio splitting) and my `tag` wrapper script.
[ ! -f "$2" ] && printf "The first file should be the audio, the second should be the timecodes.\\n" && exit
echo "Enter the album/book title:"; read -r booktitle
echo "Enter the artist/author:"; read -r author
echo "Enter the publication year:"; read -r year
inputaudio="$1"
# Get a safe file name from the book.
#escbook="$(echo "$booktitle" | iconv -cf UTF-8 -t ASCII//TRANSLIT | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")"
escbook="$(echo "$booktitle" | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")"
! mkdir -p "$escbook" && echo "Do you have write access in this directory?" && exit 1
# As long as the extension is in the tag script, it'll work.
ext="opus"
#ext="${1#*.}"
# Get the total number of tracks from the number of lines.
total="$(wc -l < "$2")"
while read -r x;
do
end="$(echo "$x" | cut -d' ' -f1)"
[ -n "$start" ] &&
echo "From $start to $end; $track $title"
file="$escbook/$(printf "%.2d" "$track") - $author - $esctitle.$ext"
[ -n "$start" ] && echo "Splitting \"$title\"..." && ffmpeg -nostdin -y -loglevel -8 -i "$inputaudio" -ss "$start" -to "$end" -vn "$file" &&
echo "Tagging \"$title\"..." && tag -a "$author" -A "$booktitle" -t "$title" -n "$track" -N "$total" -d "$year" "$file"
title="$(echo "$x" | cut -d' ' -f 2-)"
# esctitle="$(echo "$title" | iconv -cf UTF-8 -t ASCII//TRANSLIT | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")"
esctitle="$(echo "$title" | tr -d '[:punct:]' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | sed "s/-\+/-/g;s/\(^-\|-\$\)//g")"
track="$((track+1))"
start="$end"
done < "$2"
# The last track must be done outside the loop.
echo "From $start to the end: $title"
file="$escbook/$track - $author - $esctitle.$ext"
echo "Splitting \"$title\"..." && ffmpeg -nostdin -y -loglevel -8 -i "$inputaudio" -ss "$start" -vn "$file" &&
echo "Tagging \"$title\"..." && tag -a "$author" -A "$booktitle" -t "$title" -n "$track" -N "$total" -d "$year" "$file"

View File

@ -0,0 +1,32 @@
#!/usr/bin/env sh
# rename .MKV -> .MKV
count=`ls -1 *.JPG 2>/dev/null | wc -l`
if [ $count != 0 ]; then
rename MKV mkv *.MKV
fi
# convert to opus
count=`ls -1 *.mkv 2>/dev/null | wc -l`
if [ $count != 0 ]; then
for i in *.mkv; do
ffmpeg -i "$i" "${i%.mkv}.opus";
rm "$i";
done
fi
# rename .WEBM -> .webm
count=`ls -1 *.WEBM 2>/dev/null | wc -l`
if [ $count != 0 ]; then
rename WEBM webm *.WEBM
fi
# convert to opus
count=`ls -1 *.webm 2>/dev/null | wc -l`
if [ $count != 0 ]; then
for i in *.webm; do
ffmpeg -i "$i" "${i%.webm}.opus";
rm "$i";
done
fi

View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
set -euo pipefail
for i in *.mp3; do ffmpeg -i "$i" -c:a libopus "${i%.*}.opus"; done
trash *.mp3

View File

@ -0,0 +1,8 @@
#!/usr/bin/env bash
set -euo pipefail
echo stopping pipewire...
systemctl --user stop pipewire
echo starting pipewire...
systemctl --user start pipewire

View File

@ -1,13 +1,12 @@
#!/usr/bin/env bash
set -euox pipefail
pkill -f blueman-manager || true
set -euo pipefail
echo stopping bluetooth...
sudo systemctl stop bluetooth-autoconnect
sudo systemctl stop bluetooth
sudo modprobe -r btusb
sudo rmmod btusb
echo starting bluetooth...
sudo modprobe btusb
sudo systemctl start bluetooth
sudo rfkill unblock bluetooth
sudo systemctl start bluetooth-autoconnect

16
home/default/scripts/scrub-ufw Executable file
View File

@ -0,0 +1,16 @@
#!/bin/sh
echo "Stopping firewall and allowing everyone..."
ipt="/usr/bin/iptables"
## Failsafe - die if /sbin/iptables not found
[ ! -x "$ipt" ] && { echo "$0: \"${ipt}\" command not found."; exit 1; }
$ipt -P INPUT ACCEPT
$ipt -P FORWARD ACCEPT
$ipt -P OUTPUT ACCEPT
$ipt -F
$ipt -X
$ipt -t nat -F
$ipt -t nat -X
$ipt -t mangle -F
$ipt -t mangle -X
$ipt iptables -t raw -F
$ipt -t raw -X

View File

@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -euo pipefail
cat input.txt | awk '{ print length, $0 }' | sort -n | cut -d" " -f2-

View File

@ -1,41 +0,0 @@
#!/usr/bin/env sh
set -oux pipefail
# removes more modern codecs to just files that can fit on my mp3 player
count=`ls -1 *.M4A 2>/dev/null | wc -l`
if [ $count != 0 ]; then
rename M4A m4a *.M4A
fi
count=`ls -1 *.m4a 2>/dev/null | wc -l`
if [ $count != 0 ]; then
for i in *.m4a; do
ffmpeg -y -i "$i" "${i%.*}.ogg" && rm "$i"
done
fi
count=`ls -1 *.WEBM 2>/dev/null | wc -l`
if [ $count != 0 ]; then
rename WEBM webm *.WEBM
fi
count=`ls -1 *.webm 2>/dev/null | wc -l`
if [ $count != 0 ]; then
for i in *.webm; do
ffmpeg -y -i "$i" "${i%.*}.ogg" && rm "$i"
done
fi
count=`ls -1 *.OPUS 2>/dev/null | wc -l`
if [ $count != 0 ]; then
rename OPUS opus *.OPUS
fi
count=`ls -1 *.opus 2>/dev/null | wc -l`
if [ $count != 0 ]; then
for i in *.opus; do
ffmpeg -y -i "$i" "${i%.*}.ogg" && rm "$i"
done
fi

59
home/default/scripts/tag Executable file
View File

@ -0,0 +1,59 @@
#!/bin/sh
err() { echo "Usage:
tag [OPTIONS] file
Options:
-a: artist/author
-t: song/chapter title
-A: album/book title
-n: track/chapter number
-N: total number of tracks/chapters
-d: year of publication
-g: genre
-c: comment
You will be prompted for title, artist, album and track if not given." && exit 1 ;}
while getopts "a:t:A:n:N:d:g:c:f:" o; do case "${o}" in
a) artist="${OPTARG}" ;;
t) title="${OPTARG}" ;;
A) album="${OPTARG}" ;;
n) track="${OPTARG}" ;;
N) total="${OPTARG}" ;;
d) date="${OPTARG}" ;;
g) genre="${OPTARG}" ;;
c) comment="${OPTARG}" ;;
f) file="${OPTARG}" ;;
*) printf "Invalid option: -%s\\n" "$OPTARG" && err ;;
esac done
shift $((OPTIND - 1))
file="$1"
[ ! -f "$file" ] && echo "Provide file to tag." && err
[ -z "$title" ] && echo "Enter a title." && read -r title
[ -z "$artist" ] && echo "Enter an artist." && read -r artist
[ -z "$album" ] && echo "Enter an album." && read -r album
[ -z "$track" ] && echo "Enter a track number." && read -r track
case "$file" in
*.ogg) echo "Title=$title
Artist=$artist
Album=$album
Track=$track
Total=$total
Date=$date
Genre=$genre
Comment=$comment" | vorbiscomment -w "$file" ;;
*.opus) echo "Title=$title
Artist=$artist
Album=$album
Track=$track
Total=$total
Date=$date
Genre=$genre
Comment=$comment" | opustags -i -S "$file" ;;
*.mp3) eyeD3 -Q --remove-all -a "$artist" -A "$album" -t "$title" -n "$track" -N "$total" -Y "$date" "$file" ;;
*) echo "File type not implemented yet." ;;
esac

View File

@ -2,7 +2,7 @@
# --embed-thumbnail \
# --audio-format opus \
yt-dlp \
youtube-dl \
--ignore-errors \
-f bestaudio \
--rm-cache-dir \

View File

@ -2,12 +2,9 @@ acpi
adobe-source-han-sans-jp-fonts
adobe-source-han-sans-kr-fonts
aic94xx-firmware
alacritty
amd-ucode
android-udev
anki-bin
arch-install-scripts
arduino-ide-bin
asdf-vm
atomicparsley
atool
@ -21,6 +18,7 @@ bind
binutils
bison
blueman
bluetooth-autoconnect
brightnessctl
bzip2
calibre
@ -40,7 +38,6 @@ device-mapper
dhcpcd
dialog
diffutils
dino
direnv
downgrade
dxvk-bin
@ -64,6 +61,7 @@ ffmpegthumbnailer
file
filesystem
findutils
firefox
flex
font-manager
fortune-mod
@ -82,6 +80,7 @@ freecad
freerdp
fwbuilder
fwupd
gajim
gamemode
gawk
gcc
@ -100,7 +99,6 @@ gnome-sound-recorder
gnu-free-fonts
gnu-netcat
gparted
gphoto2
grep
grim
grub
@ -111,12 +109,10 @@ gst-plugins-ugly
gstreamer-vaapi
gtk-engine-murrine
gutenprint
gvfs-gphoto2
gwakeonlan
gzip
handbrake
hddtemp
hexedit
highlight
htop
hugin
@ -128,10 +124,12 @@ iotop
iproute2
iputils
itstool
iucode-tool
iw
jammr
jq
kanshi
kcm-wacomtablet
kdocker
keepassxc
kid3
@ -184,8 +182,6 @@ mcomix
mcpp
mdadm
mediainfo
merkuro
mesa
minecraft-launcher
mixxx
mousetweaks
@ -236,7 +232,6 @@ playerctl
playonlinux
polkit-gnome
postgresql-libs
prismlauncher
power-profiles-daemon
powertop
procps-ng
@ -245,13 +240,10 @@ psmisc
pv
python-axolotl
python-levenshtein
python-matplotlib
python-mutagen
python-pip
python-pyenchant
python-pylast
python-pynvim
python-wxpython
qt5ct
quodlibet
ranger
@ -290,7 +282,18 @@ systemd-ui
tar
telegram-desktop
texinfo
tlp
texlive-basic
texlive-bibtexextra
texlive-fontsextra
texlive-formatsextra
texlive-games
texlive-humanities
texlive-latexextra
texlive-mathscience
texlive-music
texlive-pictures
texlive-pstricks
texlive-publishers
tmux
traceroute
trash-cli
@ -316,8 +319,6 @@ vulkan-mesa-layers
vulkan-radeon
vulkan-tools
w3m
wacomtablet
wakeonlan
waybar
wayland-utils
wayvnc

View File

@ -28,7 +28,7 @@ please let me know if i've forgotten one!
- waybar (topbar)
- swayidle (idle daemon)
- swaylock (lockscreen)
- alacritty (terminal)
- kitty (terminal)
- ranger (file browser)
- rofi (launcher)
- mako (notification daemon)