πŸ“œ Руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎ созданию ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Debian

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Debian

by itisgood

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° DebianΒ  ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², Π½ΠΎ ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ ΠΏΠΎΠΉΠΌΡ‘Ρ‚Π΅ процСсс, ΠΎΠ½ станСт Π²ΠΏΠΎΠ»Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌΡ‹ΠΌ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ созданиС вашСго ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Debian.

Π¨Π°Π³ 1: Настройка окруТСния

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π½Π° вашСй машинС установлСн дистрибутив Linux Π½Π° Π±Π°Π·Π΅ Debian.

Ubuntu – популярный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, Π½ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ дистрибутивы Π½Π° Π±Π°Π·Π΅ Debian, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Mint, Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡƒΡ‚.

Π”Π°Π»Π΅Π΅, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Debian.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ инструмСнтом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, являСтся dpkg-deb, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ поставляСтся прСдустановлСнным Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ систСм Π½Π° Π±Π°Π·Π΅ Debian.

Однако Π²Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ понадобится нСсколько Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ apt-get:

sudo apt-get install build-essential devscripts debhelper 

Π­Ρ‚ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ основныС инструмСнты компиляции (Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ gcc ΠΈ make), Π° Ρ‚Π°ΠΊΠΆΠ΅ инструмСнты, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ для создания ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Debian.

Π¨Π°Π³ 2: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²

ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ Debian ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ структуру ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ.

Для Π½Π°Ρ‡Π°Π»Π° создайтС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для вашСго ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΎ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΊΠ°ΠΊ имя-вСрсия.

НапримСр, Ссли имя вашСго ΠΏΠ°ΠΊΠ΅Ρ‚Π° “mypackage”, Π° вСрсия 1.0, ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π±ΡƒΠ΄Π΅Ρ‚ mypackage-1.0.

Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ создайтС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

mkdir mypackage-1.0 

Π’Π½ΡƒΡ‚Ρ€ΠΈ этого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ:

DEBIAN: Π—Π΄Π΅ΡΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ dpkg, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ.

usr/bin: Бюда ΠΏΠΎΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ эти ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

mkdir -p mypackage-1.0/DEBIAN
mkdir -p mypackage-1.0/usr/bin 

Π¨Π°Π³ 3: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Π°

Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ» являСтся ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ любого ΠΏΠ°ΠΊΠ΅Ρ‚Π° Debian.

Он прСдоставляСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π΅, Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°ΠΊ Π΅Π³ΠΎ имя, вСрсия, Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°, зависимости ΠΈ Ρ‚.Π΄.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° создайтС Ρ„Π°ΠΉΠ» control Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ DEBIAN со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ содСрТимым:

Package: mypackage
Version: 1.0
Section: base
Priority: optional
Architecture: all
Depends: libc6 (>= 2.7), libncurses5 (>= 5.7)
Maintainer: Your Name <your.email@example.com>
Description: My first Debian package

ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ “Your Name” ΠΈ “your.email@example.com” Π½Π° вашС настоящСС имя ΠΈ адрСс элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹.

Π’ ΠΏΠΎΠ»Π΅ “Depends” Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ пСрСчислСны всС зависимости, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅ΡΡ‚ΡŒ Ρƒ вашСго ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

Π¨Π°Π³ 4: Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ²

ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹ вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ usr/bin. НапримСр, Ссли Ρƒ вас Π΅ΡΡ‚ΡŒ скрипт ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ с ΠΈΠΌΠ΅Π½Π΅ΠΌ myprogram, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ usr/bin с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ:

cp myprogram mypackage-1.0/usr/bin/ 

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» исполняСмым с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

chmod +x mypackage-1.0/usr/bin/myprogram 

Π¨Π°Π³ 5: Π‘Π±ΠΎΡ€ΠΊΠ° ΠΏΠ°ΠΊΠ΅Ρ‚Π° Debian

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Ρƒ вас всё Π³ΠΎΡ‚ΠΎΠ²ΠΎ, ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Debian.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° вашСго ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ dpkg-deb для сборки ΠΏΠ°ΠΊΠ΅Ρ‚Π°:

dpkg-deb --build mypackage-1.0 

Если всС ΠΏΡ€ΠΎΡˆΠ»ΠΎ Π³Π»Π°Π΄ΠΊΠΎ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ mypackage-1.0.deb.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ dpkg -i:

sudo dpkg -i mypackage-1.0.deb 

ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΠ΅ΠΌ, Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ создали свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ Debian!

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Debian – это Π²Π°ΠΆΠ½Ρ‹ΠΉ Π½Π°Π²Ρ‹ΠΊ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с систСмами Π½Π° Π±Π°Π·Π΅ Debian.

Он позволяСт Π²Π°ΠΌ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ вашС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π² стандартизированном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»Π΅Π³ΠΊΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌ.

 

 

Loading

You may also like

Leave a Comment