From ece3dc7905230eb424023286505194e2371be194 Mon Sep 17 00:00:00 2001 From: y1lm0z Date: Sun, 29 Mar 2026 15:20:14 +0300 Subject: [PATCH] =?UTF-8?q?build=20dosyas=C4=B1=20d=C3=BCzenleme=2010?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/build.yaml | 43 +++++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml index e9fc20e..ae75af2 100644 --- a/.gitea/workflows/build.yaml +++ b/.gitea/workflows/build.yaml @@ -1,5 +1,5 @@ name: MusicPlayer Fedora RPM Build -run-name: ${{ gitea.actor }} tarafından Fedora RPM derleniyor 🚀 +run-name: ${{ gitea.actor }} tarafından Tam Paket Fedora RPM derleniyor 🚀 on: [push] @@ -41,58 +41,65 @@ jobs: make -j$(nproc) fi - - name: RPM Paketi Oluştur + - name: RPM Paketi Oluştur (Full Plugin Support) run: | - # 1. RPM ağacını oluştur rpmdev-setuptree - # 2. Dosyaları RPM'in varsayılan BUILDROOT klasörüne MANUEL yerleştiriyoruz - # Bu sayede SPEC içindeki %install adımına gerek kalmayacak - mkdir -p ~/rpmbuild/BUILDROOT/cmus-custom-1.0-1.x86_64/usr/bin - cp cmus cmus-remote ~/rpmbuild/BUILDROOT/cmus-custom-1.0-1.x86_64/usr/bin/ + # 1. Tüm dosyaları (binary, plugins, man pages, rc) geçici bir dizine kuruyoruz + # Bu adım /usr/lib/cmus ve /usr/share/cmus klasörlerini otomatik oluşturur. + mkdir -p ~/rpmbuild/BUILDROOT/cmus-custom-1.0-1.x86_64 + make install DESTDIR=~/rpmbuild/BUILDROOT/cmus-custom-1.0-1.x86_64 - # 3. SPEC dosyasını en basit haliyle oluştur (Sadece paketleme yapar) + # 2. SPEC dosyasını tüm klasörleri kapsayacak şekilde oluştur cat < cmus.spec Name: cmus-custom Version: 1.0 Release: 1 - Summary: Custom Fedora Build for Cmus + Summary: Full Fedora Build for Cmus (with Plugins) License: GPL %define _build_id_links none %global debug_package %{nil} %description - y1lm0z tarafından otomatik derlenen cmus paketi. + y1lm0z tarafından tüm giriş/çıkış eklentileri (ip/op) dahil edilerek derlenen cmus paketi. %files + # Program dosyaları /usr/bin/cmus /usr/bin/cmus-remote + # Eklentiler (Hata aldığın yer burasıydı) + /usr/lib/cmus/ + # Ayar ve tema dosyaları + /usr/share/cmus/ + # Yardım sayfaları (Opsiyonel ama iyi olur) + /usr/share/man/man1/cmus* + /usr/share/man/man7/cmus* EOF - # 4. Sadece dosyaları paketle (Derleme veya kurulum adımlarını atla) - rpmbuild -bb --define "_topdir $HOME/rpmbuild" --buildroot $HOME/rpmbuild/BUILDROOT/cmus-custom-1.0-1.x86_64 cmus.spec + # 3. Paketi inşa et (Hazırladığımız BUILDROOT'u kullanıyoruz) + rpmbuild -bb --buildroot $HOME/rpmbuild/BUILDROOT/cmus-custom-1.0-1.x86_64 cmus.spec - # 5. RPM'i çalışma dizinine al + # 4. RPM'i çalışma dizinine al cp ~/rpmbuild/RPMS/x86_64/*.rpm . - name: Release Kontrol Et ve RPM'i Yükle run: | SHORT_SHA=$(git rev-parse --short HEAD) - NEW_RPM_NAME="cmus-custom-${SHORT_SHA}.x86_64.rpm" + NEW_RPM_NAME="cmus-full-${SHORT_SHA}.x86_64.rpm" mv *.rpm $NEW_RPM_NAME - # Release oluştur (yoksa) + # Release oluştur curl -s -X 'POST' "https://git.y1lm0z.me/api/v1/repos/${{ gitea.repository }}/releases" \ -H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \ -H "Content-Type: application/json" \ - -d '{"tag_name": "v1.0", "name": "Fedora Build v1.0", "body": "Otomatik RPM derlemesi", "draft": false, "prerelease": false}' || true + -d '{"tag_name": "v1.0", "name": "Fedora Build v1.0", "body": "Full Plugin Support RPM", "draft": false, "prerelease": false}' || true - # ID al + # ID al (jq ile güvenli) RELEASE_ID=$(curl -s -H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \ "https://git.y1lm0z.me/api/v1/repos/${{ gitea.repository }}/releases/tags/v1.0" | jq -r '.id') if [ -z "$RELEASE_ID" ] || [ "$RELEASE_ID" == "null" ]; then - echo "Release ID bulunamadı!" + echo "Hata: Release ID bulunamadı!" exit 1 fi