DWO 2010 - ArchLinux

33
arch arch linux linux III Dni Wolnego Oprogramowania III Dni Wolnego Oprogramowania Bielsko-Biała Bielsko-Biała 2010 2010 © Mikołaj Pastuszko © Mikołaj Pastuszko

description

ArchLinux introduction presented at Dni Wolnego Programowania 2010 in Bielsko-Biała, Poland

Transcript of DWO 2010 - ArchLinux

Page 1: DWO 2010 - ArchLinux

archarchlinuxlinux

III Dni Wolnego OprogramowaniaIII Dni Wolnego Oprogramowania

Bielsko-Biała Bielsko-Biała 20102010

© Mikołaj Pastuszko© Mikołaj Pastuszko

Page 2: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

22

AgendaAgenda

Arch? Co to jest?Arch? Co to jest?

Filozofia ArchFilozofia Arch

Porównanie z innymi dystrybucjamiPorównanie z innymi dystrybucjami

PakietyPakiety zarządzaniezarządzanie tworzenietworzenie repozytoriarepozytoria

KonfiguracjaKonfiguracja

Wisienki na torcieWisienki na torcie, czyli d, czyli dodatki odatki specjalnie dla Archspecjalnie dla Arch

Page 3: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

33

Arch? Co to jest?Arch? Co to jest?

Dystrybucja LinuksaDystrybucja Linuksa

Pierwsza wersja (0.1) opublikowania Pierwsza wersja (0.1) opublikowania 11 marca 200211 marca 2002

Tworzony przez Tworzony przez użytkownikówużytkowników

Łatwy... Łatwy... KISSKISS!!

Lekki, szybki, elastyczny...Lekki, szybki, elastyczny... Optymalizacja dla Optymalizacja dla i686i686 oraz oraz x86-64x86-64

Dla średnio zaawansowanych i zaawansowanychDla średnio zaawansowanych i zaawansowanych

Page 4: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

44

Arch? Co to jest?Arch? Co to jest?

Instalacja z konsoliInstalacja z konsoli Chakra ProjectChakra Project = Arch + LiveCD + instalator graficzny + KDE4 = Arch + LiveCD + instalator graficzny + KDE4

Pakiety binarne...Pakiety binarne... ...ale nie tylko! → ...ale nie tylko! → ABS ABS && AUR AUR

Zarządzanie pakietamiZarządzanie pakietami model rolling-releasemodel rolling-release

pacmanpacman

Page 5: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

55

FilozofiaFilozofia

Postulaty:Postulaty:

Prostota systemuProstota systemu

Wolność wyboruWolność wyboru

Nieustanne kształcenieNieustanne kształcenie

Zorientowanie na potrzeby użytkownikaZorientowanie na potrzeby użytkownika

Page 6: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

66

Prostota systemuProstota systemu

KKeep eep IIt t SSimple, imple, SStupidtupid

Co to znaczy prosty?Co to znaczy prosty?

Bez niepotrzebnych dodatków, modyfikacji i komplikacji.Bez niepotrzebnych dodatków, modyfikacji i komplikacji. Złożoność? Tak. Skomplikowanie? Nie.Złożoność? Tak. Skomplikowanie? Nie.

Jeśli próbujesz ukryć złożoność systemu, otrzymasz jeszcze bardziej Jeśli próbujesz ukryć złożoność systemu, otrzymasz jeszcze bardziej złożony system.złożony system.

Zamiast tego, spróbuj uczynić system przejrzystym i logicznym od Zamiast tego, spróbuj uczynić system przejrzystym i logicznym od samego środka.samego środka.

KKeep eep IIt t SSimple, imple, SStupidtupid

Page 7: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

77

Wolność wyboruWolność wyboru

Wolność od samego początkuWolność od samego początku Użytkownik decydujący się na korzystanie z Archa jest zobowiązany do Użytkownik decydujący się na korzystanie z Archa jest zobowiązany do

własnoręcznego dostosowania systemu do swoich potrzeb.własnoręcznego dostosowania systemu do swoich potrzeb.

Zamiast narzucania niepotrzebnych i niechcianych pakietów, Arch oferuje Zamiast narzucania niepotrzebnych i niechcianych pakietów, Arch oferuje możliwość budowy od podstaw, bez sugerowania konfiguracji domyślnej.możliwość budowy od podstaw, bez sugerowania konfiguracji domyślnej.

To To użytkownikużytkownik podejmuje wszelkie decyzje. podejmuje wszelkie decyzje.

Graficzne kreatory i konfiguratory?Graficzne kreatory i konfiguratory? W pewnym momencie użytkownik będzie potrzebować funkcjonalności, W pewnym momencie użytkownik będzie potrzebować funkcjonalności,

którą GUI przed nim ukrywa.którą GUI przed nim ukrywa.

Arch Linux is what Arch Linux is what youyou make it. make it.Judd Vinet, twórca dystrybucjiJudd Vinet, twórca dystrybucji

Page 8: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

88

Nieustanne kształcenieNieustanne kształcenie

Kształcenie użytkownikaKształcenie użytkownika Nauczenie się czegoś jest ważniejsze, niż osiągnięcie celu bez prawie Nauczenie się czegoś jest ważniejsze, niż osiągnięcie celu bez prawie

żadnych własnych wysiłków.żadnych własnych wysiłków.

++ KKeep eep IIt t SSimple, imple, SStupidtupid

== Proste narzędzia nieograniczające użytkownikaProste narzędzia nieograniczające użytkownika

WolnośćWolność

ElastycznośćElastyczność

SamokształcenieSamokształcenie

Page 9: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

99

Nieustanne kształcenieNieustanne kształcenie

Kształtowanie systemuKształtowanie systemu

Użytkownicy uczestnicząUżytkownicy uczestniczą w rozwoju → w rozwoju → społecznośćspołeczność

Użytkownicy publikująUżytkownicy publikują swoje paczki w swoje paczki w AUR AUR (Arch User Repository)(Arch User Repository)

Użytkownicy wybierająUżytkownicy wybierają paczki z paczki z AURAUR, które trafią do oficjalnych , które trafią do oficjalnych repozytoriówrepozytoriów

Page 10: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1010

Zorientowanie na użytkownikaZorientowanie na użytkownika

Pełna Pełna kontrolakontrola nad systemem nad systemem

Pełna Pełna odpowiedzialnośćodpowiedzialność za system za system

System powinien spełniać System powinien spełniać potrzebypotrzeby użytkownikaużytkownika To To użytkownikużytkownik podejmuje wszelkie podejmuje wszelkie decyzjedecyzje..

System jest System jest rozwijanyrozwijany przez przez użytkownikówużytkowników

Page 11: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1111

Fight!Fight!

vsvs

Page 12: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1212

archarchlinuxlinux vs Gentoo vs Gentoo

RóżniceRóżnice Pakiety:Pakiety: binarnebinarne ↔↔ źródłoweźródłowe

Update:Update: 5 minut5 minut ↔↔ 5 godzin5 godzin

Manifesty:Manifesty: PKGBUILDPKGBUILD ↔↔ ebuildebuild

Konfiguracja:Konfiguracja: KISS!KISS! ↔↔ 5 godzin...5 godzin...

PodobieństwaPodobieństwa Elastyczność i dostosowanie do Elastyczność i dostosowanie do potrzeb użytkownikapotrzeb użytkownika

OptymalizacjaOptymalizacja dla konkretnej architektury dla konkretnej architektury

Prosta instalacja pakietów ze źródełProsta instalacja pakietów ze źródeł

Model Model rolling releaserolling release

Page 13: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1313

archarchlinuxlinux vs Slackware vs Slackware

RóżniceRóżnice Pakiety:Pakiety: pacmanpacman ↔↔ ręcznieręcznie

Wersje pakietów:Wersje pakietów: rolling releaserolling release ↔↔ stabilnestabilne

Użytkowanie:Użytkowanie: KISS!KISS! ↔↔ trudnetrudne

PodobieństwaPodobieństwa Elastyczność i dostosowanie do Elastyczność i dostosowanie do potrzeb użytkownikapotrzeb użytkownika

Prosta i minimalistyczna budowa (Prosta i minimalistyczna budowa (KISSKISS))

Skrypty startowe w stylu Skrypty startowe w stylu BSDBSD

Page 14: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1414

archarchlinuxlinux vs Ubuntu vs Ubuntu

RóżniceRóżnice Rozwój:Rozwój: niezależnyniezależny ↔↔ sponsorowanysponsorowany

Użytkownicy:Użytkownicy: doświadczenidoświadczeni ↔↔ początkującypoczątkujący

Wersje systemu:Wersje systemu: rolling releaserolling release ↔↔ release co 6 miesięcyrelease co 6 miesięcy

Pakiety źródłowe:Pakiety źródłowe: ABS ABS (~ BSD ports)(~ BSD ports) ↔ ↔ ręcznieręcznie

Konfiguracja:Konfiguracja: KISS!KISS! ↔↔ GUI & kreatoryGUI & kreatory

Społeczność:Społeczność: mniejsza, aktywnamniejsza, aktywna ↔↔ większa, mniej aktywnawiększa, mniej aktywna

PodobieństwaPodobieństwa Linuksy...Linuksy...

Page 15: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1515

PakietyPakiety

ZarządzanieZarządzanie pacmanpacman

TworzenieTworzenie ABSABS

RepozytoriaRepozytoria AURAUR

Page 16: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1616

Pakiety - ZarządzaniePakiety - Zarządzanie

pacmanpacman

Napisany w języku Napisany w języku CC → szybki→ szybki

Pakiety w formacie Pakiety w formacie .tar.gz.tar.gz

Pakiety z Pakiety z repozytoriówrepozytoriów lub lub lokalnelokalne

Obsługa Obsługa zależnościzależności

Bardzo prosty w użyciuBardzo prosty w użyciu

Prosta konfiguracjaProsta konfiguracja → → /etc/pacman.conf/etc/pacman.conf

Page 17: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1717

Pakiety - ZarządzaniePakiety - Zarządzanie

SynchronizacjaSynchronizacja Instalacja, update, wyszukiwanieInstalacja, update, wyszukiwanie

# pacman -Spacman -S

Aktualizacja systemu jednym poleceniemAktualizacja systemu jednym poleceniem

# pacman -Syupacman -Syu

Informacje o pakietach i zależnościachInformacje o pakietach i zależnościach# pacman -Qpacman -Q

Instalacja pakietów lokalnychInstalacja pakietów lokalnych# pacman -Upacman -U

Page 18: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1818

Pakiety - TworzeniePakiety - Tworzenie

Co jest potrzebne?Co jest potrzebne? PKGBUILDPKGBUILD

Opcjonalnie dodatkowe skryptyOpcjonalnie dodatkowe skrypty

Jak zbudować?Jak zbudować?# makepkgmakepkg

Co się dzieje?Co się dzieje? Pobierane są źródłaPobierane są źródła

Sprawdzane są sumy kontrolne i zależnościSprawdzane są sumy kontrolne i zależności

Wykonywana jest kompilacja i skrypty budująceWykonywana jest kompilacja i skrypty budujące

Page 19: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

1919

PKGBUILDPKGBUILD

# Maintainer: Joe User <[email protected]>

pkgname=patchpkgver=2.5.4pkgrel=3pkgdesc="A utility to apply patch files to original sources"arch=('i686' 'x86_64')url="http://www.gnu.org/software/patch/patch.html"license=('GPL')groups=('base-devel')depends=('glibc' 'ed')source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz)md5sums=('ee5ae84d115f051d87fcaaef3b4ae782')

build() { cd $srcdir/$pkgname-$pkgver ./configure --prefix=/usr make || return 1 make prefix=$pkgdir/usr install}

Page 20: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2020

ABSABS

AArch rch BBuild uild SSystemystem Tworzenie Tworzenie nowych pakietównowych pakietów

Dostosowywanie Dostosowywanie istniejących pakietów → opcje kompilacjiistniejących pakietów → opcje kompilacji

Przebudowywanie Przebudowywanie systemu używając własnych flag kompilatorasystemu używając własnych flag kompilatora

System portów System portów podobny do BSDpodobny do BSD Drzewo reprezentujące oficjalne repozytoriumDrzewo reprezentujące oficjalne repozytorium

Zawiera pliki Zawiera pliki PKGBUILDPKGBUILD

/var/abs/.../var/abs/...

Page 21: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2121

Pakiety – RepozytoriaPakiety – Repozytoria

OficjalneOficjalne [core][core]

[extra][extra]

[community][community]

[testing], [community-testing][testing], [community-testing]

AUR AUR a.k.a. a.k.a. [unsupported][unsupported]

NieoficjalneNieoficjalne archlinux.frarchlinux.fr

KDEmodKDEmod

Page 22: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2222

AURAUR

AArch rch UUser ser RRepositoryepository

Baza plików Baza plików PKGBUILDPKGBUILD

Tworzona przez Tworzona przez społecznośćspołeczność

OgromnaOgromna

Głosowanie → Głosowanie → [community][community] Trusted UsersTrusted Users

Packages in unsupportedPackages in unsupported 2023520235

Packages added or updated in the past 7 daysPackages added or updated in the past 7 days 732732

Registered UsersRegistered Users 2075820758

EbuildsEbuilds 2677626776

Page 23: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2323

KonfiguracjaKonfiguracja

/etc/rc.conf/etc/rc.conf

Ustawienia językoweUstawienia językowe

Moduły jądraModuły jądra

SiećSieć

DemonyDemony

Start systemuStart systemu Styl Styl BSDBSD

/etc/rc.sysinit/etc/rc.sysinit → → /etc/rc.single/etc/rc.single → →

→ → /etc/rc.multi/etc/rc.multi → → /etc/rc.local/etc/rc.local

Page 24: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2424

KonfiguracjaKonfiguracja

/etc/pacman.conf/etc/pacman.conf Zachowanie pacmana (ignorowane pakiety itp.)Zachowanie pacmana (ignorowane pakiety itp.)

Adresy repozytoriów (mirrors)Adresy repozytoriów (mirrors)

/etc/makepkg.conf/etc/makepkg.conf Opcje i flagi kompilatoraOpcje i flagi kompilatora

Konfiguracja programu pakującegoKonfiguracja programu pakującego

/etc/abs.conf/etc/abs.conf Katalog z drzewem plików PKBGUILDKatalog z drzewem plików PKBGUILD

RepozytoriaRepozytoria

Page 25: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2525

Wisienki na torcieWisienki na torcie

YaourtYaourt

ArchAssistantArchAssistant

KDEmodKDEmod

ShamanShaman

Chakra ProjectChakra Project

Page 26: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2626

YaourtYaourt

YYet et AAnnOOther ther UUser ser RRepository epository TToolool

KonsKonsoolowa nakładka na lowa nakładka na pacmanpacmanaa

Obsługuje Obsługuje dodatkowo AURdodatkowo AUR WyszukiwanieWyszukiwanie

Kompilacja i instalacjaKompilacja i instalacja

Interfejs identyczny jak Interfejs identyczny jak pacmanpacman

Inne udogodnieniaInne udogodnienia Kolory, interaktywne wyszukiwanie, statystyki itp.Kolory, interaktywne wyszukiwanie, statystyki itp.

Page 27: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2727

ArchAssistantArchAssistant

Pomocnik Pomocnik żyjący na tacce systemowej (systray)żyjący na tacce systemowej (systray)

Administracja systememAdministracja systemem Obsługa Obsługa siecisieci (również (również WiFiWiFi))

→ → netcfg2netcfg2

Edycja plików systemowychEdycja plików systemowych

Informacje systemoweInformacje systemowe

Page 28: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2828

KDEmodKDEmod

KDE4KDE4 wzbogacone wzbogacone ShamanShaman

PlasmoidyPlasmoidy

OptymalizacjaOptymalizacja dla dla archarchlinuxlinux

ModularneModularne

RepozytoriaRepozytoria [kdemod-core], [kdemod-extragear], [kdemod-playground][kdemod-core], [kdemod-extragear], [kdemod-playground]

KDE3 → [kdemod-legacy]KDE3 → [kdemod-legacy]

Page 29: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

2929

ShamanShaman

GUI dla GUI dla pacmanpacmanaa Ścisła integracja → Ścisła integracja → szybkość!szybkość!

Manipulowanie repozytoriamiManipulowanie repozytoriami

Wsparcie dla Wsparcie dla ABSABS

Powiadamianie o dostępnych Powiadamianie o dostępnych aktualizacjachaktualizacjach

Obecnie prace nad Obecnie prace nad Shaman2Shaman2 Obsługa Obsługa dowolnegodowolnego managera pakietów → nie tylko managera pakietów → nie tylko archarchlinuxlinux!!

Obsługa Obsługa wtyczekwtyczek

ProstyProsty

Page 30: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

3030

ShamanShaman

Page 31: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

3131

Chakra ProjectChakra Project

Chakra ProjectChakra Project = = archarchlinuxlinux + + KDEmod + LiveCDKDEmod + LiveCD + + instalatorinstalator graficzny graficzny

CelCel

NowoczesnyNowoczesny system operacyjny system operacyjny

Interfejs Interfejs przyjaznyprzyjazny użytkownikowi użytkownikowi

Funkcjonalne Funkcjonalne narzędzianarzędzia

KISS!KISS!

Obecnie w fazie alphaObecnie w fazie alpha

Page 32: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

3232

ŹródłaŹródła

http://www.archlinux.org/http://www.archlinux.org/ http://wiki.archlinux.org/http://wiki.archlinux.org/

http://bbs.archlinux.org/http://bbs.archlinux.org/

http://aur.archlinux.org/http://aur.archlinux.org/

http://archux.com/http://archux.com/

http://www.arch-linux.pl/http://www.arch-linux.pl/

http://chakra-project.org/http://chakra-project.org/

Page 33: DWO 2010 - ArchLinux

20102010© Mikołaj Pastuszko© Mikołaj Pastuszko

3333

DziękujęDziękuję

Pytania?Pytania?