name: MusicPlayer Fedora Build run-name: ${{ gitea.actor }} tarafından Fedora üzerinde derleniyor 🚀 on: push: branches: [ "main", "master" ] pull_request: branches: [ "main", "master" ] jobs: fedora-compilation: # Docker Compose'daki runner etiketinizle eşleşmeli runs-on: fedora-latest steps: - name: Kodları Çek (Checkout) uses: actions/checkout@v3 - name: Derleme Araçlarını Kur run: | # Temel geliştirme araçları dnf install -y gcc gcc-c++ make cmake pkgconfig devscripts - name: Fedora Bağımlılıklarını Kur (Zengin Liste) run: | # Önce RPMFusion Free deposunu ekleyelim (faad2 vb. için şart) dnf install -y https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm || true # Senin paylaştığın tüm kütüphaneler dnf install -y \ 'pkgconfig(ncursesw)' 'pkgconfig(alsa)' 'pkgconfig(ao)' \ 'pkgconfig(libcddb)' 'pkgconfig(libcdio_cdda)' 'pkgconfig(libdiscid)' \ 'pkgconfig(libavformat)' 'pkgconfig(libavcodec)' 'pkgconfig(libswresample)' \ 'pkgconfig(flac)' 'pkgconfig(jack)' 'pkgconfig(mad)' \ 'pkgconfig(libmodplug)' libmpcdec-devel 'pkgconfig(libsystemd)' \ 'pkgconfig(opusfile)' 'pkgconfig(libpulse)' 'pkgconfig(samplerate)' \ 'pkgconfig(vorbisfile)' 'pkgconfig(wavpack)' \ faad2-devel libmp4v2-devel - name: Projeyi Yapılandır ve Derle run: | # cmus veya benzeri projeler genelde ./configure veya cmake kullanır if [ -f ./configure ]; then ./configure prefix=/usr make -j$(nproc) elif [ -f CMakeLists.txt ]; then mkdir -p build && cd build cmake .. make -j$(nproc) else make -j$(nproc) fi - name: Başarı Durumu run: echo "Build başarıyla tamamlandı!"