Skip to content
/ gentools Public
forked from pwasiewi/gentools

Tools for easy installation of Gentoo Linux in Virtualbox from LiveUSB - even Ubuntu (comments in Polish)

License

Notifications You must be signed in to change notification settings

42n4/gentools

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to LIVEUSB gentools! (easy to remember: https://bit.ly/gen2ls)

Aby uruchomic liveusb nalezy je zbootowac z wlaczona opcja w BIOSIE boot from
dvd lub usb. 
Wyrozniamy dwa rodzaje operacji 

I. INSTALACJA Z OFICJALNEGO LUB UBUNTU LIVEDVD/USB NA VIRTUALBOX

##############################################################
#1etap
#------------------------------------------------------------

sudo su -

#------------------------------------------------------------
#Skrypty do screencastów o sprawnej instalacji gentoo https://bit.ly/gentools
#------------------------------------------------------------
#STARSZA WERSJA skryptów (PRZESTARZAŁA): wget -c https://bit.ly/gentools01  -O/config.txz
#NOWSZA WERSJA skryptów: 

wget https://raw.githubusercontent.com/pwasiewi/gentools/master/usr/local/bin/gentoolcfg
chmod 755 ./gentoolcfg
./gentoolcfg #utworzy /config.txz ze źródeł z gentools repozytorium
cd / && tar Jxvf config.txz && cd

#------------------------------------------------------------
#zainstaluj vim, jak go nie ma

#na Gentoo LiveDVD: emerge vim

#na Ubuntu LiveDVD: apt install vim
#------------------------------------------------------------

v a p #edytuj settings chroot na /dev/sda5 

#------------------------------------------------------------
#RAMDISK=1 instalacja izolowana np. z UbuntuLiveDVD bez wspolnego np. portage z hostem
#UWAGA /dev/sda5 to partycja roota dla dysku z wirtualboxa
#uwaga na symbol /DEV/SDA, czy opisuje on wlasciwy dysk
#POCZATEK - ustawianie partycji w virtualboxie, kiedy dysk /dev/sda jest niezajęty
#------------------------------------------------------------

genformathdemo /dev/sda

#------------------------------------------------------------
#KONIEC  - ustawianie partycji w virtualboxie-----------------
#W razie ponownych zmian usuwanie partycji:
#for v_partition in $(parted -s /dev/sda print|awk '/^ / {print $1}'); do parted -s /dev/sda rm ${v_partition}; done
#Rozmiar dysku: parted -s /dev/sda print|awk '/^Disk/ {print $3}'|sed 's/[Mm][Bb]//'
#------------------------------------------------------------

v a f #sciagnij stage3/4
#etap trwa 23min
time v a 1 #rozpakuj stage3/4, portage i popraw make.conf, vim
v a e #chroot na nowy system gentoo do zmiany hasła

#------------------------------------------------------------
#POCZATEK wpisywania komend: v a e 
#jak potrzeba edytuj fstab:  vim /etc/fstab
#zmien haslo:                passwd #ZMIANA HASLA NA ROOTA NA WLASNE
#CTRL-d wychodzi z:          v a e
#KONIEC   wpisywania komend: v a e 
#REBOOT i dalsza instalacja np. plasma-meta
#------------------------------------------------------------

reboot

##############################################################
#2etap podmiana gcc na nowsze i kompilacja boost
#------------------------------------------------------------
v a 2host
#------------------------------------------------------------
##update na nowszy gcc - etap dodatkowy
##kompilacja trwa 30min
#vex sys-devel/gcc
#OLDGCC=`gcc-config -c | cut -d'-' -f 5`
#e gcc
#gcc-config -l
#gcc-config 2
#. /etc/profile
#env-update
#fix_libtool_files.sh ${OLDGCC}
#e libtool n


##############################################################
#3etap uaktualnienie systemu z odblokowanymi flagami USE
#------------------------------------------------------------
v a 3host
#------------------------------------------------------------
##kompilacja trwa 2h
#sed -i 's/#USE="${USE} video/USE="${USE} video/g' /etc/portage/make.conf
#sed -i 's/#USE="${USE} gimp/USE="${USE} gimp/g' /etc/portage/make.conf
#sed -i 's/#USE="${USE} tools/USE="${USE} tools/g' /etc/portage/make.conf
#sed -i 's/bindist/-bindist/g' /etc/portage/make.conf
#sed -i 's/-X\ /X\ /g' /etc/portage/make.conf
#e w #emerge -uND world  - upgrade world - 214 pakietow w ponad 2h


##############################################################
#4etap instalujemy git i laymana do dodatkowych pakietow
#------------------------------------------------------------
v a 4host
#------------------------------------------------------------
##kompilacja trwa 7 min
#e u gpm app-misc/mc ntp
#/etc/init.d/ntp-client start
#/etc/init.d/gpm start
#rc-update add gpm default
#e u layman #okolo 32 aplikacji po etapie 3 aktualizacji 238 aplikacji
#sed -i 's/^check_official : Yes/check_official : no/' /etc/layman/layman.cfg
##layman -L
##layman -a kde
##layman -a x11
##layman -a sabayon 
#eix-update
#e w


##############################################################
#5etap dodatkowe pakiety i update systemu po dodaniu overlayow
#------------------------------------------------------------
v a 5host
#------------------------------------------------------------
##polecane programy - 103 aplikacji
##kompilacja trwa 16min
vex sys-fs/reiserfsprogs
#vex sys-fs/mdadm
#vex sys-fs/squahsfs-tools
#vex net-analyzer/xprobe
#vex app-admin/pass
#vex dev-python/pymountboot
#vex app-admin/eclean-kernel
#vex app-portage/diffmask
#vex app-portage/install-mask
#vex app-portage/gpytage
#veu "dev-libs/libgpg-error static-libs"
#veu "dev-libs/lzo static-libs"
#veu "dev-libs/libgcrypt static-libs"
## https://wiki.gentoo.org/wiki/Recommended_applications
## https://wiki.gentoo.org/wiki/Recommended_tools
## https://wiki.gentoo.org/wiki/Useful_Portage_tools
#sed -i 's/PYTHON_SINGLE_TARGET="python3_4"/PYTHON_SINGLE_TARGET="python2_7"/g' /etc/portage/make.conf
#e u rlwrap most dvtm pass pfl pybugz elogv eclean-kernel diffmask flaggie install-mask portpeek smart-live-rebuild ufed gpytage net-misc/curl pydf ncdu acpi acpitool htop atop lsof iotop iftop squashfs-tools sudo suspend p7zip sg3_utils testdisk logrotate gentoolkit f2fs-tools btrfs-progs

##############################################################
#6etap kompilacja pakietu 
#------------------------------------------------------------
v a 6host
#------------------------------------------------------------
##kompilacja networkmanager
##kompilacja trwa 12min
#vex net-misc/modemmanager
#veu "kde-plasma/plasma-desktop legacy-systray"
#veu ">=sys-libs/libblockdev-2.14-r1 cryptsetup"
#veu ">=net-dialup/ppp-2.4.7-r3 ipv6"
#veu ">=media-sound/pulseaudio-11.1 gnome"
#veu "media-plugins/alsa-plugins pulseaudio"
#e u networkmanager


##############################################################
#7etap caly desktop plasma min. 80min
#------------------------------------------------------------
v a 7host
#------------------------------------------------------------
##kompilacja plasma-5.11 287 aplikacji
##kompilacja trwa 85min
#vep sys-auth/elogind-235.2-r1
#vep net-misc/networkmanager-1.10.2
#vex kde-frameworks/extra-cmake-modules
#vex kde-frameworks/networkmanager-qt
##https://wiki.gentoo.org/wiki/Project:Python/PYTHON_TARGETS
#sed -i 's/PYTHON_SINGLE_TARGET="python2_7"/PYTHON_SINGLE_TARGET="python3_4"/g' /etc/portage/make.conf
#echo 'CFLAGS=""' > /etc/portage/env/empty1core
#echo 'CXXFLAGS=""' >> /etc/portage/env/empty1core
#echo 'LDFLAGS=""' >> /etc/portage/env/empty1core
#echo 'MAKEOPTS="-j1"' >> /etc/portage/env/empty1core
#echo "dev-libs/libappindicator empty1core" >> /etc/portage/package.env/moje.env
#time emerge @kde-plasma-5.11
#e u konsole kde-apps/dolphin media-video/plasma-mediacenter

##############################################################
#8etap dodatkowe pakiety, x11 virtualbox, nowy uzytkownik
#------------------------------------------------------------
v a 8host
#------------------------------------------------------------
##kompilacja trwa 1h plus upgrade po usunieciu flag use wstawionych veu
##https://wiki.gentoo.org/wiki/Fontconfig#Explanation
##41 aplikacje 8min
#e u setxkbmap xdpyinfo xrandr xkill xterm alsamixergui gparted freetype media-fonts/liberation-fonts pavucontrol
##sieci
#veu "dev-libs/nss utils"
##5 min
#e u x11-misc/bumblebee feh lm_sensors xsensors lft nload yersinia vnstat xprobe wavemon geoipupdate qpdfview scite iptraf-ng libreswan openvpn quagga 
##uzytkowe
#vex www-client/firefox-bin
#vex app-emulation/lxc
#vex app-emulation/docker
#vex sys-process/criu
#vex app-emulation/containerd
#vex app-emulation/docker-runc
#vex app-emulation/docker-proxy
##17 aps 3min
#e u firefox-bin app-emulation/docker lxc 
##e w
#vex dev-util/scons
#vex net-libs/nghttp2
#vex net-libs/http-parser
#vex net-libs/nodejs
#vex dev-libs/libuv
#vex app-admin/mongo-tools 
#vex dev-db/mongodb 
##echo "dev-db/mongodb empty1core" >> /etc/portage/package.env/moje.env
##45 apps 20min bez nodejs i octave
#e u cdrtools dvd+rw-tools libisoburn R octave nodejs opera mongodb
#vex x11-drivers/xf86-video-vboxvideo
#vex dev-util/kbuild
#vex app-emulation/virtualbox-guest-additions
##e app-emulation/virtualbox-guest-additions
##9min
#e u virtualbox 
#vex x11-drivers/xf86-video-virtualbox
#e u x11-drivers/xf86-video-virtualbox
##potem nalezy dodac uzytkownika
#useradd -m -g users guest
#echo 'exec startkde' > /home/guest/.xinitrc
#chown -R guest:users /home/guest/
#usermod -aG docker guest
#usermod -aG wheel guest
#usermod -aG audio guest
#usermod -aG video guest
#echo Wykonaj: passwd guest
##passwd guest
#vex app-text/calibre
#vex media-gfx/gimp
##e u calibre gimp vlc mplayer
##e u skype google-chrome steam-launcher blender 
##FINALNY UPDATE
##sed -i 's/PYTHON_SINGLE_TARGET="python2_7"/PYTHON_SINGLE_TARGET="python3_4"/g' /etc/portage/make.conf
#veu "gnome-base/libglade PYTHON_SINGLE_TARGET: -* python2_7"
#veu "app-text/asciidoc PYTHON_SINGLE_TARGET: -* python2_7"
##14 apps 3min
#e w

##############################################################

II. INSTALACJA LUB URUCHOMIENIE WLASNEGO GENTOO USB

Na wlasnym komputerze nalezy wczesniej wydzielic (np. za pomoca Partition
Magic, gdisk) trzy male partycje 10MB, 10MB, 100MB oraz wolna partycje o
rozmiarze okolo 20GB (sformatowac ext4, jesli dla ssd to z parametrami stride,
stripe-width).
Symbole partycji rodzajow w gdisku: EF00, EF02, 8300, 8300 czyli 2 dla boota
EFI i dwie dla systemu w tym pierwsza dla kerneli.
Dla pewnosci wydzielic jeszcze mozna partycje swap o rozmiarze co najmniej polowy pamieci fizycznej RAM zamontowanej w komputerze.

Po uruchomieniu liveusb po komendzie sg_map zorientowac sie, jak nazywa sie
dysk z partycja kilkugigabajtowa, komenda gdisk /dev/sd?? znalezc ta partycje (ALE NIE POMYLIC SIE), sformatowac ja (TA ODDZIELONA) systemem plikow np.  

Zamontowac glowna partycje /dev/sd? na katalogu /mnt/gentoo poleceniem:
montuj-dysk /dev/sd? 
lub jesli dysk ssd:
montuj-ssd /dev/sd? 
albo jesli dysk samsung evo:
montuj-evo /dev/sd? 

Zamontowac partycje boot na kernele:
mount /dev/sd? /mnt/key
i skopiowac kernele
cp -a /boot/* /mnt/key

Edytowac dodajac poprzednio sformatowane partycje pliki konfiguracyjne np.:
vim fstab 
cp -a fstab inittab /mnt/gentoo/etc

mchroot /mnt/gentoo
mount /boot
grub-install /dev/sdx
grub-mkconfig -o /boot/grub/grub.cfg

Zmieniamy haslo roota: passwd 

Po ponownym zbotowaniu z twardego dysku, w menu systemow wybor Gentoo, 
mozna sie zalogowac na roota i dodac nowego uzytkownika i jego haslo:
adduser -m nazwa_loginu
passwd nazwa_loginu

Potem po podlaczeniu do sieci - jesli juz nie podlaczylo automatycznie - (konfiguracja w /etc/conf.d/net) poprzez komende
/etc/init.d/net.eth0 restart
lub
/etc/init.d/net.enp0s3 restart
wykonujemy polecenia (wyjasnienie ponizej):
emerge --sync
itd.... ;)
Jesli w /etc/portage/repos.conf sa overlaye dla laymana > 2.2.2
layman -a kde
layman -a stuff
layman -a sabayon
layman -a toolchain;

Otrzymujemy system gotowy do dzialania.

##############################################################
UZYTKOWANIE GENTOO

emerge --sync #e m
Sprowadza drzewo portage czyli nazwy pakietow (dokladnie plikow ebuild) i 
ich zaleznosci

layman -L
Sprowadza liste ebuildow

layman -a kde
layman -a x11
layman -a stuff
layman -a sabayon
layman -a toolchain;
Sprowadza przykladowe overlay'e 

Updatowanie eksperymentalnych list zainstalowanych na lokalnym komputerze
layman -s ALL
lub wszytskiego
emaint -A sync

layman -a nazwa_overlayu - dodaje jedna liste (overlay) ebuildow zamieszczonych na gentoo.org przez entuzjastow danych programow pragnacych testowac ich najnowsze opcje

layman -L
Wypisanie wszystkich list eksperymentalnych zamieszczonych na gentoo.org

layman -l 
Wypisanie eksperymentalnych list ebuildow zainstalowanych na lokalnym
komputerze

vim /etc/make.conf
Mozna edytowac tam flagi procesora, ale przede wszystkim flagi systemu portage
wystepujace po slowie USE="..." w cudzyslowie np. USE="gnome kde" czyli
skompilowac programy ze wsparciem dla Gnome i KDE

vim /etc/portage/package.use/package.use
Tutaj flagi systemu portage mozna przypisac do poszczegolnych programow, jesli
roznia sie od flag o globalnym zasiegu z pliku /etc/make.conf

vim /etc/portage/package.keywords/package.keywords
Tu dodaje sie pakiety, ktore sie chce skompilowac z kodow zrodlowych wersji
deweloperskich czyli z reguly prawie lub najnowszych. Jesli zalezy komus tylko
na stabilnosci to radze usunac jak najwiecej pakietow z tego pliku, ale komu
na tym zalezy, kiedy uzywa Gentoo...

vim /etc/portage/profile/package.provided
Zamieszczone tu tytuly pakietow nieobecnych, ktore "oszukuja"
system, ze sa w nim nadal obecne lub powoduja brak aktualizacji 

emerge -uND world  #e w
Updatuje po sprowadzeniu najnowszego drzewa za pomoca wczesniejszego emerge --sync pakiety do nowszych wersji i ewentualnie zmienionych flag systemowych w /etc/make.conf i /etc/portage/package.use

emerge -fuN world 
Sprowadza najpierw kody zrodlowe, potem trzeba wpisac emerge -uN world, ale
polaczenie sieciowe jest juz zbedne, kompilacje wykonaja sie off-line, gdyz
wszystko co potrzebne do nich zostalo sprowadzone opcja -f

emerge -uNp world
Wypisuje nazwy programow do skompilowania bez samego kompilowania

emerge -uNpv world 
Wypisuje nazwy programow do skompilowania bez samego kompilowania wraz z
flagami systemu portage, ktore zostana uzyte przy kompilacji programu

emerge -uNpvt world
Wypisuje nazwy programow do skompilowania bez samego kompilowania wraz z
flagami systemu portage, ktore zostana uzyte przy kompilacji programu oraz
hierarchia pakietow zobrazowana w postaci wciec - semi-drzewa tekstowego 

emerge -e world #e e w
Rekompiluje od nowa kazdy zainstalowany program

emerge liquorix-sources 
Sprowadza kod zrodlowy liquorix-sources
Osobno sprowadzamy plik konfiguracyjny .config
lub generujemy w zaleznosci od potrzeb w /usr/src/linux:
make defconfig; make kvmconfig

About

Tools for easy installation of Gentoo Linux in Virtualbox from LiveUSB - even Ubuntu (comments in Polish)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 46.0%
  • Makefile 24.7%
  • HTML 9.3%
  • Python 7.2%
  • Perl 6.0%
  • Java 2.0%
  • Other 4.8%