„Archlinux“: sukurkite paketus tarp platformų ir iš .deb paketų

Maždaug prieš metus paaiškinau, kaip sukurti „Archlinux“ paketus. Na, šiandien aš paaiškinsiu, kaip juos sukurti iš paketų deb, naudojamų Debian / Mint / Ubuntu / kt.
Šis straipsnis atsirado perskaičius vartotojo klausimą forume jorgegc nes negalėjau įdiegti paketo iš AUR, daugiausia dėl to, kad jis yra pasenęs ir naudojama versija nutrauktas PKGBUILD (laimei, aš anksčiau taip dariau paketus), aš taip pat paaiškinsiu, kaip padaryti programų paketus, kuriems reikia 32 bitų bibliotekos, iš uždaras kodas o jau surinkta ir kad jis turi skirtingus paketus atsisiųsti.

PKGBUILD pagrindas yra tas pats, tik su keliais pakeitimais.
Pirmasis pakeitimas bus sakinio naudojimas jei elifas pateikė Bashas


if [ "${CARCH}" = 'x86_64' ]; then
ARCH='amd64'
md5sums=('192a0a222893d59d95f00c34f3c8a674')
depends=('openal' 'lib32-openal')
elif [ "${CARCH}" = 'i686' ]; then
ARCH='i386'
md5sums=('047c670443124193c5cc3dd54da99925')
depends=('openal')
fi
source=("http://www.unaurl.com/files/${name}.$ARCH.deb")

Šiame pavyzdyje buvo apibrėžtas kintamasis, kuris vėliau bus naudojamas keičiant URL adresas kur yra paketas (šiuo atveju reikia atsisiųsti paketo architektūrą).
Be to, atsižvelgiant į architektūrą, MD5 sumos taigi mes juos pakeisime į atitinkamus.

Naudojant makepkg -g generuoti MD5 sumos Tai sukurs tik tą, kuri atitinka jūsų naudojamą architektūrą. Norėdami sužinoti kito paketo MD5 sumą, atsisiųskite jį ir naudokite komandą md5sum file.deb žinoti tavo

Galiausiai matome, kad pavyzdyje keičiame priklausomybes. Kai kurias 64 bitų programas būtina įdiegti Kai kurių bibliotekų 32 bitų versijos todėl turime juos nurodyti. Jei jie nėra būtini, paprasčiausiai apibrėžkite kintamąjį įprastu būdu.

Dabar „.deb“ paketams mums reikės tik šios eilutės funkcijos viduje paketas ():

cd "${srcdir}/"
tar xvzf data.tar.gz -C .
cp -r usr ${pkgdir}

Kaip matote, paketui sugeneruoti šiuo atveju reikia tik 3 eilučių. Jei kas nors yra būtina (pavyzdžiui, nukopijuoti failą, kuris nėra kartu su paketu, arba pakeisti jo turinį), jūs tiesiog turite įdėti jį kaip į bet kurį kitą paketą.

Tas pats gali būti taikoma (su tam tikrais pakeitimais), jei vietoj .deb mes naudosime paketus min ar kitokio tipo pakuotes. Funkcija statyti () nereikia, todėl mums jo nereikia pridėti.

O voila, mes jau turime daugiapakopį paketą arba sukurtą iš deb paketo, paruoštą naudoti.
Tikiuosi, kad jums tai patinka ir kad tai man gerai paaiškino 😀


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   bjaurumas sakė

    Ar ne lengviau naudoti „checkinstall“?

  2.   Luciano Lagassa sakė

    Sveiki. Turiu keletą bash scenarijų. Vienas, skirtas generuoti pagrindinius deb paketo aplankus ir failus. Ir paskutinis, kuris sugeneravo paketą iš visų failų ir aplankų. Jei domina, galiu pasidalinti.

    1.    jorgecg sakė

      Žinoma, kad tai domina ... bent jau mane.

      Dabar, kai esu su „Manjaro“, vertinu visą įmanomą informaciją.

  3.   jorgecg sakė

    Koks tu esi partneris.

    Forume ketinau jums pasakyti, kad jei galėtumėte man paaiškinti, kaip sudaryti .deb paketus, aš nieko jums nesakiau, kad nepiktnaudžiautų jūsų dosnumu ... aš einu į puslapį ir matau, kad jūs įkėlėte straipsnį, kuriame paaiškintas visas procesas.

    Tai rodo, kad esate dosnus žmogus.

    Aš sakiau: tu esi plyšys.

    Sveikinimas

  4.   Anibal sakė

    Tai puikus draugas, kartą bandžiau programinę įrangą, kuri nepamenu pavadinimo, kuris iš .deb pavertė .rpm, bet man jis nebuvo tinkamas.

    Ar gali kas nors, turintis arkos testą, jei ši programinė įranga gerai perduodama apsisukimams per minutę ir instaliacija gerai atsidaro?

    http://www.justcloud.com/download/linux-64

    Tai yra atsarginės kopijos kūrimas debesyje, kurį laiką jau mokėjau ir debesyje turiu daugiau nei 40 GB =)

  5.   Inspironas sakė

    Puiku! Visada sakiau sau, kad vieną dieną norėjau pasidaryti pakuotę, net jei norėčiau žinoti, kaip tai padaryti :).

    Tokių tipų pranešimuose būčiau dėkingas, kad tinklaraštyje būtų įdiegta galimybė pridėti tokius įrašus į mano paskyros „parankinius“

    1.    chinoloko sakė

      Visiškai sutinku, aš jį pasėjau, bet nieko 🙂
      Taip pat būtų gerai, kad galėtum sekti tam tikrus vartotojus

  6.   Raba sakė

    Šaunusis senukas, kelias dienas naudoju manjaro, o studijoms reikia įdiegti paketinį žymeklį iš „Cisco“, tačiau jame yra tik naujausios versijos .deb paketas, o ke yra AUR, man visada kompiliuojant kyla klaida, tikiuosi, atlikdamas šiuos veiksmus galiu jį įdiegti kadangi jėga naudojau „Linux mint“, labai ačiū

  7.   mitcoes sakė

    pamatyti, ar kas nors išdrįsta įdėti AUR Multisystem

    priklauso nuo deb bibliotekų, kurių nėra arch

    Bet jei jis veikia, jo funkcija yra sukurti kelis ISO „Pendrive“ su „grub2“ geriau nei „Unetbootin“, kuris veikia tik vieną.

    Šiuo metu jo viduje yra „ubuntu ISO“, leidžiantis pridėti vaizdų, jei noriu iš jo paleisti į patį USB

    bet jei niekas nedrįsta išsaugoti mano bilieto

  8.   mitcoes sakė

    Deja, jau yra multisistema, ir manau, kad ne

    1.    mitcoes sakė

      Daugiasistemėje ...

      bet riebalai didėja, nes jurtas kelia problemų, ir jie tai pasirinko

  9.   Marcos sakė

    Puiku 😀 patvirtinti programą „Purrr“, kad būtų galima pervadinti failus masiškai.

  10.   Apr4xas sakė

    Pagarbiai,

    Šiuo metu AUR jie pašalina paketus, neturinčius paketo () funkcijos, iš kur aš galiu žinoti, kokias eilutes ten įdėti? Tai yra, aš turiu kelis paketus ir aš tai padariau tokiu būdu, bet aš nežinau, ar tai gerai https://github.com/abr4xas/Arch-pkgbuild/blob/master/%20django-admin-honeypot/PKGBUILD ką aš iš tikrųjų padariau, tai perdaviau tai, kas buvo „build“ (), paketui (), bet, kaip sakiau, nežinau, ar tai gerai ... Ar galėtumėte pateikti savo komentarus ir pasiūlymus?

    Ačiū 😀

  11.   Azazel sakė

    Dėkojame už informaciją, kurią pažymėsiu ateityje.

  12.   klerafelis sakė

    Ar kas nors gali man paaiškinti, kas tai yra aš, aš esu naujas ir nežinau, ar tai man padeda įdiegti .deb paketą, bet vietoje manjaro, tiksliau žaidimą. Taip, tai veikia?

    Aš ieškau ir jie man liepia įdiegti „deb2targz“ paketą, bet diegiant jį iš terminalo gaunu klaidą ir nežinau, ar jis gali būti

    1.    Ghermainas sakė

      Tas pats nutinka ir man; Turiu įdiegti „Kademar“, kuris yra pagrįstas „Arch“; porą pakuočių, kurias gaunu tik .deb
      Ar gali kas nors man padėti?

      1.    valdo sakė

        Jei turite omenyje deb2targz diegimo gedimą, aš ką tik baigiau jį įdiegti naudodamas komandą yaourt -S deb2targz. Žinoma, „ArchLinux“.

  13.   Nemokamas saugojimas debesyje sakė

    Labai informatyvus įrašas. Ačiū už dalinimąsi.

  14.   Pikti paukščiai sakė

    Geras įrašas. Dėkojame, kad pasidalijote šia naudinga informacija.

  15.   Programos, skirtos asmeniniam kompiuteriui sakė

    Dėkojame už šį naudingą įrašą. Tai labai padės.

  16.   jacob sakė

    labas, ar galite palikti scenarijų konversijai ir kaip jį naudoti? tai, kad dalimis tai šiek tiek glumina, aš jau turiu debą, kurį noriu konvertuoti, ir žinau, kad tai įmanoma, nes AUR google chrome yra debasas, bet aš nežinau, kaip padaryti "MAKEPKG SI" su kita deb 🙁