Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions archlinuxcn/sylvakru/0001-fix-build-error.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
From 466de2f3476b01df9ddc452d95dc65b868951b21 Mon Sep 17 00:00:00 2001
From: Dee HY <dongfengweixiao@hotmail.com>
Date: Sun, 24 May 2026 09:23:32 +0800
Subject: [PATCH] fix build error

Signed-off-by: Dee HY <dongfengweixiao@hotmail.com>
---
linux/CMakeLists.txt | 3 +++
1 file changed, 3 insertions(+)

diff --git a/linux/CMakeLists.txt b/linux/CMakeLists.txt
index 12ed22c..5ef57ba 100644
--- a/linux/CMakeLists.txt
+++ b/linux/CMakeLists.txt
@@ -44,6 +44,9 @@ function(APPLY_STANDARD_SETTINGS TARGET)
target_compile_options(${TARGET} PRIVATE -Wall -Werror)
target_compile_options(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:-O3>")
target_compile_definitions(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:NDEBUG>")
+ # FIXME: workaround for tray_manager deprecation issue:
+ # https://github.com/leanflutter/tray_manager/issues/67
+ target_compile_options(${TARGET} PRIVATE -Wno-error=deprecated-declarations) # Allow deprecated warnings
endfunction()

# Flutter library and tool build rules.
--
2.54.0

99 changes: 99 additions & 0 deletions archlinuxcn/sylvakru/PKGBUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Maintainer: Dee.H.Y <dongfengweixiao at hotmail dot com>

pkgname="sylvakru"
pkgver=3.0.0
pkgrel=1
pkgdesc="A cross-platform music player for local and self-hosted libraries, built with Flutter."
url="https://github.com/AfalpHy/sylvakru"
license=('Apache-2.0')
arch=('x86_64' 'aarch64')
_flutterver=3.41.7
depends=(
'at-spi2-core'
'cairo'
'fontconfig'
'glib2'
'glibc'
'gtk3'
'libayatana-appindicator'
'libepoxy'
'libgcc'
'libstdc++'
'pango'
)
makedepends=(
'clang'
'cmake'
'fvm'
'lld'
'llvm'
'ninja'
'patchelf'
'rustup'
)

_pkgsrc="$pkgname-$pkgver"
_pkgext="tar.gz"
source=(
"$_pkgsrc.$_pkgext"::"$url/archive/refs/tags/v$pkgver.$_pkgext"
"com.afalphy.sylvakru.desktop"
"0001-fix-build-error.patch"
)
sha256sums=(
'1f568f2d4bf0d60a7c9350f6f60e06dd9c0c2761c68a67f6f359a8f8a58475f0'
'd3c495fb546e70d6b809ef61e57b45b8e87e8c123c9d8cf0306a05b8c1cf2b64'
'95d19cfe5055e70df99559bc0a79df399abd615be8de7ef599d3a19904edb1e8'
)

prepare() {
cd "$_pkgsrc"
patch -p1 -i "${srcdir}/0001-fix-build-error.patch"
}

build() {
export FVM_CACHE_PATH="$SRCDEST/fvm-cache"

cd "$_pkgsrc"
fvm install $_flutterver
fvm use $_flutterver

fvm flutter --disable-analytics
#fvm flutter pub upgrade --major-versions
fvm flutter --no-version-check pub get
fvm flutter clean && fvm flutter build linux --release
}

package() {
if [ $CARCH == "aarch64" ]; then
FLUTTER_ARCH=arm64
else
FLUTTER_ARCH=x64
fi

cd "$_pkgsrc/build/linux/$FLUTTER_ARCH/release/bundle"

install -Dm755 "Sylvakru" "$pkgdir/usr/lib/$pkgname/$pkgname"
cp --reflink=auto -r lib/ "$pkgdir/usr/lib/$pkgname/"
cp --reflink=auto -r data/ "$pkgdir/usr/lib/$pkgname/"

# runpath
patchelf --set-rpath '$ORIGIN/lib' "$pkgdir/usr/lib/$pkgname/$pkgname"
for i in "$pkgdir/usr/lib/$pkgname/lib"/*.so; do
[ -z "$(patchelf --print-rpath "$i")" ] && continue
patchelf --set-rpath '$ORIGIN' "$i"
done

# symlink
install -dm755 "${pkgdir}/usr/bin"
ln -sfr "$pkgdir/usr/lib/$pkgname/$pkgname" "$pkgdir/usr/bin/${pkgname}"

# icon
install -Dm644 "$srcdir/$_pkgsrc/app_icons/win_linux.png" \
"$pkgdir/usr/share/pixmaps/$pkgname.png"

# .desktop file
install -Dm644 "$srcdir/com.afalphy.sylvakru.desktop" "${pkgdir}/usr/share/applications/com.afalphy.sylvakru.desktop"

# license
install -Dm644 "$srcdir/$_pkgsrc/LICENSE" -t "$pkgdir/usr/share/licenses/$pkgname/"
}
13 changes: 13 additions & 0 deletions archlinuxcn/sylvakru/com.afalphy.sylvakru.desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[Desktop Entry]
Type=Application
Name=SylvaKru
Name[zh_CN]=森露
Comment=A private music oasis in the digital world.
Comment[zh_CN]=数字世界中的私人音乐绿洲。
Keywords=Music;
Exec=sylvakru
# MimeType=application/claps;application/mpeg4-iod;application/mpeg4-muxcodetable;application/mxf;application/ogg;application/ram;application/sdp;application/streamingmedia;application/vnd.apple.mpegurl;application/vnd.ms-asf;application/vnd.rn-realmedia;application/vnd.rn-realmedia-vbr;application/x-extension-m4a;application/x-extension-mp4;application/x-flac;application/x-flash-video;application/x-matroska;application/x-ogg;application/x-streamingmedia;audio/3gpp;audio/3gpp2;audio/aac;audio/ac3;audio/amr;audio/amr-wb;audio/basic;audio/dv;audio/eac3;audio/flac;audio/m4a;audio/midi;audio/mp1;audio/mp2;audio/mp3;audio/mp4;audio/mpeg;audio/mpegurl;audio/mpg;audio/ogg;audio/opus;audio/scpls;audio/vnd.dolby.heaac.1;audio/vnd.dolby.heaac.2;audio/vnd.dolby.mlp;audio/vnd.dts;audio/vnd.dts.hd;audio/vnd.rn-realaudio;audio/wav;audio/webm;audio/x-aac;audio/x-aiff;audio/x-ape;audio/x-flac;audio/x-gsm;audio/x-it;audio/x-m4a;audio/x-matroska;audio/x-mod;audio/x-mp1;audio/x-mp2;audio/x-mp3;audio/x-mpeg;audio/x-mpegurl;audio/x-mpg;audio/x-ms-asf;audio/x-ms-wma;audio/x-musepack;audio/x-pn-aiff;audio/x-pn-au;audio/x-pn-realaudio;audio/x-pn-wav;audio/x-real-audio;audio/x-realaudio;audio/x-s3m;audio/x-scpls;audio/x-shorten;audio/x-speex;audio/x-tta;audio/x-vorbis;audio/x-vorbis+ogg;audio/x-wav;audio/x-wavpack;audio/x-xm;video/3gp;video/3gpp;video/3gpp2;video/divx;video/dv;video/fli;video/flv;video/mp2t;video/mp4;video/mp4v-es;video/mpeg;video/mpeg-system;video/msvideo;video/ogg;video/quicktime;video/vnd.mpegurl;video/vnd.rn-realvideo;video/webm;video/x-avi;video/x-flc;video/x-fli;video/x-flv;video/x-m4v;video/x-matroska;video/x-mpeg;video/x-mpeg-system;video/x-mpeg2;video/x-ms-asf;video/x-ms-wm;video/x-ms-wmv;video/x-ms-wmx;video/x-msvideo;video/x-nsv;video/x-ogm+ogg;video/x-theora;video/x-theora+ogg;x-content/audio-cdda;x-content/audio-player;x-content/video-dvd;x-scheme-handler/mms;x-scheme-handler/mmsh;x-scheme-handler/rtmp;x-scheme-handler/rtp;x-scheme-handler/rtsp;
Icon=sylvakru
Terminal=false
Categories=AudioVideo;Audio;
StartupWMClass=musicpod
12 changes: 12 additions & 0 deletions archlinuxcn/sylvakru/lilac.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
maintainers:
- github: dongfengweixiao
email: Dee.H.Y <dongfengweixiao@hotmail.com>

pre_build_script: update_pkgver_and_pkgrel(_G.newver)
post_build: git_pkgbuild_commit

update_on:
- source: github
github: AfalpHy/sylvakru
use_latest_release: true
prefix: v