mirror of
https://gitlab.com/JKANetwork/JKArch.git
synced 2026-02-14 01:01:30 +01:00
Compare commits
76 Commits
Before_rew
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a825cae935 | ||
| 9c304e4a77 | |||
| cc8ed33be0 | |||
| 4f065211a2 | |||
| e393bffaef | |||
| 8c2d6acd39 | |||
|
|
58514e1cd7 | ||
|
|
af6a0f88ee | ||
|
|
460a9f35cc | ||
|
|
d6d8bdc153 | ||
|
|
2adb1a8a34 | ||
|
|
085eeee180 | ||
|
|
34f78c6057 | ||
|
|
1d66002c1f | ||
|
|
9557226f15 | ||
|
|
353697e9ed | ||
|
|
3e197e083b | ||
|
|
d2d376a3cf | ||
|
|
bfec508001 | ||
|
|
15eba9b746 | ||
|
|
0a11ea64ce | ||
|
|
2ea4af3953 | ||
|
|
a8a88c983d | ||
|
|
9324dccb20 | ||
|
|
3fda6f0201 | ||
|
|
5bab48c165 | ||
|
|
8ad28c90a7 | ||
|
|
fd237a3e57 | ||
| 2275d59f06 | |||
| 7eb6340527 | |||
| 519b5ac7a3 | |||
| 71bd4f7171 | |||
| a0af4a40aa | |||
| a07333507b | |||
| d279dc877b | |||
| 65562e0f1d | |||
| 13e6cfbb03 | |||
| 62ad54a4ca | |||
| 6a850fe3f9 | |||
| fa656334b2 | |||
| a01d0ac990 | |||
| 74c3aef4fa | |||
| 63a455bcc1 | |||
| 409a0e9616 | |||
| ceec9c1e92 | |||
| 0078454b3f | |||
| 782420f5b4 | |||
| a7e9fe09bc | |||
| ea93691fe6 | |||
| 840f6f5f93 | |||
| 8265d95041 | |||
| b08caba055 | |||
| a5c6cbc89c | |||
| 65459c3aa2 | |||
| def2a7cbe5 | |||
| d7fbb16712 | |||
| 9d016e015c | |||
| bdd706ec26 | |||
| f3559108a7 | |||
| 8386f1a808 | |||
| 976fa0ab84 | |||
| d5e666957f | |||
| 24078fe915 | |||
| 9e255c8f87 | |||
| a244f20de4 | |||
| d708956d46 | |||
| 0ee99e5ef7 | |||
| 17ae0292fa | |||
| f28e1ffc5c | |||
| a557b6e616 | |||
| 2bfc4e8aab | |||
| 410d36540d | |||
| 5fe123d563 | |||
| 142df8a56e | |||
| 19a5ac2726 | |||
| 3cc53ab802 |
@@ -1,7 +1,2 @@
|
||||
# Scripts usados por JKANetwork para generar las imagenes de CD que estan en jkarch.jkanetwork.com
|
||||
|
||||
No es necesario para ninguna función de JKArch más que esa
|
||||
|
||||
La carpeta data contiene archivos de la ISO para arrancar (EFI e isolinux) que el script de creación utiliza
|
||||
|
||||
Aceptamos sugerencias
|
||||
@@ -1,52 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
## This file download all JKArch dependencies and puts it in a folder with repo created, ready to use
|
||||
|
||||
#Force sudo
|
||||
if [[ $(/usr/bin/id -u) != "0" ]];then
|
||||
sudo ${0} $@
|
||||
exit
|
||||
fi
|
||||
|
||||
rm -rf trydeps/
|
||||
rm -rf repoofflinejkarch/
|
||||
mkdir trydeps
|
||||
#Only pacstrap for the essential packages for download the rest, pacman, and mirrorlist. Base added to pacman -Sw of later
|
||||
pacstrap -d trydeps pacman jkarch-mirrorlist
|
||||
cp /etc/pacman.conf trydeps/etc/pacman.conf
|
||||
|
||||
arch-chroot trydeps/ /usr/bin/pacman -Sw base base-devel yaourt btrfs-progs rsync exfat-utils jkarch-mirrorlist jka-toolkit git wget netctl iw wpa_supplicant dialog sudo alsa-utils dosfstools \
|
||||
ntfs-3g bash-completion reflector ntp \
|
||||
mesa libva-vdpau-driver mesa-libgl libva-mesa-driver mesa-vdpau libva-intel-driver libvdpau-va-gl virtualbox-guest-utils virtualbox-guest-modules-arch xf86-input-vmmouse open-vm-tools \
|
||||
firefox google-chrome chromium opera otter-browser flashplugin \
|
||||
libreoffice-fresh abiword gnumeric wps-office leafpad gedit notepadqq \
|
||||
vlc qt4 smplayer totem clementine \
|
||||
gimp inkscape pinta krita \
|
||||
noto-fonts noto-fonts-cjk noto-fonts-emoji ttf-dejavu ttf-liberation ttf-ms-fonts ttf-google-fonts-git \
|
||||
evince ristretto librsvg gnome-calculator gnome-disk-utility file-roller lrzip p7zip unace unrar tumbler poppler-glib ffmpegthumbnailer libgsf \
|
||||
cups cups-filters cups-pk-helper system-config-printer gtk3-print-backends hplip foomatic-db-engine foomatic-db foomatic-db-ppds xsane bluez bluez-utils bluez-cups bluez-firmware bluez-libs blueberry \
|
||||
dropbox megasync geary k3b jre8-openjdk wine-staging wine_gecko winetricks lib32-libpng lib32-libldap lib32-gnutls lib32-mpg123 lib32-libpulse lib32-ncurses lib32-openal lib32-alsa-lib lib32-gst-plugins-base-libs bleachbit \
|
||||
sublime-text-dev sublime-text visual-studio-code jdk8-openjdk eclipse-java monodevelop brackets atom-editor-bin gdevelop poedit arduino \
|
||||
xorg-server xorg-xinit xorg-server-common xf86-input-libinput xterm lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-afc gvfs-smb udisks2 networkmanager network-manager-applet gnome-keyring xdialog \
|
||||
jkarch-appearance lxterminal ttf-inconsolata octopi octopi-notifier gksu pulseaudio pavucontrol xdg-user-dirs xfce4-power-manager \
|
||||
lxappearance lxappearance-obconf lxde-common lxinput lxpanel lxrandr lxsession lxtask lxterminal openbox pcmanfm xfce4-notifyd \
|
||||
xfce4 cinnamon gnome-extra gnome mate-extra mate gtk-engine-murrine plasma gtk-engine-aurora faenza-icon-theme \
|
||||
efibootmgr dosfstools refind-efi grub os-prober --noconfirm
|
||||
|
||||
arch-chroot trydeps/ /usr/bin/pacman -Sw $(pacman -Ssq xf86-video-*) --noconfirm
|
||||
mkdir repoofflinejkarch
|
||||
mv trydeps/var/cache/pacman/pkg/* repoofflinejkarch/
|
||||
rm -rf trydeps/
|
||||
cd repoofflinejkarch/
|
||||
repo-add localjkarch.db.tar.gz *.pkg.*
|
||||
rm localjkarch.files
|
||||
rm localjkarch.db
|
||||
mv localjkarch.files.tar.gz localjkarch.files
|
||||
mv localjkarch.db.tar.gz localjkarch.db
|
||||
rm -f *.old
|
||||
rm -f *.log
|
||||
rm -f .log
|
||||
cd ..
|
||||
#Permisos
|
||||
chmod 777 repoofflinejkarch/
|
||||
chmod 666 repoofflinejkarch/*
|
||||
@@ -29,11 +29,11 @@ function modifyimage {
|
||||
|
||||
|
||||
#Delete packages not needed from official iso
|
||||
sudo arch-chroot $sfslocate/ /usr/bin/pacman -R clonezilla darkhttpd diffutils grml-zsh-config irssi linux-atm lvm2 man-db man-pages mc ndisc6 nmap smartmontools testdisk vi vim vim-runtime zsh openconnect pcsclite python2 --noconfirm
|
||||
sudo arch-chroot $sfslocate/ /usr/bin/pacman -R clonezilla darkhttpd diffutils grml-zsh-config irssi linux-atm lvm2 man-db man-pages mc ndisc6 nmap smartmontools testdisk vi vim vim-runtime openconnect pcsclite python2 python reflector --noconfirm
|
||||
#Restore bash shell (not zsh)
|
||||
sudo arch-chroot $sfslocate/ /usr/bin/chsh -s /bin/bash root
|
||||
#Install new
|
||||
sudo arch-chroot $sfslocate/ /usr/bin/pacman -Su gparted xf86-video-vesa xorg-xinit lwm localepurge --noconfirm --ignore linux #Do not upgrade kernel automatically
|
||||
sudo arch-chroot $sfslocate/ /usr/bin/pacman -Su gparted xf86-video-vesa xorg-xinit lwm xorg-xrandr xterm localepurge --noconfirm --ignore linux #Do not upgrade kernel automatically
|
||||
#For gparted to work
|
||||
sudo rm $sfslocate/etc/X11/xinit/xinitrc
|
||||
sudo touch $sfslocate/etc/X11/xinit/xinitrc
|
||||
@@ -80,13 +80,8 @@ function bashprofile {
|
||||
sudo echo "#" > $sfslocate/root/.bash_profile
|
||||
sudo echo "# ~/.bash_profile" >> $sfslocate/root/.bash_profile
|
||||
sudo echo "#" >> $sfslocate/root/.bash_profile
|
||||
if [[ $1 = "Online" ]];then
|
||||
sudo echo "cd /root/" >> $sfslocate/root/.bash_profile
|
||||
sudo echo "./downloadinstall.sh" >> $sfslocate/root/.bash_profile
|
||||
else #Offline
|
||||
sudo echo "cd /root/offlinefiles/" >> $sfslocate/root/.bash_profile
|
||||
sudo echo "./selectlang.sh" >> $sfslocate/root/.bash_profile
|
||||
fi
|
||||
sudo echo "cd /root/" >> $sfslocate/root/.bash_profile
|
||||
sudo echo "./downloadinstall.sh" >> $sfslocate/root/.bash_profile
|
||||
sudo echo "[[ -f ~/.bashrc ]] && . ~/.bashrc" >> $sfslocate/root/.bash_profile
|
||||
}
|
||||
|
||||
@@ -103,70 +98,6 @@ function prepareISOFolder {
|
||||
cp temp/airootfs.sfs iso/arch/x86_64/airootfs.sfs
|
||||
}
|
||||
|
||||
##Function online iso create
|
||||
function createOnline {
|
||||
# Online ISO Procedure
|
||||
#Copy important files
|
||||
prepareISOFolder
|
||||
|
||||
sudo unsquashfs -d $sfslocate/ iso/arch/x86_64/airootfs.sfs
|
||||
|
||||
#Permisos de root de la imagen cambiar temporalmente
|
||||
sudo chmod 777 $sfslocate/root/
|
||||
sudo rm $sfslocate/root/*
|
||||
|
||||
#.bash_profile Online
|
||||
bashprofile "Online"
|
||||
|
||||
#Copiar fichero instalador
|
||||
sudo cp ../archinstall/downloadinstall.sh $sfslocate/root/
|
||||
|
||||
#Resto de modificaciones (las comunes) y cerrado del sfs
|
||||
modifyimage
|
||||
|
||||
#Creamos la ISO
|
||||
mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o JKArch-Online-$yearmonth.iso iso/
|
||||
sudo rm -rf iso/
|
||||
echo "ISO Online creada"
|
||||
}
|
||||
|
||||
function createOffline {
|
||||
# Offline ISO Procedure
|
||||
#Copy important files
|
||||
prepareISOFolder
|
||||
|
||||
#Unsquash sfs file
|
||||
sudo unsquashfs -d $sfslocate/ iso/arch/x86_64/airootfs.sfs
|
||||
|
||||
#Permisos de root de la imagen cambiar temporalmente
|
||||
sudo chmod 777 $sfslocate/root/
|
||||
sudo rm $sfslocate/root/*
|
||||
|
||||
#.bash_profile Offline
|
||||
bashprofile "Offline"
|
||||
|
||||
#Create subfolder and folder at same time
|
||||
sudo mkdir -p $sfslocate/root/offlinefiles/mods/
|
||||
#Esta ruta es absoluta, no vale para todos los sistemas (Es "temporal")
|
||||
sudo cp ../archinstall/* $sfslocate/root/offlinefiles/
|
||||
sudo rm $sfslocate/root/offlinefiles/downloadinstall.sh $sfslocate/root/offlinefiles/archinstall-dev.sh
|
||||
sudo cp ../mods/* $sfslocate/root/offlinefiles/mods/
|
||||
|
||||
#Resto de modificaciones (las comunes) y cerrado del sfs
|
||||
modifyimage
|
||||
|
||||
#Creamos el repositorio
|
||||
sudo sh depsjkarch.sh
|
||||
#Lo movemos a su sitio
|
||||
mkdir -p iso/repo/
|
||||
mv repoofflinejkarch/* iso/repo/
|
||||
rm -rf repoofflinejkarch/
|
||||
|
||||
#Creamos la ISO
|
||||
mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o JKArch-Offline-$yearmonth.iso iso/
|
||||
sudo rm -rf iso/
|
||||
echo "ISO Offline creada"
|
||||
}
|
||||
|
||||
#Date for builds
|
||||
today=$(date +%y%m%d)
|
||||
@@ -193,13 +124,28 @@ if [[ $today != $lastdownload ]];then #Only download one time at day
|
||||
fi
|
||||
|
||||
|
||||
#Switch del argumento $1 para ver si solo se quiere crear una de las dos imagenes iso
|
||||
case $1 in
|
||||
"Online") createOnline;;
|
||||
"Offline") createOffline;;
|
||||
"")
|
||||
createOnline
|
||||
createOffline
|
||||
;;
|
||||
esac
|
||||
# Create ISO Procedure
|
||||
#Copy important files
|
||||
prepareISOFolder
|
||||
|
||||
sudo unsquashfs -d $sfslocate/ iso/arch/x86_64/airootfs.sfs
|
||||
|
||||
#Permisos de root de la imagen cambiar temporalmente
|
||||
sudo chmod 777 $sfslocate/root/
|
||||
sudo rm $sfslocate/root/*
|
||||
|
||||
#.bash_profile
|
||||
bashprofile
|
||||
|
||||
#Copiar fichero instalador
|
||||
sudo cp ../archinstall/downloadinstall.sh $sfslocate/root/
|
||||
|
||||
#Resto de modificaciones (las comunes) y cerrado del sfs
|
||||
modifyimage
|
||||
|
||||
#Creamos la ISO
|
||||
mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o JKArch-Online-$yearmonth.iso iso/
|
||||
sudo rm -rf iso/
|
||||
echo "ISO creado"
|
||||
|
||||
echo "Script terminado"
|
||||
30
README.md
30
README.md
@@ -1,11 +1,33 @@
|
||||
Bienvenidos al lugar de recursos de JKArch
|
||||
Bienvenidos al centro de JKArch
|
||||
|
||||
Para saber todo sobre la distribución de Linux basada en Arch de JKANetwork, JKArch, tenemos página web: https://jkarch.jkanetwork.com
|
||||
Aquí se encuentra el instalador y configurador de JKArch. También un par de archivos con un pequeño tutorial y un FAQ
|
||||
|
||||
Si lo que quieres es instalar JKArch en tu equipo, es muy fácil, y como requisitos necesitas un pc de 64 bits, 1Gb de RAM y 8Gb de disco duro.
|
||||
|
||||
También una imagen ISO reciente de ArchLinux.
|
||||
|
||||
Para iniciarlo, una vez metido el disco de Arch y con una conexión a internet solo habría que ejecutar lo siguiente:
|
||||
|
||||
```
|
||||
wget https://goo.gl/gmfrx7 -O installer.sh
|
||||
bash installer.sh
|
||||
```
|
||||
|
||||
Si tenéis problemas para escribirlo porque la distribución del teclado no está en español, ejecutad:
|
||||
|
||||
```
|
||||
loadkeys es
|
||||
```
|
||||
|
||||
|
||||
Con ello, se iniciará la instalación del sistema operativo permitiendote elegir donde y cómo instalarlo
|
||||
|
||||
Hay un tutorial en desarrollo en el archivo [tuto.md](tuto.md)
|
||||
|
||||
JKArch es una distribución basada en Archlinux personalizable y tan minimalista como se quiera, cuya existencia radica en una instalación sencilla de Arch para todos los públicos.
|
||||
|
||||
Intentamos hacer Linux utilizable por cualquiera, aunque no tenga casi experiencia, y también añadiendo ciertos paquetes que no estan en Arch base, pero son muy útiles para muchos.
|
||||
|
||||
-
|
||||
## Recomendamos leer la wiki de Archlinux para cualquier problema, es bastante extensa y útil
|
||||
|
||||
Aquí solo se encuentran los scripts de instalacion y ciertas modificaciones de la iso
|
||||
## Si JKArch no os funciona correctamente, sentiros libres de abrir un "issue" en Gitlab
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,29 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
opt=`dialog --stdout --nocancel --backtitle "Instalacion de JKArch / JKArch installation" --title "Bienvenido a JKArch / Welcome" --menu "Para poder comenzar la instalacion, se necesita una conexion a internet. / We need an internet conection to start" 0 70 5 1 "Estoy por cable (Ethernet) /I'm using cable" 2 "Wi-Fi" 3 "Configuracion compleja (Ir a la terminal) / Other (Terminal)"`
|
||||
|
||||
if [[ $opt -eq 2 ]];then
|
||||
wifi-menu
|
||||
elif [[ $opt -eq 3 ]];then
|
||||
clear
|
||||
echo "Te sacamos a la terminal, configure internet, asegurese de que funcione y después escriba exit para continuar"
|
||||
echo "You will go to the bash terminal, you can configure network, and then write exit"
|
||||
bash
|
||||
fi
|
||||
clear
|
||||
echo "Vamos a comprobar que tienes conexión a internet"
|
||||
echo "Testing network conection"
|
||||
ping 8.8.8.8 -c3
|
||||
if [[ $? != 0 ]];then
|
||||
clear
|
||||
dialog --title "Conexión / Network " --msgbox "Error en la conexión \nse reiniciará la instalación \n\n Network error. Restarting the install.." 15 60
|
||||
exec ./downloadinstall.sh
|
||||
fi
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/archinstall/selectlang.sh -O selectlang.sh
|
||||
if [ $(cat selectlang.sh | grep "^<\!DOCTYPE html>") == "<\!DOCTYPE html>" ];then
|
||||
clear
|
||||
dialog --title "Descarga incorrecta / Corrupted download" --msgbox "La descarga del instalador ha fallado \nse reiniciará la instalación \n\n Download failed. Restarting install.." 15 60
|
||||
exec ./downloadinstall.sh
|
||||
fi
|
||||
chmod +x selectlang.sh
|
||||
exec ./selectlang.sh
|
||||
@@ -1,63 +0,0 @@
|
||||
#
|
||||
# /etc/pacman.conf
|
||||
#
|
||||
# See the pacman.conf(5) manpage for option and repository directives
|
||||
|
||||
#
|
||||
# GENERAL OPTIONS
|
||||
#
|
||||
[options]
|
||||
# The following paths are commented out with their default values listed.
|
||||
# If you wish to use different paths, uncomment and update the paths.
|
||||
#RootDir = /
|
||||
#DBPath = /var/lib/pacman/
|
||||
#CacheDir = /var/cache/pacman/pkg/
|
||||
#LogFile = /var/log/pacman.log
|
||||
#GPGDir = /etc/pacman.d/gnupg/
|
||||
#HookDir = /etc/pacman.d/hooks/
|
||||
HoldPkg = pacman glibc
|
||||
#XferCommand = /usr/bin/curl -C - -f %u > %o
|
||||
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||
#XferCommand = /usr/bin/aria2c --allow-overwrite=true --continue=true --file-allocation=none --log-level=error --max-tries=2 --max-connection-per-server=2 --max-file-not-found=5 --min-split-size=5M --no-conf --remote-time=true --summary-interval=60 --timeout=5 --dir=/ --out %o %u
|
||||
#CleanMethod = KeepInstalled
|
||||
#UseDelta = 0.7
|
||||
Architecture = auto
|
||||
|
||||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
||||
#IgnorePkg =
|
||||
#IgnoreGroup =
|
||||
|
||||
#NoUpgrade =
|
||||
#NoExtract =
|
||||
|
||||
# Misc options
|
||||
#UseSyslog
|
||||
#Color
|
||||
#TotalDownload
|
||||
CheckSpace
|
||||
#VerbosePkgLists
|
||||
|
||||
# By default, pacman accepts packages signed by keys that its local keyring
|
||||
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
||||
SigLevel = Required DatabaseOptional
|
||||
LocalFileSigLevel = Optional
|
||||
#RemoteFileSigLevel = Required
|
||||
|
||||
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
||||
# keyring can then be populated with the keys of all official Arch Linux
|
||||
# packagers with `pacman-key --populate archlinux`.
|
||||
|
||||
#
|
||||
# REPOSITORIES
|
||||
# Repository entries are of the format:
|
||||
# [repo-name]
|
||||
# Server = ServerName
|
||||
# Include = IncludePath
|
||||
#
|
||||
# The header [repo-name] is crucial - it must be present and
|
||||
# uncommented to enable the repo.
|
||||
#
|
||||
[localjkarch]
|
||||
SigLevel = Optional TrustAll
|
||||
Server = file:///run/archiso/bootmnt/repo
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
#
|
||||
# /etc/pacman.conf
|
||||
#
|
||||
# See the pacman.conf(5) manpage for option and repository directives
|
||||
|
||||
#
|
||||
# GENERAL OPTIONS
|
||||
#
|
||||
[options]
|
||||
# The following paths are commented out with their default values listed.
|
||||
# If you wish to use different paths, uncomment and update the paths.
|
||||
#RootDir = /
|
||||
#DBPath = /var/lib/pacman/
|
||||
#CacheDir = /var/cache/pacman/pkg/
|
||||
#LogFile = /var/log/pacman.log
|
||||
#GPGDir = /etc/pacman.d/gnupg/
|
||||
#HookDir = /etc/pacman.d/hooks/
|
||||
HoldPkg = pacman glibc
|
||||
#XferCommand = /usr/bin/curl -C - -f %u > %o
|
||||
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
|
||||
#XferCommand = /usr/bin/aria2c --allow-overwrite=true --continue=true --file-allocation=none --log-level=error --max-tries=2 --max-connection-per-server=2 --max-file-not-found=5 --min-split-size=5M --no-conf --remote-time=true --summary-interval=60 --timeout=5 --dir=/ --out %o %u
|
||||
#CleanMethod = KeepInstalled
|
||||
#UseDelta = 0.7
|
||||
Architecture = auto
|
||||
|
||||
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
|
||||
#IgnorePkg =
|
||||
#IgnoreGroup =
|
||||
|
||||
#NoUpgrade =
|
||||
#NoExtract =
|
||||
|
||||
# Misc options
|
||||
#UseSyslog
|
||||
#Color
|
||||
#TotalDownload
|
||||
CheckSpace
|
||||
#VerbosePkgLists
|
||||
|
||||
# By default, pacman accepts packages signed by keys that its local keyring
|
||||
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
||||
SigLevel = Required DatabaseOptional
|
||||
LocalFileSigLevel = Optional
|
||||
#RemoteFileSigLevel = Required
|
||||
|
||||
# NOTE: You must run `pacman-key --init` before first using pacman; the local
|
||||
# keyring can then be populated with the keys of all official Arch Linux
|
||||
# packagers with `pacman-key --populate archlinux`.
|
||||
|
||||
#
|
||||
# REPOSITORIES
|
||||
# Repository entries are of the format:
|
||||
# [repo-name]
|
||||
# Server = ServerName
|
||||
# Include = IncludePath
|
||||
#
|
||||
# The header [repo-name] is crucial - it must be present and
|
||||
# uncommented to enable the repo.
|
||||
#
|
||||
[core]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[extra]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[community]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
[multilib]
|
||||
Include = /etc/pacman.d/mirrorlist
|
||||
|
||||
#JKArch Repository
|
||||
[jkanetwork]
|
||||
SigLevel = Optional TrustAll
|
||||
Include = /etc/pacman.d/jkarch-mirrorlist
|
||||
@@ -1,32 +0,0 @@
|
||||
#!/bin/bash
|
||||
##This script only selects the installer language and, if its a online install, asks user to use stable or devel installer
|
||||
idiom=`dialog --stdout --nocancel --backtitle "JKArch Instalation" --title "Language selection" --menu "Select your language / Selecciona tu idioma" 0 70 5 1 "Spanish (es)" 2 "English (en) (In progress)"`
|
||||
|
||||
if [[ $idiom -eq 1 ]];then
|
||||
sclang="es"
|
||||
loadkeys es
|
||||
#LANG="es_ES.UTF-8" ; export LANG
|
||||
elif [[ $idiom -eq 2 ]];then
|
||||
sclang="en"
|
||||
loadkeys en
|
||||
#LANG="en_GB.UTF-8" ; export LANG
|
||||
fi
|
||||
|
||||
if [[ -f translations.sh ]];then #If its a offline install (ISO)
|
||||
exec ./archinstall.sh $sclang 1 #Offline
|
||||
else #Online install
|
||||
#Download and exec
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/archinstall/archinstall.sh -O archinstall.sh
|
||||
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/archinstall/translations.sh -O translations.sh
|
||||
|
||||
if [[ $(cat archinstall.sh | grep "^<\!DOCTYPE html>") == "<\!DOCTYPE html>" || $(cat translations.sh | grep "^<\!DOCTYPE html>") == "<\!DOCTYPE html>" ]];then
|
||||
clear
|
||||
dialog --title "Descarga incorrecta / Corrupted download" --msgbox "La descarga del instalador ha fallado \nse reiniciará la instalación \n\n Download failed. Restarting install.." 15 60
|
||||
exec ./selectlang.sh
|
||||
fi
|
||||
chmod +x archinstall.sh
|
||||
chmod +x translations.sh
|
||||
exec ./archinstall.sh $sclang 0 #Online
|
||||
|
||||
fi
|
||||
@@ -1,357 +0,0 @@
|
||||
#!/bin/bash
|
||||
# Translation function for the script. Loaded by source translations.sh and used by $(T "Text") returing a 'echo "Translated text"'
|
||||
# For adding a language you have to add "id") echo "Translated to id language" , putting in id your language (pr, en,it, es,...)
|
||||
# Example: "es") echo "Traduccion de un texto";;
|
||||
# The * represents "en" language, and is the standard output if it's not translated. ( "*)" == ' "en") ' ) English is the "universal" language.
|
||||
# If translation of *) is echo "$1" it means trat is equal to the case (as case is writed in abreviated English, but sometimes is the same)
|
||||
|
||||
function T {
|
||||
case "$1" in
|
||||
"JKArch install script")
|
||||
case $sclang in
|
||||
"es") echo "Script de instalacion de JKArch (BETA)";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Intro arch install script")
|
||||
case $sclang in
|
||||
"es") echo "Mediante unas preguntas y avanzando, instalaremos arch en su ordenador \nHa sido pensado para ser simple, y guiado por opciones, pero debes estar atento durante el proceso. \nAviso: No debes interrumpir la instalacion por ningun motivo, a no ser que quieras que quede incompleta";;
|
||||
*) echo "Through simple questions, we will install arch in your computer. \nIts designed to be simple and guied by options, but you need to be careful during the process. \nWarning: You musnt stop the install never, or anything can happen";;
|
||||
esac;;
|
||||
"Partition scheme before your changes")
|
||||
case $sclang in
|
||||
"es") echo "Esquema de particiones antes de los cambios";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Your partition scheme")
|
||||
case $sclang in
|
||||
"es") echo "Tu esquema de particiones:";;
|
||||
*) echo "${1}:";;
|
||||
esac;;
|
||||
"Your changes")
|
||||
case $sclang in
|
||||
"es") echo "Cambios que has realizado:";;
|
||||
*) echo "${1}:";;
|
||||
esac;;
|
||||
"Press enter to continue...")
|
||||
case $sclang in
|
||||
"es") echo "Pulse enter para continuar...";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Questions about partitions where system will be installed")
|
||||
case $sclang in
|
||||
"es") echo "Preguntas acerca de las unidades donde instalar el sistema";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Questions about partitions dialog. Text")
|
||||
case $sclang in
|
||||
"es") echo "Esta parte es la mas importante, antes de seguir se mostrarán los discos duros. Si esta vacío o es nuevo, recomendamos formatear en DOS/MBR. Si sabe lo que hace, o ya usaba GPT/UEFI, tendrá que seleccionar la partición EFI, recuerdelo \n (Si lo instala junto a windows 8.1/10 de 64 bits con UEFI activado, entonces usa EFI y tendrás que seleccionar la unidad EFI/ESP que utiliza luego)";;
|
||||
*) echo "This is the most important part. We will show you your partition scheme. If it's empty, please format it in DOS/MBR type. If you know what are you doing, or if you have formatted in GPT/UEFI, you will have to select EFI/ESP partition later. \n(If you install it alongside with Windows 8.1/10 64 bits with UEFI, you will be to select EFI/ESP partition that windows makes)";;
|
||||
esac;;
|
||||
"ERROR: You dont have HDD, insert one, poweroff")
|
||||
case $sclang in
|
||||
"es") echo "ERROR: No tienes discos duros, no se puede continuar. Por favor enchufe/inserte un disco duro y reinicie. \n Al pulsar aceptar se reiniciara el sistema";;
|
||||
*) echo "ERROR: You dont have any HDD/SSD, setup can't continue. Plug-in some HDD/SSD and start again. When you press enter, computer will poweroff.";;
|
||||
esac;;
|
||||
"An error has ocurred, setup will be stopped")
|
||||
case $sclang in
|
||||
"es") echo "A ocurrido un error, la instalacion se va a detener. Razon: ";;
|
||||
*) echo "An error has ocurred, setup will be stopped.\nReason: ";;
|
||||
esac;;
|
||||
"System configuration")
|
||||
case $sclang in
|
||||
"es") echo "Configuración de su sistema";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Select hard disk to edit")
|
||||
case $sclang in
|
||||
"es") echo "Seleccione el disco duro para editar";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Full hard disk install")
|
||||
case $sclang in
|
||||
"es") echo "Instalacion en un disco duro completo";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Full hard disk install. Text")
|
||||
case $sclang in
|
||||
"es") echo "Ahora se le permitira escoger un disco duro para eliminar, y reemplazar por una particion para JKArch sola y sus configuraciones estandar. \nPor favor, no es reversible, asegurese de lo que estas haciendo varias veces.";;
|
||||
*) echo "Now you have to select a hard disk to delete it and replace by a partition only for JKArch and standard configuration. \nIt's not reversible, please be sure of what are you doing!";;
|
||||
esac;;
|
||||
"Select hard disk to delete and use by JKArch")
|
||||
case $sclang in
|
||||
"es") echo "Elige el disco duro a borrar y cambiar por una particion Linux simple para JKArch";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Select root ('/') partition")
|
||||
case $sclang in
|
||||
"es") echo "Elige la particion a usar como sistema raíz ('/')";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Select home partition")
|
||||
case $sclang in
|
||||
"es") echo "Elige la particion a usar como home (/home)";;
|
||||
*) echo "Select home (/home) (users) partition";;
|
||||
esac;;
|
||||
"Select EFI partition")
|
||||
case $sclang in
|
||||
"es") echo "Elige la particion EFI del sistema (Suele ser una particion de 300-500Mb en FAT32 llamada EFI, y suele estar en /dev/sda2)";;
|
||||
*) echo "Select EFI partition (Normally is a 300-500Mb FAT32/vfat partition called EFI)";;
|
||||
esac;;
|
||||
"GPT Partition Table")
|
||||
case $sclang in
|
||||
"es") echo "Tabla de particiones en GPT";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"You are using GPT, you will have to select EFI")
|
||||
case $sclang in
|
||||
"es") echo "Estas usando el estilo de particiones GPT, que utiliza UEFI, recuerda que tendras que tener y seleccionar la particion UEFI del sistema.";;
|
||||
*) echo "You are using GPT, that uses UEFI, you will have to select the EFI partition.";;
|
||||
esac;;
|
||||
"Not valid")
|
||||
case $sclang in
|
||||
"es") echo "No valido";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"¿Do you want to edit partitions?¿How?")
|
||||
case $sclang in
|
||||
"es") echo "¿Quieres editar las particiones?¿Como?";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Ok, last thing before start installing, summary of changes")
|
||||
case $sclang in
|
||||
"es") echo "Ok, vamos a comenzar la instalacion, pero antes, un resumen de donde lo va a instalar.";;
|
||||
*) echo "Ok, last thing before start installing, summary of changes we will do";;
|
||||
esac;;
|
||||
"If you agree with that, press enter. If not, turn off the computer")
|
||||
case $sclang in
|
||||
"es") echo "Si estas de acuerdo, presione enter, en caso contrario, apague el ordenador a la fuerza y no comenzará la instalación";;
|
||||
*) echo "If you agree with that, press enter. If not, turn off the computer";;
|
||||
esac;;
|
||||
"Root partition")
|
||||
case $sclang in
|
||||
"es") echo "Partición raiz (/)";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Home partition")
|
||||
case $sclang in
|
||||
"es") echo "Partición home (/home)";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"EFI partition in")
|
||||
case $sclang in
|
||||
"es") echo "Tienes una partición EFI en";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"ext4 formatted")
|
||||
case $sclang in
|
||||
"es") echo "formateado en ext4";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"btrfs formatted")
|
||||
case $sclang in
|
||||
"es") echo "formateado en btrfs";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"XFS formatted")
|
||||
case $sclang in
|
||||
"es") echo "formateado en XFS";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"not formatted")
|
||||
case $sclang in
|
||||
"es") echo "sin formatear";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Not select")
|
||||
case $sclang in
|
||||
"es") echo "No elegir";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"End")
|
||||
case $sclang in
|
||||
"es") echo "Fin";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Exit")
|
||||
case $sclang in
|
||||
"es") echo "Salir";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Password")
|
||||
case $sclang in
|
||||
"es") echo "Contraseña";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Passwords do not match")
|
||||
case $sclang in
|
||||
"es") echo "Las contraseñas no coinciden";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Basic setup packages, this can take a minute")
|
||||
case $sclang in
|
||||
"es") echo "Paquetes basicos para la instalación, puede tardar un poco";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Last tweaks and cleaning")
|
||||
case $sclang in
|
||||
"es") echo "Ultimos retoques y limpieza..";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Setup finished, press enter to reboot.")
|
||||
case $sclang in
|
||||
"es") echo "Instalación finalizada, al pulsar aceptar, se reiniciara el sistema";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Network connection error, please check it")
|
||||
case $sclang in
|
||||
"es") echo "Error de conexion con internet, compruebe la red";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Select language for JKArch")
|
||||
case $sclang in
|
||||
"es") echo "Escoja su idioma para JKArch";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Wait")
|
||||
case $sclang in
|
||||
"es") echo "Espere...";;
|
||||
*) echo "Wait...";;
|
||||
esac;;
|
||||
"Optimizing download")
|
||||
case $sclang in
|
||||
"es") echo "Optimizando la descarga...";;
|
||||
*) echo "${1}...";;
|
||||
esac;;
|
||||
"Downloading")
|
||||
case $sclang in
|
||||
"es") echo "Descargando";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Installing system, this can take about 10 minutes, wait")
|
||||
case $sclang in
|
||||
"es") echo "Instalando el sistema, esto puede tardar unos 10 minutos, espere hasta el siguiente aviso";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Gparted will be opened. Help text")
|
||||
case $sclang in
|
||||
"es") echo "Se abrira Gparted. Con el puedes editar, borrar,añadir y poner a tu gusto graficamente las particiones. \n Recuerda que al menos debe haber una particion ext4 primaria para el sistema. \n (Nota: No monte ninguna particion)";;
|
||||
*) echo "Gparted will be opened. With it, you can edit, erase, add, and modify partitions. \n Remember that,at least you have to have a root ext4 partition for JKArch.\n(Note: Do not mount any partition)";;
|
||||
esac;;
|
||||
"JKArch autodetects swap partitions")
|
||||
case $sclang in
|
||||
"es") echo "JKArch detecta automaticamente las particiones swap bien creadas, no debe hacer nada mas";;
|
||||
*) echo "JKArch autodetects swap partitions, you dont have to do anything";;
|
||||
esac;;
|
||||
"Creating swap file")
|
||||
case $sclang in
|
||||
"es") echo "Creando archivo swap, espere";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Select your desktop enviroment")
|
||||
case $sclang in
|
||||
"es") echo "Escoje tu entorno de escritorio";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Now select your timezone for adjusting the clock")
|
||||
case $sclang in
|
||||
"es") echo "Ahora seleccione su ubicacion/país para ajustar el reloj";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Enter how much memory you want to use for swap (MB)")
|
||||
case $sclang in
|
||||
"es") echo "Introduzca cuanta memoria quieres usar como swap (en MB)";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Formatting and mounting partitions")
|
||||
case $sclang in
|
||||
"es") echo "Formateando y montando particiones...";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Syncing hour to internet")
|
||||
case $sclang in
|
||||
"es") echo "Sincronizando la hora por internet";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"No new bootloader installed")
|
||||
case $sclang in
|
||||
"es") echo "No se ha instalado ningun gestor de arranque nuevo en el sistema";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"No new bootloader will be installed")
|
||||
case $sclang in
|
||||
"es") echo "No se instalara ningun gestor de arranque nuevo en el sistema";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Other configs")
|
||||
case $sclang in
|
||||
"es") echo "Otras configuraciones";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"What is your graphics card brand?")
|
||||
case $sclang in
|
||||
"es") echo "¿Cual es la marca de tu tarjeta grafica?";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Repeat password")
|
||||
case $sclang in
|
||||
"es") echo "Repita la contrasena";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Password for ")
|
||||
case $sclang in
|
||||
"es") echo "Contrasena para ";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Installing packages")
|
||||
case $sclang in
|
||||
"es") echo "Instalando paquetes";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Configuring wine for better experience")
|
||||
case $sclang in
|
||||
"es") echo "Configurando wine para una mejor experiencia";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Installing desktop and basic programs, please wait")
|
||||
case $sclang in
|
||||
"es") echo "Instalando el entorno de escritorio y programas basicos, por favor espere";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Your timezone:")
|
||||
case $sclang in
|
||||
"es") echo "Tu franja horaria:";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"No,edit")
|
||||
case $sclang in
|
||||
"es") echo "No, editar";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Edit")
|
||||
case $sclang in
|
||||
"es") echo "Editar";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"Same as user")
|
||||
case $sclang in
|
||||
"es") echo "La misma";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"It's right")
|
||||
case $sclang in
|
||||
"es") echo "Es correcto";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"You want to edit root (admin) password or set same as user?")
|
||||
case $sclang in
|
||||
"es") echo "¿Quieres editar la contraseña para root (administrador) o usar la misma que el usuario?";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
"You have a install log in")
|
||||
case $sclang in
|
||||
"es") echo "Se ha dejado un log de la instalacion en";;
|
||||
*) echo "$1";;
|
||||
esac;;
|
||||
*) echo "$1";;
|
||||
esac
|
||||
}
|
||||
64
faq.md
Normal file
64
faq.md
Normal file
@@ -0,0 +1,64 @@
|
||||
# FAQ de JKArch
|
||||
|
||||
Primero una FAQ sobre la distribución, y más abajo, soluciones a problemas que puedan darse
|
||||
|
||||
## ¿Cuales son los requisitos para instalarlo?
|
||||
|
||||
* Un ordenador con soporte de 64 bits (Más del 95% de los ordenadores desde el 2005 tienen soporte de 64bits)
|
||||
* Al menos, 1Gb de RAM para poder usarlo con soltura (512Mb de RAM impiden la correcta instalación en algunos entornos)
|
||||
* 8Gb aproximadamente, pero recomendamos más de 10Gb para poder usar JKArch sin ningún problema
|
||||
* En teoría, cualquier tarjeta gráfica puede correr JKArch, aunque, evidentemente no esperes correr videos FullHD con una tarjeta gráfica del 2000
|
||||
* Se necesita una conexión a internet estable para la instalación del sistema operativo
|
||||
|
||||
## ¿Por qué existe esta distribución?
|
||||
|
||||
* En JKA Network somos grandes amantes de los sistemas GNU/Linux y de manera especial la distribución Archlinux gracias a su versatilidad, elegancia y sencillez interna, el unico problema que tiene es que no es fácil para la mayoria de usuarios encontrar un sistema sencillo y comodo quitando todo lo no necesario para ser utilizado, con ese objetivo nace JKArch, para hacer más facil la instalación de Archlinux y de proveer al usuario herramientas útiles que el sistema base no posee.
|
||||
|
||||
## Características técnicas de JKArch
|
||||
|
||||
* Base: Archlinux
|
||||
* Entorno de escritorio:MATE personalizado
|
||||
* Programas de fábrica: Octopi (Visor gráfico de paquetes, ayuda a actualizar el sistema e instalar nuevas aplicaciones), lxterminal (Terminal), jka-toolkit (Set de mini herramientas de JKANetwork/JKArch), y las básicas del entorno de escritorio
|
||||
|
||||
* Office, VLC, Navegador, diversas fuentes y un bloc de notas. Opcionalmente más
|
||||
|
||||
Repositorios: Aquí, nosotros añadimos un repositorio extra de JKANetwork, que trae varios paquetes que no están en el arch básico, como wps-office, Chrome, atom, Stepmania... (Más en [repo.jkanetwork.com](https://repo.jkanetwork.com) )
|
||||
|
||||
# Problemas frecuentes y soluciones
|
||||
|
||||
## Arranque CD EFI en negro
|
||||
|
||||
A veces parece que al seleccionar "JKArch UEFI" en el arranque UEFI, se queda en negro y no parece que vaya a pasar nada. Realmente esta buscando y cargando, pero no muestra nada, y en algunos casos concretos puede tardar más de 2 minutos en aparecer algo en la pantalla. Es un fallo de UEFI y la iso, solo deben esperar
|
||||
|
||||
## Problemas con el arranque UEFI/EFI/GPT después de la instalación
|
||||
|
||||
JKArch se instala y es compatible con EFI/UEFI gracias a rEFInd, que es capaz de instalarse incluso sin arranque por UEFI o junto a Windows (GRUB es incapaz de instalarse bien sin UEFI arrancado a la vez, y junto a Windows, suele tener fallos, aunque dejamos la opción)
|
||||
|
||||
Antes de seguir, sobretodo si usaste la opción GRUB, verifica que en el arranque de la BIOS no este la opción GRUB sin escoger, muchas veces pasa eso
|
||||
|
||||
Si la instalación de EFI falla, no pasa nada, es un problema con placas base si no se ha usado UEFI al arrancar.
|
||||
Tenemos una solución,aunque es algo avanzada y requiere una iso de Linux con arranque por UEFI, como puede ser la última de Lubuntu de 64 bits. Entrar en ella (Arrancando por UEFI), y mirad, con gparted, cual es la partición de tu sistema, y la de EFI (Esta ultima, la llamada EFI o ESP, suele ocupar más o menos 300 mb y tener de formato fat32 y poner EFI en algún lado). Despues, debes de ir a la terminal, y desde ahi..
|
||||
|
||||
(Aquí como ejemplo /dev/sda2 será la partición EFI del sistema, y /dev/sda3 será la raíz de JKArch, sustituya por los tuyos)
|
||||
|
||||
$ sudo su
|
||||
\# mount /dev/sda3 /mnt
|
||||
\# mount /dev/sda2 /mnt/boot/efi/
|
||||
\# mount --bind /sys /mnt/sys/
|
||||
\# mount --bind /dev /mnt/dev/
|
||||
\# mount --bind /proc /mnt/proc/
|
||||
\# mount --bind /run /mnt/run/
|
||||
\# chroot /mnt /bin/bash
|
||||
\# grub-install --target=x86_64-efi --efi-directory=/boot/efi/ --bootloader-id=grub
|
||||
\# grub-mkconfig -o /boot/grub/grub.cfg
|
||||
|
||||
Con esto, ya estará instalado de nuevo el gestor de arranque correctamente, instalará GRUB por encima de otros gestores.
|
||||
|
||||
## Descarga muy lenta o errores de descarga de paquetes
|
||||
|
||||
Esto puede deberse a que la página donde apunta el mirrorlist (Que es donde se le dice a Arch de donde bajar los paquetes esta mal
|
||||
|
||||
La solución más sencilla es recargar ese fichero, nosotros recomendamos hacerlo con reflector, y es tan facil como abrir la terminal y escribir lo siguiente
|
||||
sudo reflector --verbose --latest 5 --sort rate --save /etc/pacman.d/mirrorlist
|
||||
|
||||
Nota: Si el comando no se abre y da error puede ser que no tengas instalado reflector, en este caso haz primero "apw -i reflector" o "sudo pacman -S reflector"
|
||||
@@ -1,13 +1,10 @@
|
||||
#!/bin/bash
|
||||
## Note: Some text editors in some lines its wrong the "markup color" because much '"'($) things.
|
||||
sclang=$1
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/installer/translations.sh -O translations.sh
|
||||
source translations.sh
|
||||
|
||||
#No black screensaver
|
||||
setterm -blank 0 -powerdown 0 -powersave off
|
||||
#Fix para caracteres de dialog, ñ o tildes
|
||||
export NCURSES_NO_UTF8_ACS=1
|
||||
# Run all from /root
|
||||
cd /root/
|
||||
|
||||
# Funtions
|
||||
|
||||
function pause {
|
||||
echo "$(T "Press enter to continue...")"
|
||||
@@ -22,10 +19,51 @@ function mostrardialog {
|
||||
dialog --title "$titled" --msgbox "$msgd" 15 60
|
||||
}
|
||||
|
||||
##This function execute the commands
|
||||
function execl {
|
||||
local command
|
||||
if [[ $1 != "chroot" && $1 != "chuser" ]];then #If it runs normally
|
||||
$*
|
||||
else #There is a chroot/chuser word and we have to delete it, and then use
|
||||
command=`echo "$*" | cut -d" " -f2-`
|
||||
if [[ $1 = "chroot" ]];then #If it runs in the chroot
|
||||
chroot /mnt /bin/bash -c "$command"
|
||||
elif [[ $1 = "chuser" ]];then #If it has to run in the created user in chroot
|
||||
chroot /mnt /bin/bash -c "su $nameuser -c \"$command\" "
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
## This function shows messages to the user in a better way, and logs it
|
||||
## $1 -> Sentence to show
|
||||
## $2 -> Start(1) /Finish(2)
|
||||
function showdo {
|
||||
statusc=$?
|
||||
local sentence
|
||||
local place
|
||||
sentence="$1"
|
||||
place=$2
|
||||
|
||||
# Check for multisentence command for showing start of command
|
||||
if [[ $place = 1 ]];then
|
||||
echo "[RUNNING] $1"
|
||||
elif [[ $place = 2 ]];then # When command finish, know if it ran succesfully
|
||||
if [[ $statusc != "0" ]];then
|
||||
echo "[FAILED] $1"
|
||||
echo "[FAILED] $1" >> /tmp/install.log
|
||||
else
|
||||
echo "[ OK ] $1"
|
||||
echo "[ OK ] $1" >> /tmp/install.log
|
||||
fi
|
||||
else
|
||||
echo "[ RUN ] $1"
|
||||
fi
|
||||
}
|
||||
|
||||
function yesnobox {
|
||||
local title=$1
|
||||
#Return Y or N
|
||||
echo `dialog --stdout --nocancel --menu "$title" 0 0 4 Y "$(T "Yes")" N "No"`
|
||||
#Exit code is 0 for Yes, and 1 for no
|
||||
dialog --nocancel --yes-label "$(T "Yes")" --yesno "$title" 0 0
|
||||
}
|
||||
|
||||
function fatalerror {
|
||||
@@ -47,40 +85,6 @@ function pacmanerror {
|
||||
fi
|
||||
}
|
||||
|
||||
##This function logs and execute commands
|
||||
function execl {
|
||||
local command
|
||||
echo "------" >> "/tmp/install.log"
|
||||
if [[ $1 != "chroot" && $1 != "chuser" ]];then #If it runs normally
|
||||
command="$1"
|
||||
for (( i=2; i<=$#; i++ ))
|
||||
do
|
||||
command="$command $(echo $* | cut -f$i -d" ")"
|
||||
done
|
||||
echo "$command" >> "/tmp/install.log"
|
||||
$command
|
||||
else #There is a "First word", avoid it
|
||||
for (( i=2; i<=$#; i++ ))
|
||||
do
|
||||
command="$command $(echo $* | cut -f$i -d" ")"
|
||||
done
|
||||
fi
|
||||
|
||||
if [[ $1 = "chroot" ]];then #If it runs in chroot
|
||||
echo "(In the install partition/chroot) $command" >> "/tmp/install.log"
|
||||
chroot /mnt /bin/bash -c "$command"
|
||||
elif [[ $1 = "chuser" ]];then #If it has to run in chroot but in the user name
|
||||
echo "(In a 'user' chroot in install partition) $command" >> "/tmp/install.log"
|
||||
chroot /mnt /bin/bash -c "su $nameuser -c \"$command\" "
|
||||
fi
|
||||
|
||||
#Log result of the command
|
||||
if [[ $? == 0 ]];then
|
||||
echo "Result Ok " >> "/tmp/install.log"
|
||||
else
|
||||
echo "Error: Code $?" >> "/tmp/install.log"
|
||||
fi
|
||||
}
|
||||
|
||||
##Function for show to the user if an option is on or off
|
||||
function optstate {
|
||||
@@ -101,16 +105,16 @@ function particiones {
|
||||
mostrardialog "ERROR" "$(T "ERROR: You dont have HDD, insert one, poweroff")"
|
||||
reboot
|
||||
fi
|
||||
optpa=`dialog --stdout --nocancel --menu "$(T "¿Do you want to edit partitions?¿How?")" 0 0 5 1 "Grafico con Gparted (Recomendado)" 2 "Terminal (Pequeño asistente o por tu cuenta)" 3 "Borrar un disco duro e instalar JKArch en el (usar con cuidado!)" 4 "No editar nada"`
|
||||
optpa=`dialog --stdout --nocancel --menu "$(T "¿Do you want to edit partitions?¿How?")" 0 0 5 1 "Grafico con Gparted (Recomendado)" 2 "Terminal (Avanzado. Con cfdisk o por tu cuenta)" 3 "Borrar un disco duro e instalar JKArch en el (Usar con cuidado!)" 4 "No editar nada"`
|
||||
case $optpa in
|
||||
1)
|
||||
#Abrir gparted grafico
|
||||
mostrardialog "Gparted" "$(T "Gparted will be opened. Help text")"
|
||||
startx;;
|
||||
gparted;;
|
||||
2)
|
||||
#Terminal
|
||||
echo $(T "Select hard disk to edit")
|
||||
echo "Aviso, el soporte a GPT no es del 100%, si no vas a instalar mas SO y tu HDD no tiene mas de 2Tb, elija MBR/DOS"
|
||||
echo "Aviso, si no tienes más Sistemas Operativos, tu hdd es de menos de 2Tb y tienes que particionar desde cero, elija MBR/DOS en vez de GPT"
|
||||
lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL
|
||||
options=($(lsblk --output KNAME | cut -c1-3 | sort | uniq | sed '1d' | grep 'sd\|hd') "No editar" "Terminal")
|
||||
select opt in "${options[@]}"
|
||||
@@ -137,7 +141,7 @@ function particiones {
|
||||
case $opt in
|
||||
"$(T "Exit")")
|
||||
mostrardialog "Instalacion detenida" "Se detuvo la instalacion. No se hicieron cambios. Al aceptar, reiniciara la instalacion"
|
||||
exec ./selectlang.sh
|
||||
exec ./$0
|
||||
;;
|
||||
*)
|
||||
if [[ -z $opt ]];then
|
||||
@@ -167,7 +171,7 @@ function particiones {
|
||||
break;;
|
||||
*)
|
||||
mostrardialog "Instalacion detenida" "Se detuvo la instalacion. No se hicieron cambios. Al aceptar, reiniciara la instalacion"
|
||||
exec ./selectlang.sh
|
||||
exec ./installer.sh
|
||||
;;
|
||||
esac
|
||||
fi;;
|
||||
@@ -249,11 +253,11 @@ function particiones {
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ $formatoraiz -eq "mkfs.btrfs -f" ]];then
|
||||
if [[ $formatoraiz != "mkfs.btrfs -f" ]];then
|
||||
mostrardialog "No swapfile" "Es contraproducente hacer un fichero swap en una particion btrfs, no debes hacerlo, pero si antes creaste una particion swap, se puede utilizar"
|
||||
fi
|
||||
ram=$(free -m | grep Mem: | awk '1 {print $2 }')
|
||||
optswap=`dialog --stdout --nocancel --menu "¿Quieres crear un archivo swap (Memoria virtual)?" 0 0 4 1 "Si (Con valores por defecto, recomendado)" 2 "Si (Valores a mano)" 3 "Si, pero con una particion que ya cree" 4 "No"`
|
||||
optswap=`dialog --stdout --nocancel --menu "¿Quieres crear un archivo swap (Memoria virtual)?" 0 0 4 1 "Si (Valores automáticos, recomendado)" 2 "Si (Valores a mano)" 3 "Si, en una particion que ya cree" 4 "No"`
|
||||
case $optswap in
|
||||
1)
|
||||
# This count the ammount of swap to create dependent of computer RAM
|
||||
@@ -301,7 +305,7 @@ function particiones {
|
||||
|
||||
## Date and language
|
||||
function horaidioma {
|
||||
while [[ $confirm != "Y" ]];do
|
||||
while [[ $confirm != "0" ]];do
|
||||
varx="" #Empty var
|
||||
langs=$(cat /etc/locale.gen | grep '^#[a-zA-Z]' | cut -f1 -d" " | cut -c2-30 | sort | uniq)
|
||||
for addr in $(echo $langs | tr " " "\n")
|
||||
@@ -316,14 +320,17 @@ function horaidioma {
|
||||
langinst=$(cat /etc/locale.gen | grep -m1 '^#'$opclang | cut -c2-40)
|
||||
|
||||
#Confirm
|
||||
confirm=`yesnobox "$(T "Your language:") $opclang. Correcto?"`
|
||||
yesnobox "$(T "Your language:") $opclang. Correcto?"
|
||||
confirm=$? # 0->Yes
|
||||
done #End of selecting lang
|
||||
confirm="" #Erase var
|
||||
|
||||
echo "$(T "Now select your timezone for adjusting the clock")"
|
||||
while [[ $confirm != "Y" ]];do
|
||||
NEW_TIMEZONE=$(execl tzselect)
|
||||
confirm=`yesnobox "$(T "Your timezone is") $NEW_TIMEZONE ?"`
|
||||
while [[ $confirm != "0" ]];do # 0->Yes
|
||||
clear
|
||||
NEW_TIMEZONE=$(execl tzselect)
|
||||
yesnobox "$(T "Your timezone is") $NEW_TIMEZONE ?"
|
||||
confirm=$? # 0->Yes
|
||||
done
|
||||
confirm="" #Erase var
|
||||
}
|
||||
@@ -367,21 +374,21 @@ function userpass {
|
||||
##Interactive function for make user select some things (apps)
|
||||
function appsuser {
|
||||
clear
|
||||
optbr=`dialog --stdout --nocancel --menu "¿Que navegador web utilizas?" 0 0 4 1 "Firefox" 2 "Chromium" 3 "Opera"`;
|
||||
optbr=`dialog --stdout --nocancel --menu "¿Que navegador web utilizas?" 0 0 4 1 "Firefox" 2 "Chromium (Chrome)" 3 "Opera"`;
|
||||
case $optbr in
|
||||
1) packages="$packages firefox";;
|
||||
2) packages="$packages chromium";;
|
||||
3) packages="$packages opera";;
|
||||
esac
|
||||
|
||||
confirm=`yesnobox "Habilitar soporte bluetooth?"`
|
||||
if [[ $confirm == "Y" ]];then
|
||||
yesnobox "Habilitar soporte bluetooth?"
|
||||
if [[ $? == "0" ]];then
|
||||
packages="$packages bluez bluez-utils bluez-cups bluez-firmware bluez-libs blueberry "
|
||||
fi
|
||||
confirm=`yesnobox "Habilitar compatibilidad programas Windows (Usando wine)?"`
|
||||
if [[ $confirm == "Y" ]];then
|
||||
yesnobox "Habilitar compatibilidad programas Windows (Usando wine)?"
|
||||
if [[ $? == "0" ]];then
|
||||
packages="$packages wine-staging wine_gecko winetricks"
|
||||
packages="$packages lib32-libpng lib32-libldap lib32-gnutls lib32-mpg123 lib32-libpulse lib32-ncurses lib32-openal lib32-alsa-lib lib32-gst-plugins-base-libs" #Some 32bit libs for winearch 32 work better
|
||||
packages="$packages lib32-libpng lib32-libldap lib32-gnutls lib32-mpg123 lib32-libpulse lib32-ncurses lib32-openal lib32-alsa-lib lib32-gst-plugins-base-libs gnome-exe-thumbnailer samba" #Some 32bit libs for winearch 32 work better, and thumbs for .exe (samba needed too)
|
||||
inswine=1
|
||||
fi
|
||||
|
||||
@@ -411,15 +418,14 @@ function installconf {
|
||||
execl mount /dev/$partefi /mnt/boot/efi/
|
||||
fi
|
||||
|
||||
# Download or install base system.
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/installer/pacman.conf -O pacman.conf
|
||||
#JKArch Mirrorlist needed
|
||||
wget -nv https://mirror.jkanetwork.com/Arch-repository/jkarch-mirrorlist -O /etc/pacman.d/jkarch-mirrorlist
|
||||
isanetworkerror # Comprueba si hubo un error de descarga
|
||||
# Download and install base system.
|
||||
|
||||
tput setaf 2 ; echo "$(T "Downloading")" ; tput setaf 9
|
||||
#Install base and disk format drivers. Reflector and rsync is for updating mirrorlist later
|
||||
execl pacstrap -C pacman.conf /mnt/ base jkarch-mirrorlist reflector rsync dosfstools ntfs-3g btrfs-progs exfat-utils
|
||||
execl pacstrap -C pacman.conf /mnt/ base jkarch-mirrorlist reflector rsync dosfstools ntfs-3g btrfs-progs exfat-utils systemd-swap
|
||||
pacmanerror
|
||||
# Copy pacman.conf
|
||||
execl cp pacman.conf /mnt/etc/pacman.conf
|
||||
|
||||
# Create fstab
|
||||
execl genfstab -U /mnt > /mnt/etc/fstab
|
||||
@@ -447,20 +453,29 @@ function installconf {
|
||||
#
|
||||
|
||||
# Var allpackages have in this moment all the packages selected by user, and will be the install packages list for pacman #
|
||||
# Do allpackages var contain base packages and NTP daemon (Hour sync)
|
||||
allpackages=$allpackages" jka-toolkit git wget netctl iw wpa_supplicant dialog sudo alsa-utils bash-completion ntp"
|
||||
# Do allpackages var contain base packages, NTP (Clock sync) and jkarch needed files
|
||||
allpackages=$allpackages" jka-toolkit jkarch-data git wget netctl iw wpa_supplicant dialog sudo alsa-utils bash-completion ntp"
|
||||
|
||||
#Mate desktop and apps
|
||||
allpackages=$allpackages" mate gtk-engine-murrine mate-media"
|
||||
allpackages=$allpackages" xorg-server xorg-xinit xorg-server-common xf86-input-libinput xterm lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-smb gvfs-afc udisks2 networkmanager network-manager-applet gnome-keyring xdialog lxterminal ttf-inconsolata octopi octopi-notifier gksu pulseaudio pavucontrol xdg-user-dirs jkarch-appearance xfce4-power-manager lxtask"
|
||||
allpackages=$allpackages" xfce4 gtk-engine-murrine faenza-icon-theme xfce4-notifyd xfconf gtk-xfce-engine"
|
||||
allpackages=$allpackages" xorg-server xorg-xinit xorg-server-common xf86-input-libinput xterm lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-smb gvfs-afc udisks2 networkmanager network-manager-applet gnome-keyring xdialog lxterminal ttf-inconsolata octopi octopi-notifier gksu pulseaudio pavucontrol xdg-user-dirs xfce4-power-manager lxtask xfce4-whiskermenu-plugin xfce4-pulseaudio-plugin"
|
||||
|
||||
# Standard packages
|
||||
allpackages="$allpackages flashplugin evince ristretto librsvg gnome-calculator gnome-disk-utility file-roller lrzip p7zip unace unrar tumbler poppler-glib ffmpegthumbnailer libgsf notepadqq leafpad libreoffice-fresh vlc qt4 noto-fonts noto-fonts-cjk noto-fonts-emoji ttf-dejavu ttf-liberation ttf-ms-fonts"
|
||||
allpackages="$allpackages flashplugin pepper-flash evince ristretto librsvg gnome-calculator gnome-disk-utility file-roller lrzip p7zip unace unrar tumbler poppler-glib ffmpegthumbnailer libgsf notepadqq leafpad libreoffice-fresh vlc qt4 noto-fonts noto-fonts-cjk noto-fonts-emoji ttf-dejavu ttf-liberation ttf-roboto ttf-ms-fonts"
|
||||
|
||||
# Video pkgs
|
||||
allpackages=$allpackages" "$(pacman -Ssq xf86-video-*)
|
||||
# If spanish, add spanish lang
|
||||
if [[ $sclang == "es" ]];then
|
||||
allpackages="$allpackages libreoffice-fresh-es firefox-i18n-es-es"
|
||||
fi
|
||||
|
||||
#Printers and scanners
|
||||
allpackages="$allpackages foomatic-db-engine foomatic-db foomatic-db-ppds hplip xsane cups cups-filters cups-pk-helper system-config-printer gtk3-print-backends"
|
||||
allpackages="$allpackages foomatic-db-engine foomatic-db foomatic-db-ppds hplip xsane cups cups-filters cups-pk-helper system-config-printer gtk3"
|
||||
|
||||
# Before install, configure mirrorlist
|
||||
execl chroot reflector --verbose -l 6 --sort rate --save /etc/pacman.d/mirrorlist
|
||||
|
||||
# Here, allpackages have the user selected packages because selected before. Then, install it
|
||||
execl chroot pacman -Syu $allpackages --noconfirm --needed
|
||||
|
||||
@@ -478,10 +493,6 @@ function installconf {
|
||||
execl chroot hwclock --systohc --utc
|
||||
execl chroot systemctl enable ntpd
|
||||
|
||||
# User and desktop skel
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/mods/skel.tar.xz -O- | tar xJf - -C /mnt/
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/mods/MATE.tar.xz -O- | tar xJf - -C /mnt/
|
||||
|
||||
# Create user
|
||||
execl chroot useradd -m -G wheel -s /bin/bash $nameuser
|
||||
echo "${nameuser}:${passuser}" | execl chroot chpasswd
|
||||
@@ -495,17 +506,16 @@ function installconf {
|
||||
# Add sudo support for wheel users like user added
|
||||
sed -i "s/\# %wheel ALL=(ALL) ALL/%wheel ALL=(ALL) ALL/g" /mnt/etc/sudoers
|
||||
|
||||
# User directory (Photos, Desktop..) create
|
||||
# User directory creation (Photos, Desktop..)
|
||||
execl chroot xdg-user-dirs-update
|
||||
execl chuser xdg-user-dirs-update
|
||||
# Turn on some services
|
||||
showdo "Enabling services"
|
||||
execl chroot systemctl enable lightdm
|
||||
execl chroot systemctl enable NetworkManager
|
||||
execl chroot systemctl enable dhcpcd
|
||||
|
||||
# Enable cupsd service for printing
|
||||
if [[ $cups = "1" ]];then
|
||||
execl chroot systemctl enable org.cups.cupsd
|
||||
fi
|
||||
execl chroot systemctl enable systemd-swap #Swap detection
|
||||
execl chroot systemctl enable org.cups.cupsd #Enable cupsd service for printing
|
||||
|
||||
# Configure wine if neccesary
|
||||
if [[ $inswine = "1" ]];then
|
||||
@@ -525,8 +535,8 @@ function installconf {
|
||||
# Linux kernel
|
||||
execl chroot mkinitcpio -p linux #Hacemos el mkinitcpio después de tener instalados los gráficos
|
||||
|
||||
confirm=`yesnobox "¿Instalar gestor de arranque? (Pulsar SI a no ser que sepas lo que haces)"`
|
||||
if [[ $confirm == "Y" ]];then
|
||||
yesnobox "¿Instalar gestor de arranque? (Pulsar SI a no ser que sepas lo que haces)"
|
||||
if [[ $? == "0" ]];then
|
||||
# Install and configure bootloader GRUB/rEFInd
|
||||
if [[ -z $partefi ]];then #If it dont have EFI
|
||||
execl chroot pacman -S grub os-prober --noconfirm
|
||||
@@ -550,9 +560,10 @@ function installconf {
|
||||
|
||||
|
||||
# Clean pacman
|
||||
echo "$(T "Cleaning")"
|
||||
showdo "$(T "Cleaning")"
|
||||
execl chroot rm -rf $sfslocate/var/cache/pacman/pkg/*
|
||||
execl chroot pacman -Sc --noconfirm
|
||||
|
||||
} # Fin installconf
|
||||
|
||||
|
||||
@@ -604,44 +615,95 @@ function keyboardlayout {
|
||||
|
||||
##End of declaring functions, start of script
|
||||
|
||||
#Prepare system before install
|
||||
mostrardialog "$(T "JKArch install script")" "Preparando el sistema para la instalacion"
|
||||
|
||||
#Grow cowspace
|
||||
sudo -S mount -o remount,size=700M /run/archiso/cowspace
|
||||
# Prepare system for install
|
||||
if [[ ! -f "jkarch" ]];then
|
||||
#Prepare system before install
|
||||
dialog --title "JKArch install script" --msgbox "Starting installation, please wait" 15 60
|
||||
# First add exec permisson to me
|
||||
chmod +x installer.sh
|
||||
# Grow cowspace
|
||||
showdo "Grow cowspace for installer"
|
||||
execl mount -o remount,size=700M /run/archiso/cowspace
|
||||
|
||||
|
||||
# Download JKArch scripts and data...
|
||||
showdo "Downloading JKArch scripts and data" "1"
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/installer/translations.sh -O /root/translations.sh ; isanetworkerror
|
||||
wget -nv https://gitlab.com/JKANetwork/JKArch/raw/master/installer/pacman.conf -O /root/pacman.conf ; isanetworkerror
|
||||
wget -nv https://mirror.jkanetwork.com/Arch-repository/jkarch-mirrorlist -O /etc/pacman.d/jkarch-mirrorlist ; isanetworkerror #Goes to live image for download better base things
|
||||
showdo "Downloaded JKArch scripts and data" "2"
|
||||
|
||||
#Enable pacman
|
||||
showdo "Configuring pacman" "1"
|
||||
execl pacman-key --init
|
||||
execl pacman-key --populate
|
||||
execl pacman -Sy archlinux-keyring --noconfirm
|
||||
showdo "Configuring pacman" "2"
|
||||
|
||||
#Enable pacman
|
||||
pacman-key --init
|
||||
pacman-key --populate
|
||||
showdo "Updating mirrors" "1"
|
||||
execl pacman -S reflector --noconfirm
|
||||
execl reflector --verbose -l 6 --sort rate --save /etc/pacman.d/mirrorlist
|
||||
showdo "Updated mirrors" "2"
|
||||
|
||||
#Update keyring
|
||||
sudo pacman -Sy archlinux-keyring --noconfirm
|
||||
pacman -S reflector --noconfirm
|
||||
sudo reflector --verbose -l 6 --sort rate --save /etc/pacman.d/mirrorlist
|
||||
#Delete programs (For not updating it)
|
||||
sudo pacman -R clonezilla darkhttpd diffutils grml-zsh-config irssi linux-atm lvm2 man-db man-pages mc ndisc6 nmap smartmontools testdisk vi vim vim-runtime zsh openconnect pcsclite python2 python reflector --noconfirm
|
||||
sudo rm -rf /var/cache/pacman/pkg/*
|
||||
#Needed progs (gparted)
|
||||
sudo pacman -S gparted xf86-video-vesa xorg-xinit lwm --noconfirm
|
||||
sudo rm -rf /var/cache/pacman/pkg/*
|
||||
#Update progs
|
||||
sudo pacman -Su --noconfirm --ignore linux #Do not upgrade kernel automatically
|
||||
sudo rm -rf /var/cache/pacman/pkg/*
|
||||
showdo "Removing and installing live programs to start installation" "1"
|
||||
#Delete programs (For not updating it)
|
||||
pacman -R clonezilla darkhttpd diffutils grml-zsh-config irssi linux-atm lvm2 man-db man-pages mc ndisc6 nmap smartmontools testdisk vi vim vim-runtime openconnect pcsclite python2 python reflector --noconfirm
|
||||
rm -rf /var/cache/pacman/pkg/*
|
||||
#Needed progs (gparted)
|
||||
pacman -S gparted xf86-video-vesa xorg-xinit lwm xorg-xrandr xorg-xsetroot xterm --noconfirm ; pacmanerror
|
||||
rm -rf /var/cache/pacman/pkg/*
|
||||
#Update progs
|
||||
pacman -Su --noconfirm --ignore linux #Do not upgrade kernel automatically
|
||||
rm -rf /var/cache/pacman/pkg/*
|
||||
showdo "Prepared live image to start installation" "2"
|
||||
|
||||
rm /etc/X11/xinit/xinitrc
|
||||
touch /etc/X11/xinit/xinitrc
|
||||
chmod 777 /etc/X11/xinit/xinitrc
|
||||
echo "#Start gparted with startx command" > /etc/X11/xinit/xinitrc
|
||||
echo "lwm &" >> /etc/X11/xinit/xinitrc
|
||||
echo "xrandr -s 1024x768 -r 60" >> /etc/X11/xinit/xinitrc
|
||||
echo "xsetroot -solid lightskyblue4" >> /etc/X11/xinit/xinitrc
|
||||
echo "xterm -e '/root/installer.sh' -geometry 120x35" >> /etc/X11/xinit/xinitrc
|
||||
chmod 644 /etc/X11/xinit/xinitrc
|
||||
rm -rf /var/cache/pacman/pkg/*
|
||||
|
||||
|
||||
sudo rm /etc/X11/xinit/xinitrc
|
||||
sudo touch /etc/X11/xinit/xinitrc
|
||||
sudo chmod 777 /etc/X11/xinit/xinitrc
|
||||
sudo echo "#Start gparted with startx command" > /etc/X11/xinit/xinitrc
|
||||
sudo echo "lwm & gparted" >> /etc/X11/xinit/xinitrc
|
||||
sudo chmod 644 /etc/X11/xinit/xinitrc
|
||||
sudo rm -rf /var/cache/pacman/pkg/*
|
||||
# No black screensaver
|
||||
setterm -blank 0 -powerdown 0 -powersave off
|
||||
# Fix for some chars
|
||||
export NCURSES_NO_UTF8_ACS=1
|
||||
|
||||
# System prepared, now start installer
|
||||
touch /root/jkarch
|
||||
startx
|
||||
#Exit this.
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
## Start install
|
||||
|
||||
# Load translations
|
||||
source translations.sh
|
||||
|
||||
#First of all, the language
|
||||
idiom=`dialog --stdout --nocancel --backtitle "JKArch Instalation" --title "Language selection" --menu "Select your language / Selecciona tu idioma" 0 70 5 1 "Spanish (es)" 2 "English (en) (In progress)"`
|
||||
|
||||
if [[ $idiom -eq 1 ]];then
|
||||
sclang="es"
|
||||
loadkeys es
|
||||
elif [[ $idiom -eq 2 ]];then
|
||||
sclang="en"
|
||||
loadkeys en
|
||||
fi
|
||||
|
||||
|
||||
#Start install
|
||||
clear
|
||||
mostrardialog "$(T "JKArch install script")" "$(T "Intro arch install script")"
|
||||
|
||||
mostrardialog "JKArch" "El script esta en estado beta y puede haber fallos. En caso de fallo, vuelva a probar en unas horas o con la versión offline.\nTambien podeis mandarnos un correo a contacto@jkanetwork.com y usar el log guardado en /tmp"
|
||||
mostrardialog "JKArch" "El script esta en estado beta y puede haber fallos. En caso de fallo, vuelva a probar en unas horas.\nTambien podeis mandarnos un correo a contacto@jkanetwork.com y usar el log guardado en /tmp, describiendo que sucedio"
|
||||
|
||||
echo "Desmontando posibles particiones"
|
||||
umount /mnt/boot/efi/
|
||||
@@ -651,10 +713,7 @@ umount /mnt/
|
||||
# Start questions, functions for timezone, enviroment, programs...
|
||||
|
||||
particiones
|
||||
horaidioma
|
||||
|
||||
#Graficos (Falta la parte de VM)
|
||||
allpackages=$allpackages" "$(pacman -Ssq xf86-video-*)
|
||||
horaidioma
|
||||
|
||||
#Aqui va la personalizacion de programas, ya que son graficos.
|
||||
appsuser
|
||||
@@ -664,14 +723,8 @@ userpass
|
||||
|
||||
clear
|
||||
# Resumen de los cambios
|
||||
tput setaf 6
|
||||
echo "$(T "Ok, last thing before start installing, summary of changes")"
|
||||
echo "$(T "Partition scheme before your changes")"
|
||||
tput setaf 9
|
||||
lsblk --output NAME,KNAME,FSTYPE,SIZE,LABEL
|
||||
tput setaf 6
|
||||
echo "$(T "Your changes")"
|
||||
tput setaf 9
|
||||
|
||||
# Vars before the dialog
|
||||
case $formatoraiz in
|
||||
"mkfs.ext4 -F")
|
||||
mosfraiz="$(T "ext4 formatted")";;
|
||||
@@ -682,8 +735,6 @@ case $formatoraiz in
|
||||
"echo No formatear ")
|
||||
mosfraiz="$(T "not formatted")";;
|
||||
esac
|
||||
echo "$(T "Root partition"): $particionraiz , $mosfraiz"
|
||||
if [[ $particionhome ]];then
|
||||
case $formatohome in
|
||||
"mkfs.ext4 -F")
|
||||
mosfhome="$(T "ext4 formatted")";;
|
||||
@@ -694,12 +745,6 @@ case $formatohome in
|
||||
"echo No formatear ")
|
||||
mosfhome="$(T "not formatted")";;
|
||||
esac
|
||||
echo "$(T "Home partition"): $particionhome , $mosfhome"
|
||||
fi
|
||||
if [[ $partefi ]];then
|
||||
echo "$(T "EFI partition in") $partefi"
|
||||
fi
|
||||
|
||||
# Log options
|
||||
echo "------" >> "/tmp/install.log"
|
||||
echo "Install partition options" >> "/tmp/install.log"
|
||||
@@ -708,34 +753,31 @@ if [[ $mosfraiz != "$(T "not formatted")" ]];then
|
||||
else
|
||||
echo "Root partition $particionraiz not formatted" >> "/tmp/install.log"
|
||||
fi
|
||||
tamraiz=`lsblk /dev/$particionraiz --noheadings --output SIZE`
|
||||
if [[ $particionhome ]];then
|
||||
if [[ $mosfhome != "$(T "not formatted")" ]];then
|
||||
echo "Format $mosfhome the partiton $particionhome for /home" >> "/tmp/install.log"
|
||||
else
|
||||
echo "Home partition $particionhome not formatted" >> "/tmp/install.log"
|
||||
fi
|
||||
tamhome=`lsblk /dev/$particionhome --noheadings --output SIZE`
|
||||
fi
|
||||
#
|
||||
#For do output in multiline, lsblk has to be in a var for echoing with " "
|
||||
|
||||
# Make the question
|
||||
dialog --nocancel --stdout --yes-label "Si, instalar" --no-label "No, volver a empezar" --yesno "$(T "Ok, last thing before start installing, summary of changes")\n \
|
||||
$(T "Your changes") \n \
|
||||
$(T "Root partition"): $particionraiz, de $tamraiz , $mosfraiz \n \
|
||||
$(if [[ $particionhome ]];then echo $(T "Home partition"): $particionhome, de $tamhome, $mosfhome;fi) \n \
|
||||
$(if [[ $partefi ]];then echo $(T "EFI partition in") $partefi;fi) \n \
|
||||
¿Estas de acuerdo con los cambios y quieres comenzar la instalacion?" 0 0
|
||||
|
||||
#Pregunta si instalar o no
|
||||
tput setaf 1
|
||||
echo "¿Estas de acuerdo con los cambios y quieres comenzar la instalacion?"
|
||||
options=("No, volver a empezar" "Si, instalar" "No, apagar el ordenador")
|
||||
select opt in "${options[@]}"
|
||||
do
|
||||
case $opt in
|
||||
"No, volver a empezar")
|
||||
if [[ $? == "1" ]];then #If say no, reset install
|
||||
rm /tmp/install.log
|
||||
exec ./selectlang.sh
|
||||
break;;
|
||||
"Si, instalar") break;;
|
||||
"No, apagar el ordenador")
|
||||
poweroff
|
||||
exit
|
||||
;;
|
||||
esac
|
||||
done
|
||||
exec ./installer.sh
|
||||
exit
|
||||
fi
|
||||
tput setaf 9
|
||||
|
||||
# Real install
|
||||
BIN
installer/jkarch-data.tar.xz
Normal file
BIN
installer/jkarch-data.tar.xz
Normal file
Binary file not shown.
BIN
mods/LXDE.tar.xz
BIN
mods/LXDE.tar.xz
Binary file not shown.
BIN
mods/MATE.tar.xz
BIN
mods/MATE.tar.xz
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
mods/skel.tar.xz
BIN
mods/skel.tar.xz
Binary file not shown.
@@ -1,72 +0,0 @@
|
||||
#!/bin/bash
|
||||
function pause {
|
||||
echo "Pulse enter para continuar..."
|
||||
read
|
||||
}
|
||||
|
||||
function mostrardialog {
|
||||
local titled
|
||||
local msgd
|
||||
titled=$1
|
||||
msgd=$2
|
||||
Xdialog --title "$titled" --msgbox "$msgd" 15 60
|
||||
}
|
||||
|
||||
## ESTA EN PROCESO, ESTE SCRIPT NO HACE NADA ACTUALMENTE
|
||||
exit
|
||||
|
||||
optb=`dialog --stdout --checklist "¿Editores de texto y/o office?" 0 0 6 1 "Libreoffice" on 2 "AbiWord" off 3 "Gnumeric" off 4 "WPS Office" off 5 "leafpad (Bloc de notas)" on 6 "gedit" off 7 "notepadqq" off`
|
||||
case $optb in
|
||||
*1*)
|
||||
packb="libreoffice-fresh";;&
|
||||
*2*)
|
||||
packb="$packb abiword";;&
|
||||
*3*)
|
||||
packb="$packb gnumeric";;&
|
||||
*4*)
|
||||
packb="$packb wps-office";;&
|
||||
*5*)
|
||||
packb="$packb leafpad";;&
|
||||
*6*)
|
||||
packb="$packb gedit";;&
|
||||
*7*)
|
||||
packb="$packb notepadqq";;&
|
||||
esac
|
||||
pacman -S $packb --noconfirm
|
||||
|
||||
clear
|
||||
optentorno=`dialog --stdout --nocancel --menu "Escoje tu entorno de escritorio" 0 0 5 1 "LXDE (Muy liviano)" 2 "XFCE (Liviano y bonito)" 3 "Cinnamon (Facil para antiguos usuarios de Windows)" 4 "Gnome (Complejo, pero practico)" 5 "Plasma/KDE (Pesado aunque bonito) " 6 "No instalar nada, solo la terminal de comandos"`
|
||||
|
||||
case $optentorno in
|
||||
1)
|
||||
pacman -S lxde --noconfirm
|
||||
#Quitar paquetes no necesarios para correr lxde
|
||||
pacman -R lxmusic lxlauncher lxdm --noconfirm
|
||||
instentorno=1
|
||||
break
|
||||
;;
|
||||
2)
|
||||
pacman -S xfce4 --noconfirm
|
||||
instentorno=1
|
||||
break
|
||||
;;
|
||||
3)
|
||||
pacman -S cinnamon --noconfirm
|
||||
instentorno=1
|
||||
break
|
||||
;;
|
||||
4)
|
||||
pacman -S gnome --noconfirm
|
||||
instentorno=1
|
||||
break
|
||||
;;
|
||||
5)
|
||||
pacman -S plasma --noconfirm
|
||||
pacman -R plasma-mediacenter ksshaskpass --noconfirm
|
||||
instentorno=1
|
||||
break
|
||||
;;
|
||||
6)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
71
tuto.md
Normal file
71
tuto.md
Normal file
@@ -0,0 +1,71 @@
|
||||
---
|
||||
Title: Tutorial de instalación
|
||||
Description: JKArch, la distribución Linux basada en Arch lista para usar!
|
||||
social:
|
||||
- title: Visit us on GitLab
|
||||
url: https://gitlab.com/JKANetwork/JKArch
|
||||
icon: octocat
|
||||
---
|
||||
|
||||
# Tutorial JKArch (En progreso)
|
||||
|
||||
En este tutorial abordaremos, primero para los que no sepan, un poco sobre particiones y Linux, y luego, la instalación en si
|
||||
|
||||
En el FAQ hay respuestas a problemas que puedan darse al instalar JKArch
|
||||
|
||||
Los que sepan algo ya sobre particiones y Linux pueden ir hasta la parte de "Instalación"
|
||||
|
||||
## Introducción a Linux y particiones
|
||||
|
||||
Esta introducción pretende simplificar a la gente que no conoce acerca de linux y las particiones para que resulte más sencillo de entender y dar el paso.
|
||||
|
||||
(Como aclaración, cuando hablemos de Linux, hablamos de distribuciones basadas en Linux y no del Linux Kernel, centro de todas las distribuciones Linux, ya que sería más complejo de explicar.)
|
||||
|
||||
Linux, es, como Windows, otro sistema operativo, pero con grandes diferencias, a las que yo llamaría ventajas. Linux es más rapido (al ser más optimizado en cuando a "extras"), muy muy personalizable (Desde la barra de tareas, color de ventanas, exploradores, interfaces..), tiene un sistema de gestión de programas y actualizaciones que Windows no tiene, en Linux siempre puedes actualizar todo con un simple comando (o botón). Aunque siempre se dice que Linux es "para geeks", o para gente que le gusta esas terminales negras y blancas con letras, se puede usar Linux perfectamente entendiendo poco, ya que hay interfaces gráficas para casi todas las cosas que lo hacen todo muy simple
|
||||
|
||||
Claro, Linux también tiene desventajas, pero acaso Windows no se cuelga cada dos por tres? Ningún sistema operativo es perfecto, pero creemos que Linux esta mucho más cerca. También somos conscientes de que Linux aun no esta tan maduro como para servir para jugones, pero está cada vez más cerca.
|
||||
|
||||
__Particiones:__ Las particiones son, los trozos en los que esta dividido un disco duro (que es donde tienes todos tus datos), normalmente, en Windows, lo ves como C, o como C y D . Eso son divisiones de tu disco duro, donde almacenas tus cosas. Linux tiene, y necesita de sus propias divisiones, al igual que Windows. Suena dificil? Para eso hay programas graficos y simples como Gparted, que hacen que modificar esas divisiones sea muy fácil.
|
||||
|
||||
## Instalación
|
||||
|
||||
(Antes de comenzar debemos advertir que las configuraciones GPT/EFI son experimentales y pueden fallar aunque nomalmente funcionan bien. Si usa EFI, en el FAQ tenemos soluciones a problemas que puedan darse)
|
||||
|
||||
Entramos en el meollo de la cuestión, instalar JKArch
|
||||
|
||||
**Cuando tengamos ISOs propias, esta parte será actualizada**
|
||||
|
||||
Para ello, hay que descargar la imagen de Archlinux (en el "Home" de la web está), y grabarla en un CD (Recomendamos "[CDBurner XP](https://cdburnerxp.se/es/home)" o "[Astroburn lite](http://www.astroburn.com/spa/home)" en los apartados de grabación de imagen correspondientes, y si usa Linux, Brasero o K3b)
|
||||
|
||||
_Si prefiere utilizar un USB (que debe estar vacío) puede hacerlo usando progarmas simples como [Lili USB Creator](http://www.linuxliveusb.com/) o [Etcher](http://www.etcher.io/) para ello._
|
||||
|
||||
Cuando lo tenga, reinicie su ordenador y arranque desde el disco. (Nota: Si usa UEFI/EFI ya actualmente,como en algunos ordenadores nuevos con Windows, es recomendable arrancar en modo uefi)
|
||||
|
||||
Una vez que arranque, si su conexión a internet es por cable, pase al siguiente párrafo, pero si es por wifi, primero debe ejecutar "wifi-menu" para conectarse a internet.
|
||||
|
||||
Con ello, escriba lo siguiente para entrar en el instalador:
|
||||
|
||||
```
|
||||
wget https://goo.gl/gmfrx7 -O installer.sh
|
||||
bash installer.sh
|
||||
```
|
||||
|
||||
La parte más importante es la selección de las particiones. El sistema debe tener una particion para Linux, que puedes hacer con Gparted desde la propia imagen sin problemas. Aconsejamos ponerle una "etiqueta" a la partición del sistema.
|
||||
|
||||
Después de crear tus particiones, se mostrarán tus discos duros con sus particiones. Deberás seleccionar primero que disco duro vas a usar
|
||||
Se te pedirá que partición del disco duro es la que vas a usar para JKArch y en que sistema de archivos la quieres (Recomendamos ext4). Tras
|
||||
esto, nos hará las mismas preguntas si queremos separar la partición de datos de usuario /home. Para usuarios novatos es mejor que no la separéis.
|
||||
|
||||
Después te hará algunas preguntas sobre el idioma, zona horaria y el navegador que deseas.
|
||||
|
||||
Te mostrará los cambios que se harán, y al aceptar, comenzará la instalación. Puede tardar un rato largo dependiendo de su conexión a internet, espere hasta que le indique el instalador.
|
||||
|
||||
Al finalizar la instalación de programas, se le preguntara acerca de la instalación del gestor de arranque, a no ser que tenga algo pensado, debería decir que si, para poder arrancar Linux tras la instalación.
|
||||
|
||||
Después, se le mostrarán diversos ajustes opcionales que puede hacer si lo desea, y con ello, terminará la instalación, y se reiniciará el ordenador preparado para poder ser usado con JKArch!
|
||||
|
||||
Ahora, cuando su ordenador arranque, dependiendo del gestor de arranque:
|
||||
|
||||
__GRUB:__ Deberá seleccionar la opción "Arch Linux" en el menú
|
||||
|
||||
__rEFInd:__ Deberá seleccionar la opción que dice "Boot boot\vmlinuz-linux" con el icono de Archlinux en el menú
|
||||
Reference in New Issue
Block a user