Primero boteá ArchLinux descargá la ISO de acá: https://archlinux.org/download/
Quemá la ISO en un pendrive usando
dd if=archlinux.iso of=/dev/sdb status=progress bs=4098
https://kisslinux.github.io Está obsoleto, el creador desapareció pero la comunidad de KISS decidió forkearlo acá: https://kisscommunity.org/kiss/install/
Al bootear ArchLinux particionemos el disco.
Si estás en una VM podes directamente crear una única partición
o
n
p
1
Enter
Enter
w
g (gpt disk label)
n
1 (partition number [1/128])
2048 first sector
+300M last sector (boot sector size)
t
1 (EFI System)
n
2
default
+4G
t
2
swap
n
3
default (fill up partition)
default (fill up partition)
w (write)
Descargá el último release kiss-chroot de acá: https://codeberg.org/kiss-community/repo/releases
Extraélo como root
.
mkfs.fat -F 32
(explicado en el artículo de ArchLinux)mkfs.ext4 /dev/sda1
mount /dev/sda1 /mnt
cd /mnt
lynx https://kisscommunity.org/kiss/install/
De ahí dale a `latest-release` bajá hasta donde dice `Downloads` y descargá `kiss-chroot-24.12.18.tar.xz`, **Download and Save to Disk**.
tar xvf kiss-chroot-24.12.18.tar.xz # Descomprimí como root
genfstab -U /mnt >> /mnt/etc/fstab
bin/kiss-chroot .
En el archivo /etc/profile.d/kiss_path.sh
vi /etc/profile.d/kiss_path.sh
:
export REPOS_DIR='/var/db/kiss'
export KISS_PATH=''
KISS_PATH=$KISS_PATH:$REPOS_DIR/repo/core
KISS_PATH=$KISS_PATH:$REPOS_DIR/repo/extra
KISS_PATH=$KISS_PATH:$REPOS_DIR/repo/wayland
KISS_PATH=$KISS_PATH:$REPOS_DIR/community/community
export CFLAGS="-O2 -march=native"
export CXXFLAGS="$CFLAGS"
export MAKEFLAGS="-j2"
export KISS_SU=su
Cargamos las variables:
cp /etc/profile.d/kiss_path.sh .profile
source ~/.profile
echo $KISS_PATH
cd /var/db/kiss
git clone https://codeberg.org/kiss-community/repo
git clone https://codeberg.org/kiss-community/community
cd repo
git config gpg.ssh.allowedSignersFile .allowed_signers
git config merge.verifySignatures true
kiss update
cd /var/db/kiss/installed && kiss build *
kiss b e2fsprogs dosfsprogs xfsprogs util-linux dhcpcd libelf ncurses perl
# Quedó obsoleto eudev
mkdir -p /etc/rc.d
echo "dhcpcd 2> /dev/null" > /etc/rc.d/dhcpcd.boot
echo kiss > /etc/hostname
vi /etc/hosts
127.0.0.1 kiss
ping kiss
cd /var/db/kiss
Descargá el linux kernel:
lynx kernel.org
Latest Release - Download
tar xvf linux-*
cd linux-*
Es recomendable bootear con ArchLinux porque carga todo lo que necesitás para que tu sessión sea exitosa, ahora todos los módulos están cargados en la memoria si ejecutás:
lspci -k
Verás que el ethernet está cargado, etc. Es un buen comienzo pero no es todo.
Ahora podes descargar linux-firmware
pero en este caso lo omnitiremos.
Primero tenemos que crear la configuración por defecto del kernel
make defconfig
Si ejecutamos:
make help
Encontrarás un argumento llamado localyesconfig (update current config converting local mods to core)
make localyesconfig
Ese comando convierte lo que está en memoria cargado con ArchLinux pero se da cuenta de que no está configurado todavía, así que no puedo convertirlo lo que significa que lo necesito.
Parece mucho pero hay varios sub-modulos
.
Ejemplo: pata_acpi
si copiás CONFIG_PATA_ACPI
(podes copiar si habilitas el mouse systemctl start gpm en otra consola lo pegas con botón derecho).
make menuconfig
/ (slash)
CONFIG_PATA_ACPI
Te dice [=n]
y abajo en Depends:
y en Selects: [=n]
(esa tenes que seleccionarlo y habilitarlo con *
para que quede todo en [=y]
)
Si apretás el número lo podes convertir como core
si lo pones con *
(asterisco) - Save - Exit - Exit
Ahora ejecutá:
make localyesconfig
Si lo hiciste bien debería haber desaparecido el mensaje.
make localyesconfig
…Con bluetooth hay un problema BT es una subsección no es algo… BT [=n]
dice no para habilitar esas cosas, cuando ves eso posponelo.
Dice [=n]
pero si mirás abajo en Selects:
dice: CRC16[=y] && CRYPTO[=y]...
tiene varias habilitadas pero para que quede habilitado BT [=n]
todo debería estar en [=y]
.
Pero si copias el que dice [=n] (CRYPTO_ECB)
haces una búsqueda no lo encontrarás porque no es un módulo, es una opción.
bluetooth
Si es una sección es mejor no tocarla y mientras hacés las demás esa sección desaparecerá. Si no ves un número al buscar, no podes hacer nada ignoralo y habilitando los demás desaparecerá el mensaje.
VMware usa CONFIG_SND_EN5171
Hacé lo mismo para cada CONFIG_
CONFIG_...
no lo encuentra pero si pones la mitad del nombre si lo encuentra.Al final cuando ejecutás make localyesconfig
no te debería salir ningun mensaje solo:
using config: .config
Ahora que hicimos todo los modulos:
make menuconfig
Si vez Kernel .config support
con un <M>
Deshabilitá el Initial RAM filesystem and RAM disk (initramfs/initrd) support
En Processor type and features - Processor family
seleccioná Core 2/newer Xeon
.
En General setup - Default hostname - kiss
En device drives - USB support
En filesystem
debería estar habilitado ext4
.
make -j $(nproc)
make INSTALL_MOD_STRIP=1 modules_install
# Ignorá el mensaje Cannot find LILO
make install
mv /boot/vmlinuz /boot/vmlinuz-VERSION
mv /boot/System.map /boot/System.map-VERSION
# Fijate que esté bien el fstab
cat /etc/fstab
kiss b grub
#### legacy boot
sudo grub-install /dev/sda --recheck
grub-mkconfig -o /boot/grub/grub.cfg
kiss b baseinit
passwd
adduser esotericwarfare
addgroup esotericwarfare audio
addgroup esotericwarfare video
exit
exit
reboot
Con lspci -k
podes ver lo que cargó.
cd /var/db/kiss/community/community - Paquetes disponibles en el repositorio
ls
Probamos si podemos instalar un paquete.
kiss b lz4