Compare commits

...

3 Commits

Author SHA1 Message Date
d28a27b30e Updated freetube-appimage to 0.23.2-1 2025-03-13 03:23:20 +01:00
f1038058f7 added desktop file 2025-03-13 03:10:46 +01:00
8f8588939b added push script 2025-03-13 03:10:35 +01:00
4 changed files with 184 additions and 0 deletions

37
.SRCINFO Normal file
View File

@ -0,0 +1,37 @@
pkgbase = freetube-appimage
pkgdesc = An open source desktop YouTube player built with privacy in mind. AppImage version.
pkgver = 0.23.2
pkgrel = 1
url = https://github.com/FreeTubeApp/FreeTube
arch = x86_64
arch = aarch64
license = AGPL3
provides = freetube
conflicts = freetube
options = !strip
source_x86_64 = freetube.AppImage::https://github.com/FreeTubeApp/FreeTube/releases/download/v0.23.2-beta/freetube-0.23.2-amd64.AppImage
source_x86_64 = https://github.com/FreeTubeApp/FreeTube/raw/refs/tags/v0.23.2-beta/_icons/icon.svg
source_x86_64 = freetube.desktop
md5sums_x86_64 = 020af9b264a2dd59058fd2786ee911dc
md5sums_x86_64 = 61f7a9b61491064089377fb2897a9f6e
md5sums_x86_64 = e3e01271f2dff62dc5caf7daca88923c
sha1sums_x86_64 = 68d4fe9f50169554e29194c228aa55cfb6c4e001
sha1sums_x86_64 = 062e93f1d8d8a1cf867b8355a24a3a9130d2e93c
sha1sums_x86_64 = c936302bb3115416560250bb0e5b19e6d582c03d
sha256sums_x86_64 = 9bd722fe5f4e54b4b63194233e1caa256bfdb9d9dcf68530d941a82309217fcd
sha256sums_x86_64 = 26c9c74d6684655170d579794886e146cb71faf21cae343393d487600ce318f1
sha256sums_x86_64 = ada2b4b8f6a1e8896acbce4f4d311228d2c86026c273ffa00afa3247294f8b1e
source_aarch64 = freetube.AppImage::https://github.com/FreeTubeApp/FreeTube/releases/download/v0.23.2-beta/freetube-0.23.2-arm64.AppImage
source_aarch64 = https://github.com/FreeTubeApp/FreeTube/raw/refs/tags/v0.23.2-beta/_icons/icon.svg
source_aarch64 = freetube.desktop
md5sums_aarch64 = 9d33cfc326b5fc094ee3868e32867862
md5sums_aarch64 = 61f7a9b61491064089377fb2897a9f6e
md5sums_aarch64 = e3e01271f2dff62dc5caf7daca88923c
sha1sums_aarch64 = 87f4f236b6181db23e3f81295803b8544bd20cc3
sha1sums_aarch64 = 062e93f1d8d8a1cf867b8355a24a3a9130d2e93c
sha1sums_aarch64 = c936302bb3115416560250bb0e5b19e6d582c03d
sha256sums_aarch64 = 8524b38e1a5905f973236ded174858e9315ce9fd00873cb03e8bcdfd73446825
sha256sums_aarch64 = 26c9c74d6684655170d579794886e146cb71faf21cae343393d487600ce318f1
sha256sums_aarch64 = ada2b4b8f6a1e8896acbce4f4d311228d2c86026c273ffa00afa3247294f8b1e
pkgname = freetube-appimage

62
PKGBUILD Normal file
View File

@ -0,0 +1,62 @@
# Maintainer: Bryan Joshua Pedini <bryan [at] pedini [dot] dev>
_pkgname="freetube"
pkgname="${_pkgname}-appimage"
pkgver="0.23.2"
pkgrel="1"
pkgdesc="An open source desktop YouTube player built with privacy in mind. AppImage version."
url="https://github.com/FreeTubeApp/FreeTube"
arch=("x86_64" "aarch64")
license=("AGPL3")
options=("!strip")
provides=("${_pkgname}")
conflicts=("${_pkgname}")
# x86_64
source_x86_64=(
"${_pkgname}.AppImage"::"${url}/releases/download/v${pkgver}-beta/${_pkgname}-${pkgver}-amd64.AppImage"
"${url}/raw/refs/tags/v${pkgver}-beta/_icons/icon.svg"
"freetube.desktop"
)
sha1sums_x86_64=(
"68d4fe9f50169554e29194c228aa55cfb6c4e001"
"062e93f1d8d8a1cf867b8355a24a3a9130d2e93c"
"c936302bb3115416560250bb0e5b19e6d582c03d"
)
sha256sums_x86_64=(
"9bd722fe5f4e54b4b63194233e1caa256bfdb9d9dcf68530d941a82309217fcd"
"26c9c74d6684655170d579794886e146cb71faf21cae343393d487600ce318f1"
"ada2b4b8f6a1e8896acbce4f4d311228d2c86026c273ffa00afa3247294f8b1e"
)
md5sums_x86_64=(
"020af9b264a2dd59058fd2786ee911dc"
"61f7a9b61491064089377fb2897a9f6e"
"e3e01271f2dff62dc5caf7daca88923c"
)
# aarch64
source_aarch64=(
"${_pkgname}.AppImage"::"${url}/releases/download/v${pkgver}-beta/${_pkgname}-${pkgver}-arm64.AppImage"
"${url}/raw/refs/tags/v${pkgver}-beta/_icons/icon.svg"
"freetube.desktop"
)
sha1sums_aarch64=(
"87f4f236b6181db23e3f81295803b8544bd20cc3"
"062e93f1d8d8a1cf867b8355a24a3a9130d2e93c"
"c936302bb3115416560250bb0e5b19e6d582c03d"
)
sha256sums_aarch64=(
"8524b38e1a5905f973236ded174858e9315ce9fd00873cb03e8bcdfd73446825"
"26c9c74d6684655170d579794886e146cb71faf21cae343393d487600ce318f1"
"ada2b4b8f6a1e8896acbce4f4d311228d2c86026c273ffa00afa3247294f8b1e"
)
md5sums_aarch64=(
"9d33cfc326b5fc094ee3868e32867862"
"61f7a9b61491064089377fb2897a9f6e"
"e3e01271f2dff62dc5caf7daca88923c"
)
package() {
install -Dm755 "${srcdir}/${_pkgname}.AppImage" "${pkgdir}/usr/bin/${_pkgname}"
install -Dm644 "${srcdir}/${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
}

11
freetube.desktop Normal file
View File

@ -0,0 +1,11 @@
[Desktop Entry]
Name=FreeTube
GenericName=YouTube Player
Comment=An open source desktop YouTube player built with privacy in mind.
Exec=freetube %U
Terminal=false
Type=Application
Icon=freetube
MimeType=x-scheme-handler/freetube;
Categories=Network;
StartupWMClass=FreeTube

74
push.sh Executable file
View File

@ -0,0 +1,74 @@
#!/usr/bin/env bash
set -e
# Temp file and PKGBUILD information
TMPFILE=$(mktemp)
grep -E "pkgname=|pkgver=|pkgrel=|url=|arch=" PKGBUILD > ${TMPFILE}
sed -n -e '/source/,/)/ p' PKGBUILD >> ${TMPFILE}
source ${TMPFILE}
aur_url="ssh://aur@aur.archlinux.org/${pkgname}.git"
# Get new version
if [ $# -eq 1 ]; then
newver="${1}"
else
echo "Old version: ${pkgver}"
read -p "New version: " newver
fi
# Check version
if [ "${newver}" = "${pkgver}" ]; then
echo >/dev/stderr "Error: same (old) version specified - update aborted"
exit 1
fi
# Perform variable substitution
sed -i -E "s/^pkgver=\"[^\"]+\"/pkgver=\"$newver\"/" ${TMPFILE}
source ${TMPFILE}
sednewline="n;"
# Iterate over architectures
for architecture in "${arch[@]}"; do
sednumlines=""
# Iterate over files listed in $source variable
eval "sources=(\${source_$architecture[@]})"
for file_url in "${sources[@]}"; do
# Remove potential file renaming in source file
file_url=$(echo ${file_url} | sed 's/.*:://')
# Perform action only on web links
if [[ $file_url == http* ]]; then
# Extract everything after last "/"
filename="${file_url##*/}"
# Download new file
wget -O ${filename} "${file_url}"
# Calculate checksums
sha1sum=$(sha1sum ${filename} | awk '{print $1}')
sha256sum=$(sha256sum ${filename} | awk '{print $1}')
md5sum=$(md5sum ${filename} | awk '{print $1}')
# Update PKGBUILD with new values
sednumlines="${sednumlines}${sednewline}"
sed -i "/sha1sums_${architecture}/{${sednumlines}s/\".*\"/\"${sha1sum}\"/}" PKGBUILD
sed -i "/sha256sums_${architecture}/{${sednumlines}s/\".*\"/\"${sha256sum}\"/}" PKGBUILD
sed -i "/md5sums_${architecture}/{${sednumlines}s/\".*\"/\"${md5sum}\"/}" PKGBUILD
# Yoink source - not necessary anymore
rm -f ${filename}
fi
done # Files loop
done # Architectures loop
# Update the last PKGBUILD value, the version
sed -i -E "s/^pkgver=\"[^\"]+\"/pkgver=\"$newver\"/" PKGBUILD
# Yoink temp file
rm -f ${TMPFILE}
# Update .SRCINFO
makepkg --printsrcinfo > .SRCINFO
# In case of fire, git commit, git push, leave building
git add PKGBUILD .SRCINFO
git commit -m "Updated ${pkgname} to ${pkgver}-${pkgrel}"
git remote add aur ${aur_url}
git push origin main
git push aur main:master