Aur deposuna uygulama y├╝klemek (PKGBUILD)

uygulama yay─▒nlamay─▒ ├Â─črenmek ad─▒na ilk olarak arch i├žin PKGBUILD yaz─▒yordum, uygulamam derleniyor fakat men├╝de bulam─▒yorum. terminale pkgname k─▒sm─▒ndaki ismi yazd─▒─č─▒m zamanda bash taraf─▒ndan komut yok uyar─▒s─▒ al─▒yorum. bu t├╝r i┼člemleri san─▒r─▒m package fonksiyonun i├žine eklemem gerekiyor. uygulamay─▒ ta┼č─▒mas─▒ gerekiyor olabilir. bu sorunu nas─▒l ├ž├Âzebilece─čimi s├Âylerseniz ve pkgbuild dosyam i├žin ek ├Âneriler verirseniz sevinirim. pkgbuild dosyam bu ┼čekilde;

pkgname=factorial-calculator-gui
pkgver=0.4
pkgrel=1
pkgdesc="Colossal Factorial Calculator GUI for Arch Linux"
arch=('x86_64')
url="https://github.com/UF7K00/Factorial-Calculator"
license=('GPL3')

source=("https://github.com/UF7K00/Factorial-Calculator/releases/download/v0.0.4/bigfactors-x86_64.tar.gz")

sha256sums=('1d26e4081075d957c9f102a024157bf05227672b919f3b2944872106126497a8')

Sanirim kurmak icin kullanacagin komutlari da girmen gerekliydi. Arastirirsin istersen.

o ne demek hocam? akl─▒ma soru gelir gelmez direkt buraya yazm─▒yorum ki? zaten ara┼čt─▒r─▒p bulamazsam yaz─▒yorum. di─čer ki┼čilerin yazd─▒─č─▒ package fonksiyonlar─▒ benim uygulamama uymuyor. en basitinden cd "$pkgname-$pkgversion" yapam─▒yorum ├ž├╝nk├╝ d─▒┼čar─▒ya klas├Âr olarak ├ž─▒km─▒yor.

PKGBUILDÔÇÖin eksik gibi g├Âr├╝n├╝yor. ├ľrnek bir kod

package() {
  cd "$srcdir/$pkgname-$pkgver"
  msg2 "Installing..."
  install -D -m755 build/target/minitube "$pkgdir/usr/bin/minitube"
  install -D -m644 minitube.desktop "$pkgdir/usr/share/applications/minitube.desktop"
  install -D -m644 sounds/snapshot.wav "$pkgdir/usr/share/$pkgname/snapshot.wav"
  install -D -m644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md"
  
  #Icons install
  cd "$srcdir/$pkgname-$pkgver/data/"
  for i in 16x16 22x22 32x32 48x48 64x64 128x128 256x256; do
    install -D -m644 $i/minitube.png "${pkgdir}/usr/share/icons/hicolor/$i/apps/minitube.png"
  done
}

├╝stte bahsetti─čim sorun burada da var

Flutter uygulamas─▒ oldu─čundan a┼ča─č─▒daki PKGBUILDÔÇÖi deneyin. Kaynak koddan derlenmesi gerekiyor.

pkgname=flutter-default-linux-app
pkgver=3.10.2
pkgrel=1
pkgdesc='Example PKGBUILD for a flutter linux app'
arch=('x86_64')
url="https://docs.flutter.dev/"
depends=('gtk3')
makedepends=('flutter' 'clang' 'cmake' 'ninja' 'pkgconf' 'xz')
source=("https://github.com/christian-heusel/flutter-default-linux-app/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('c07ab021cb11ce79076ab805b8507d3782d714d70b3bd5f26b2e927cdddf5f0c')

prepare(){
    cd "$pkgname-$pkgver"
    flutter --no-version-check config --no-analytics
    flutter --no-version-check config --enable-linux-desktop
    flutter --no-version-check pub get
}

build() {
    cd "$pkgname-$pkgver"
    flutter --no-version-check build linux --release
}

package() {
    cd "$pkgname-$pkgver/build/linux/x64/release/bundle/"
    # create the target folders
    install -dm 755 "$pkgdir/opt/$pkgname" "$pkgdir/usr/bin/"
    # copy the bundled output to /opt
    cp -rdp --no-preserve=ownership . "$pkgdir/opt/$pkgname/"
    # symlink to /usr/bin so the app can be found in PATH
    ln -s "/opt/$pkgname/flutterapp" "$pkgdir/usr/bin/$pkgname"
}

image

image

bu klas├Âr de─čil bunun i├žine giremem. bu kodda di─čerlerinden farkl─▒ bir┼čey yapm─▒yor

prepare() package() build () k─▒s─▒mlar─▒n eksik. Ben de daha ├Ânceden hi├ž PKGBULD yazmad─▒m ama do─čru yerlere i┼čaret etmek ad─▒na:

  1. PKGBUILD - ArchWiki adresini okumal─▒s─▒n gerekirse ├ževiriyle oku.
  2. ChatGPT veya Bard gibi bir YZÔÇÖdan yard─▒m alabilirsin. ├ľrnek sa─člay─▒p neyin eksik oldu─čunu falan sorabilirsin.
1 Like

prepare ve build fonksiyonunda yapacak bir┼čeyim yok benim projemde bunlar gerekmiyor fakat di─čer i┼člemde yapmam gerekenler konusunda emin de─čilim. internetten bakt─▒─č─▒m zaman ya benim projemde olmayan bir┼čey oluyor ÔÇťcd pkgname-pkgversionÔÇŁ gibi ya da ba┼čka sorunlar oluyor. wiki sayfas─▒na da bakm─▒┼čt─▒m di─čer pkgbuild yazanlarada bakt─▒m da pek bir ├ž├Âz├╝m bulamad─▒m make install ile de sorun ya┼č─▒yorum makefile dosyas─▒ yok dil fark─▒ndan dolay─▒ da olabilir. asl─▒nda olay basit kaynaktan gelen dosyay─▒ indirecek, i├žerisinde gerekli k├╝t├╝phaneler zaten haz─▒r geliyor ├žal─▒┼čt─▒r─▒labilir dosya da var bunlar─▒ gerekli dizine ta┼č─▒mas─▒ yeterli. yapay zekalardan da oldum olas─▒ hay─▒r g├Ârmedim uygulaman─▒n linux i├žin build edildi─čini s├Âylememe ra─čmen ─▒srarla apk dosyas─▒ yaz─▒yor vs

Dostum packagebuildin neyi nereye kuraca─č─▒n─▒ nereden bilecek? Bunu da yine prepare ve package ile yap─▒yorsun. Buyur binary paketli senin yapmak istedi─čini yapan bir pkgbuild.

https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=upscayl-bin

1 Like