Isa sa mga bagay na pinaka gusto ko tungkol sa Arch Linux at ang mga derivatives nito ay ang napakalaking kadalian upang lumikha ng mga pakete upang ma-install sa ibang pagkakataon sa system, hindi katulad ng mga kilala .deb ng Debian / Ubuntu / Linux Mint / atbp na iyon ay isang kaguluhan (at kung ang mga ito ay mga aklatan hindi ko sasabihin sa iyo).
Ang isang pangunahing template ay ito:
# Maintainer:
pkgname=
pkgver=
pkgrel=
pkgdesc=
arch=()
url=
license=()
groups=()
depends=()
makedepends=()
source=()
md5sums=()
build() {
...
}
package() {
...
}
Ngayon ay ipapaliwanag ko ang bawat parameter:
- # Tagapagpanatili: Sa ito ang pangalan ng nagpapanatili ng package
- pkgname: Ang pangalan ng package. Maaari lamang itong maglaman ng mga titik, numero, -, _ at +
- pkver: bersyon ng package. pe 1.0.0
- pkgrel: repasuhin ang programa o pakete. pe 1
- pkgdesc: paglalarawan ng package.
- arko: ang arkitektura ng programa: maaari itong maging anumang (para sa lahat), i686 at x86_64, alinman para sa mga pakete na hindi nangangailangan ng pagtitipon, tulad ng mga bash o python na programa. Kung ito ay isang programa na kailangan ito (halimbawa, mga programa sa C o C ++) dapat itong ipahiwatig i686 kung ito ay para sa 32 bits o x86_64 para sa 64 bits. Sa pangkalahatan, kung ito ay katugma sa pareho, naka-set ito (i686, x86_64)
- url: ang url sa opisyal na pahina ng programa. Maipapayo na ilagay ito.
- lisensya: ang lisensya ng programa. hal. GPL3
- mga pangkat: ang mga pangkat na kinabibilangan ng package. mga pangkat = ('system')
- depende: sa loob nito ipinapahiwatig namin ang mga pakete na kinakailangan para sa pagpapatupad ng programa. pependens = ('python2 "pygtk')
- ginawa: ang mga dependency na kinakailangan lamang upang mag-ipon ang pakete. Kung ang code ay mai-download mula sa isang bersyon manager, inirerekumenda na ilagay ito. pe: makedepends = ('git')
- pinagmulan: sa loob nito ipinapahiwatig namin ang mga file na kinakailangan para sa paglikha ng package. Bilang isang pangkalahatang panuntunan, ito ang url sa pakete na naglalaman ng code, isang patch, isang .desktopt file, mga icon, atbp. pe: source = (pacsyu.desktop)
- md5sums: narito ang mga md5 kabuuan ng mga file na ipinahiwatig sa mapagkukunan. Upang malaman kung alin ang pinapatakbo namin mula sa isang terminal sa folder kung saan ang PKGBUILD (na nakasulat sa mga file path sa pinagmulan) makepkg -g at ang mga kabuuan ay lilitaw sa screen.
Posible ring gumamit ng iba pang mga kabuuan tulad ng sh1. - magtayo: sa pagpapaandar na ito ilalagay natin ang mga utos na kinakailangan upang magpatuloy sa pag-ipon ng software. Kung hindi kinakailangan upang mag-ipon kinakailangan lamang ang sumusunod na pagpapaandar)
- package: sa ibang pag-andar na ito ay pupunta ang mga utos ng pag-install ng programa. Halimbawa kung nagsasama kami ng C code dito ang make install ay pupunta.
At upang matapos ay kailangan lang nating magpatupad makepkg upang mapatunayan na nabuo ang pakete.
Tulad ng nakikita mo, mahirap para sa amin. Pagkatapos ay iwan ko sa iyo ng ilang dagdag na mga parameter ng makepkg:
- -ako: Nagtuturo sa makepkg upang mai-install ang package matapos itong malikha.
- -s: I-install ang mga dependency ng package kung ang mga ito ay nasa mga repository.
- -F: Kung mayroon nang isang pakete na may pangalang iyon, bersyon at rebisyon na may parameter na ito sinabi namin sa iyo na i-overlap ito.
- -c: Linisin ang mga gumaganang folder (pkg at mapagkukunan) sa sandaling tapos na.
- -A: Repackage ang package nang hindi na kinakailangang muling buuin.
Inirerekumenda kong makakita ng higit pang mga file ng PKGBUILD upang makakita ng higit pang mga halimbawa, ipatupad ang utos makepkg -h upang makita ang natitirang mga parameter ng programa, bilang karagdagan sa nakikita ang opisyal na dokumentasyon ng makepkg sa Arch Linux Wiki ano ang mahahanap mo dito
Napakaganda ...
Maaari bang pamahalaan ang isang .exe package (naipon) sa isang Arch package?
Tulad halimbawa ng sikat na download manager mypony ??
Sa pagkakaalam ko na hindi posible, tandaan na ang .exe ay mga binary at hindi source code. Ngunit mayroong JDownloader.
Tulad ng sinabi mo, hindi ka maaaring muling magkasama ng isang exe dahil ito ay binary code.
Maaari kang lumikha ng isang pakete na mai-install ito at isinasagawa ito sa Alak tulad ng ginagawa ng package sa AUR ng kilalang P2P na programa ng Ares.
ang isang tao ay gumagamit ng linux at namimiss ang Myponi ... jijijijiji
Ang jDownloader ay nasa java, at kilala sa lahat na ang java ay sanhi ng cancer sa baga ...
kagiliw-giliw, kailangan naming subukan ang mga pakete sa palagay ko ay may hilig akong gawin ang isa mula sa qbittorrent hahaha mayroon na sa iyo ngunit ang pagkakaroon ng iyong sariling bersyon ay hindi masamang subukan, salamat sa impormasyon, pagbati.
Magandang input, +1
Nais kong idagdag na mas madali din ang mga ito upang likhain at mapanatili kaysa sa Gentoo ebuilds!
Tungkol kay Debian, sa palagay ko na ang distro na ito ay magtataas ng handicap nito nang napakalaki sa pamamagitan lamang ng paggawa ng moderno o paglipat sa isang mas modernong sistema ng package at package management, hindi ko alam kung kailan ang huling pag-update ng dpkg / apt set ngunit ang konsepto ay dapat na madaling magkaroon ng 15 taon at ang totoo ngayon ay anachronistic.
Maraming salamat, hinanap ko ito kamakailan sa wiki at hindi ko naintindihan ang istraktura (nais kong i-update ang PlayonLinux) ngunit sumuko pa rin ako ... may mga bagay na nais kong magkaroon ng isang katulong o isang bagay tulad nito (huwag mo akong kunan ng larawan) ngunit pa rin ... sa kawalan ng mga tool sa paglipas ng panahon makikita ko kung lumikha ako ng anuman
Salamat sa iyong gabay nagsimula akong likhain ang Zeya's PKGBUILD (http://web.psung.name/zeya/), sa sandaling matapos ko ito ay ina-upload ko ito sa AUR 🙂
Ganap na sumasang-ayon, kanina pa sinubukan kong lumikha ng isang pakete para sa Ubuntu at imposibleng makahanap ng naiintindihan na impormasyon sa kung paano gumawa ng isa, sa huli ay sumuko ako at na-install kong magaspang ang programa.
Ang parehong programa para sa Arch ay tumagal sa akin ng mas mababa sa 5 minuto upang pagsamahin ang package.
At hindi ako sigurado ngunit sa palagay ko ang RPM ay mas madaling gawin kaysa sa DEB, ngunit mas mahirap kaysa kay Arch.
Napakahusay at madali, at para sa .deb hindi ito gano kahirap, mabuti na para sa iOS
Regards
Sa palagay ko ito ay nagsilbi sa akin noong nakaraan kapag na-upload ko ang aking unang PKGBUILD sa AUR 🙂
Maaari bang ipaliwanag ng isang tao kung ano ito sa akin, bago ako, at hindi ko alam kung makakatulong ito sa akin na mai-install ang isang .deb package ngunit lokal sa manjaro, isang laro na magiging eksakto. Oo, gumagana ito?
Nagsulat lamang ako ng isa pang artikulo tungkol sa kung paano lumikha ng mga pakete para sa arch / manjaro mula sa .deb packages
https://blog.desdelinux.net/archlinux-crear-paquetes-multiplataforma-y-desde-paquetes-deb/
Oo, nakita ko na ito, ngunit napaka novell ko at hindi ko maintindihan kung hindi lamang ang linyang ito
cd "$ {srcdir} /"
data ng tar xvzf.tar.gz -C.
cp -r usr $ {pkgdir}
kung ano ang nasa likod mo
kung [«$ {CARCH}» = 'x86_64 ′]; tapos
ARCH = 'amd64'
md5sums=(‘192a0a222893d59d95f00c34f3c8a674’)
nakasalalay = ('openal' 'lib32-openal')
elif ["$ {CARCH}" = 'i686 ′]; tapos
ARCH = 'i386'
md5sums=(‘047c670443124193c5cc3dd54da99925’)
nakasalalay = ('openal')
fi
pinagmulan = ("http://www.unaurl.com/files/$ trackmaster. $ ARCH.deb")
Hindi ko ito maintindihan, mukhang napaka-kumplikado, ang mga ito ay magkasanib na hakbang o ang unang bahagi
cd "$ {srcdir} /"
data ng tar xvzf.tar.gz -C.
cp -r usr $ {pkgdir}
magagawa itong mag-isa upang mag-convert .deb. .tar.gz?