Difference between revisions of "Software projects/OS/SOLEIL"
From Pandora Wiki
Linux-SWAT (talk | contribs) |
Linux-SWAT (talk | contribs) m (new boards links) |
||
(19 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
= Disclaimer = | = Disclaimer = | ||
* Same as [http://pandorawiki.org/Software_projects/OS/Slackware#Disclaimer here.] | * Same as [http://pandorawiki.org/Software_projects/OS/Slackware#Disclaimer here.] | ||
− | * The release thread is located here: | + | * The 14.1 release thread is located here: https://pyra-handheld.com/boards/threads/sl4p-14-1-soleil-14-1-soja-significant-improvement.73230/ |
+ | * The 14.0 release (unsupported) thread is located here: https://pyra-handheld.com/boards/threads/application-soleil.69147/ | ||
* The build system is GPL V3. | * The build system is GPL V3. | ||
Line 10: | Line 11: | ||
* In french, Soleil means Sun. | * In french, Soleil means Sun. | ||
* SOLEIL is a Slackware-based operating system. | * SOLEIL is a Slackware-based operating system. | ||
− | * The Pandora version of SOLEIL is based on SL4P, Slackware for Pandora, itself based on Slackware ARM. | + | * The Pandora version of SOLEIL is based on [http://pandorawiki.org/Slackware SL4P], Slackware for Pandora, itself based on Slackware ARM. |
= Ok, but what is SOLEIL ?!!? = | = Ok, but what is SOLEIL ?!!? = | ||
Line 19: | Line 20: | ||
** a NFS server | ** a NFS server | ||
** a Inetd server | ** a Inetd server | ||
− | ** a distcc server, networked distributed compilation system for faster ARM compilations | + | ** a distcc server, networked distributed compilation system for faster x86_32, x86_64 and ARM compilations |
** a PXE boot server to start simultaneously multiple x86 32 bits and 64 bits PC, and also GameCube PowerPC. Currently supported are: | ** a PXE boot server to start simultaneously multiple x86 32 bits and 64 bits PC, and also GameCube PowerPC. Currently supported are: | ||
− | *** Slackware 32 and 64 | + | *** Slackware 32 and 64 bits installers |
*** Dyne:bolic, a Linux home studio for making music | *** Dyne:bolic, a Linux home studio for making music | ||
*** System Rescue CD, a Gentoo-based Linux to repair filesystems, recover data etc. | *** System Rescue CD, a Gentoo-based Linux to repair filesystems, recover data etc. | ||
Line 54: | Line 55: | ||
* There's two rootfs, minimal and maximal. | * There's two rootfs, minimal and maximal. | ||
* Note that maximal version may not be available for download because of the reason below. | * Note that maximal version may not be available for download because of the reason below. | ||
− | * Minimal (16G SD card) only contains a 32 and 64 | + | * Minimal (16G SD card) only contains a 32 and 64 bits Slackware PXE, and all extra features can be installed as long as you have internet. Be careful to use a 32G SD card if you want to install extra features. |
* Maximal (32G SD card) contains all features. | * Maximal (32G SD card) contains all features. | ||
Line 77: | Line 78: | ||
dhcpcd wlan0 | dhcpcd wlan0 | ||
− | = Booting Slackware PXE = | + | = Booting Slackware PXE for the first time = |
− | * Once you're at the graphical login prompt, you can't log in because no root password is defined. | + | * Once the PC is started and you're at the graphical login prompt, you can't log in because no root password is defined. |
− | * | + | * Use Ctrl + Alt + F2 to access a new tty, log in as: |
root | root | ||
then type | then type | ||
Line 88: | Line 89: | ||
exit | exit | ||
* Finally, use Ctrl + Alt + F7 to come back to the graphical login manager, and log in. | * Finally, use Ctrl + Alt + F7 to come back to the graphical login manager, and log in. | ||
+ | * You have to do this for both 32 and 64 bits versions. | ||
+ | |||
+ | = Qemu network boot over USB = | ||
+ | * The eth0 ethernet interface is bridged with the usb0 interface, so you can boot Qemu over USB. | ||
= Installing the extra features in the minimal rootfs = | = Installing the extra features in the minimal rootfs = | ||
Line 96: | Line 101: | ||
sh 4.1-x86-GPARTED.sh /media/SLACK | sh 4.1-x86-GPARTED.sh /media/SLACK | ||
* Same for G4L, System Rescue CD, Dyne:bolic, OpenBSD and gc-linux | * Same for G4L, System Rescue CD, Dyne:bolic, OpenBSD and gc-linux | ||
− | * For the 32/64 | + | * For the 32/64 bits Slackware installers, use this: |
sh 3.3-x86-COPY-SLACK-ISOS.sh / 14.1 x86_32 | sh 3.3-x86-COPY-SLACK-ISOS.sh / 14.1 x86_32 | ||
or | or | ||
sh 3.3-x86-COPY-SLACK-ISOS.sh / 14.1 x86_64 | sh 3.3-x86-COPY-SLACK-ISOS.sh / 14.1 x86_64 | ||
* Replace / with /media/SLACK if you're on a PC with the SD in the card reader. | * Replace / with /media/SLACK if you're on a PC with the SD in the card reader. | ||
+ | * Remove downloaded isos from /etc/SOLEIL/installers/isos/ or /media/SLACK/etc/SOLEIL/installers/isos/ . | ||
* Reboot the Pandora. | * Reboot the Pandora. | ||
− | = Switch back to normal Slackware mode = | + | = GameCube Linux = |
+ | * After having run the SOLEIL's GameCube install script (see above), the procedure is a bit extended as it's required to prepare your Nintendo console. So you need some lecture. Here are the links:<br> | ||
+ | http://www.gc-linux.org/wiki/SDload#Preparing_a_SD_card_from_GNU.2FLinux<br> | ||
+ | http://www.gc-linux.org/wiki/Setting_up_GC-Linux_with_NFS<br> | ||
+ | http://www.gc-linux.org/wiki/Setting_up_GC-Linux_with_NBD-root (not used, but more info) | ||
+ | * SOLEIL has 10.0.0.1 as IP, so when you'll edit the kernel with the hexadecimal editor, replace the default server IP with 010.000.000.001 . | ||
+ | * You can also simply download the IP-ready kernel here: http://slackware.openpandora.org/pandora/index.php?dir=SOLEIL%2Fgamecube%2Fboot | ||
+ | |||
+ | = Switch back SOLEIL to normal Slackware mode = | ||
* It's pretty simple: | * It's pretty simple: | ||
− | chmod -x /etc/rc.d/rc.SOLEIL | + | chmod -x /etc/SOLEIL/rc.d/rc.SOLEIL |
chmod +x /etc/rc.d/rc.networkmanager | chmod +x /etc/rc.d/rc.networkmanager | ||
* And reboot. | * And reboot. | ||
Line 119: | Line 133: | ||
* SOJA is a self-made graphical Java program interfaced with a PostgreSQL database. | * SOJA is a self-made graphical Java program interfaced with a PostgreSQL database. | ||
* It helps you to fix default booted OSes according to the client's MAC address. | * It helps you to fix default booted OSes according to the client's MAC address. | ||
− | * It | + | * It stopped working since 14.1 OpenJDK update and is not operational out of the box. |
+ | * Oracle JDK is needed, but I can't ship it as it's forbidden to do so (f**k you, oracle). | ||
+ | * Here's the procedure to make SOJA work: | ||
+ | |||
+ | * Go to http://www.oracle.com/technetwork/java/javase/downloads/index.html <br> | ||
+ | Click on download Java Platform (JDK) <br> | ||
+ | Accept the license, then get jdk-*-linux-arm-vfp-sflt.tar.gz | ||
+ | |||
+ | * Get the Slackware Java package creator: | ||
+ | wget http://slackware.openpandora.org/pandora/SOLEIL/soja/java.tar.gz | ||
+ | tar zxvf java.tar.gz | ||
+ | |||
+ | * Copy the jdk-*-linux-arm-vfp-sflt.tar.gz inside the extracted java directory. | ||
+ | |||
+ | su - | ||
+ | removepkg /var/log/packages/openjdk-7u13_b20-armhfp-1 | ||
+ | cd /path/to/the/extracted/java_dir | ||
+ | sh java.SlackBuild | ||
+ | installpkg /tmp/jdk-*-i586-1.txz | ||
+ | |||
+ | * Note that the i586 is a mistake, ignore that. | ||
+ | |||
+ | cp /usr/share/postgresql-jdbc/postgresql-*.jar /usr/lib/java/jre/lib/ext/ | ||
+ | cd /usr/lib/soja | ||
+ | javac SOJA.java | ||
+ | |||
+ | * SOJA's icon is located in the System menu. | ||
+ | * Enjoy. | ||
+ | |||
+ | [[Category:Operating system]] |
Latest revision as of 17:52, 16 April 2021
Contents
- 1 Disclaimer
- 2 Helping this project
- 3 What is SOLEIL ?
- 4 Ok, but what is SOLEIL ?!!?
- 5 Media choice
- 6 Accessories choice
- 7 Installation
- 8 Rootfs versions
- 9 Setup
- 10 Wi-Fi gateway
- 11 Booting Slackware PXE for the first time
- 12 Qemu network boot over USB
- 13 Installing the extra features in the minimal rootfs
- 14 GameCube Linux
- 15 Switch back SOLEIL to normal Slackware mode
- 16 Differences with SL4P
- 17 SOJA
Disclaimer
- Same as here.
- The 14.1 release thread is located here: https://pyra-handheld.com/boards/threads/sl4p-14-1-soleil-14-1-soja-significant-improvement.73230/
- The 14.0 release (unsupported) thread is located here: https://pyra-handheld.com/boards/threads/application-soleil.69147/
- The build system is GPL V3.
Helping this project
- Same as here.
What is SOLEIL ?
- In french, Soleil means Sun.
- SOLEIL is a Slackware-based operating system.
- The Pandora version of SOLEIL is based on SL4P, Slackware for Pandora, itself based on Slackware ARM.
Ok, but what is SOLEIL ?!!?
- It's the core of a mobile network. In a few seconds, you can use your Pandora to act as:
- a firewall/gateway/router
- a DNS server
- a DHCP server
- a NFS server
- a Inetd server
- a distcc server, networked distributed compilation system for faster x86_32, x86_64 and ARM compilations
- a PXE boot server to start simultaneously multiple x86 32 bits and 64 bits PC, and also GameCube PowerPC. Currently supported are:
- Slackware 32 and 64 bits installers
- Dyne:bolic, a Linux home studio for making music
- System Rescue CD, a Gentoo-based Linux to repair filesystems, recover data etc.
- GParted, a Debian-based Linux for partitioning and formatting hard drives, SSD, SD cards etc.
- Ghost for Linux (G4L), a powerful hard drive clone/backup utility
- OpenBSD (the most secure free operating system) installer
- Gc-linux, Linux for the Nintendo GameCube
- MemTest, different versions of a RAM testing tool
- Hardware Detection Tool, for quickly make an inventory of the booted PC's hardware
- And the main feature is to act as a PXE boot server to start two persistent versions of Slackware, 32 bits and 64 bits
- You can watch video demos there: http://slackware.openpandora.org/pandora/index.php?dir=videos%2FSOLEIL
Media choice
- SOLEIL runs on a SD card. 32G or more are recommended if you plan to install all features. A minimal install will run on 16G although no minimum size plan is clearly defined for now.
- The SD card must support Linux filesystems, see this SD compatibility chart.
- I myself recommend the SanDisk Extreme, Extreme PLUS or Extreme Pro cards.
Accessories choice
- Although there's ways to do without, you'll need one or two USB to Ethernet adapters.
- I myself recommend those (2013). They can be connected to each other without the need of an external power supply:
- For letting USB host ports available - http://www.logitec.co.jp/products/lan/lantxu2h3/index.php
- For Gigabit ethernet at the lowest current drain - http://www.trendnet.com/products/proddetail.asp?prod=275_TU2-ETG
- As far as I know, most adapters will work
Installation
- Follow the SL4P procedure: http://pandorawiki.org/Software_projects/OS/Slackware#Installation
- Instead of grabbing the SL4P release, get SOLEIL rootfs here: http://slackware.openpandora.org/pandora/index.php?dir=SOLEIL%2FSOLEIL-14.1%2Frootfs
- Older releases (unsupported): http://slackware.openpandora.org/pandora/index.php?dir=SOLEIL%2FSOLEIL-14.0%2Frootfs
Rootfs versions
- There's two rootfs, minimal and maximal.
- Note that maximal version may not be available for download because of the reason below.
- Minimal (16G SD card) only contains a 32 and 64 bits Slackware PXE, and all extra features can be installed as long as you have internet. Be careful to use a 32G SD card if you want to install extra features.
- Maximal (32G SD card) contains all features.
Setup
- Once the rootfs is installed on the SD card, you have to setup a "Master" client PC. Edit /etc/dhcpd.conf, and replace the 00:00:00:00:00:00 MAC adress with the one from this "Master".
- The Master PC has a full read/write access to the NFS, Network File System.
- Connect only the ethernet adapter that will be connected to the LAN. It will be named eth0 and this is important as the network setup is static.
- Boot the Pandora. Once you see the Xfce desktop, SOLEIL is ready.
- If you have a two adapter setup, shut down the OP, plug the internet-side adapter (will be eth1), and boot again.
- If you made a mistake with the ethernet names/order, edit /etc/udev/rules.d/70-persistent-net.rules .
Wi-Fi gateway
- If you plan to redistribute Internet gathered by the Pandora's wlan0, you'll have to make a few changes:
- edit /etc/rc.d/rc.SOLEIL and change
sh /etc/rc.d/rc.firewall.eth1.eth0 start
into
sh /etc/rc.d/rc.firewall.wlan0.eth0 start
- Reboot, then in order to get an IP on wlan0, activate Wi-Fi, then:
ifconfig wlan0 1.1.1.1 iwlist wlan0 scan iwconfig essid "your_essid" dhcpcd wlan0
Booting Slackware PXE for the first time
- Once the PC is started and you're at the graphical login prompt, you can't log in because no root password is defined.
- Use Ctrl + Alt + F2 to access a new tty, log in as:
root
then type
passwd
to, well, enter a password.
- Note that you won't see the typed characters, also keep in mind that you're using a qwerty layout.
- Then quit the shell with
exit
- Finally, use Ctrl + Alt + F7 to come back to the graphical login manager, and log in.
- You have to do this for both 32 and 64 bits versions.
Qemu network boot over USB
- The eth0 ethernet interface is bridged with the usb0 interface, so you can boot Qemu over USB.
Installing the extra features in the minimal rootfs
- Boot the Pandora, get internet, be root using su - , then, if you want to install GParted:
cd /etc/SOLEIL/installers sh 4.1-x86-GPARTED.sh /
- You can also install extras from a PC's card reader. If the SD root partition is named "SLACK" as mentioned in the SL4P wiki, and mounted under /media/ then:
sh 4.1-x86-GPARTED.sh /media/SLACK
- Same for G4L, System Rescue CD, Dyne:bolic, OpenBSD and gc-linux
- For the 32/64 bits Slackware installers, use this:
sh 3.3-x86-COPY-SLACK-ISOS.sh / 14.1 x86_32
or
sh 3.3-x86-COPY-SLACK-ISOS.sh / 14.1 x86_64
- Replace / with /media/SLACK if you're on a PC with the SD in the card reader.
- Remove downloaded isos from /etc/SOLEIL/installers/isos/ or /media/SLACK/etc/SOLEIL/installers/isos/ .
- Reboot the Pandora.
GameCube Linux
- After having run the SOLEIL's GameCube install script (see above), the procedure is a bit extended as it's required to prepare your Nintendo console. So you need some lecture. Here are the links:
http://www.gc-linux.org/wiki/SDload#Preparing_a_SD_card_from_GNU.2FLinux
http://www.gc-linux.org/wiki/Setting_up_GC-Linux_with_NFS
http://www.gc-linux.org/wiki/Setting_up_GC-Linux_with_NBD-root (not used, but more info)
- SOLEIL has 10.0.0.1 as IP, so when you'll edit the kernel with the hexadecimal editor, replace the default server IP with 010.000.000.001 .
- You can also simply download the IP-ready kernel here: http://slackware.openpandora.org/pandora/index.php?dir=SOLEIL%2Fgamecube%2Fboot
Switch back SOLEIL to normal Slackware mode
- It's pretty simple:
chmod -x /etc/SOLEIL/rc.d/rc.SOLEIL chmod +x /etc/rc.d/rc.networkmanager
- And reboot.
- Invert the chmod's to come back to SOLEIL.
Differences with SL4P
- There is no started network manager, all IP addresses are configured statically.
- The previously mentioned services are running.
- USB host is enabled by default.
- The default kernel has more networking features, and most debug functions removed.
SOJA
- SOJA is a self-made graphical Java program interfaced with a PostgreSQL database.
- It helps you to fix default booted OSes according to the client's MAC address.
- It stopped working since 14.1 OpenJDK update and is not operational out of the box.
- Oracle JDK is needed, but I can't ship it as it's forbidden to do so (f**k you, oracle).
- Here's the procedure to make SOJA work:
Click on download Java Platform (JDK)
Accept the license, then get jdk-*-linux-arm-vfp-sflt.tar.gz
- Get the Slackware Java package creator:
wget http://slackware.openpandora.org/pandora/SOLEIL/soja/java.tar.gz tar zxvf java.tar.gz
- Copy the jdk-*-linux-arm-vfp-sflt.tar.gz inside the extracted java directory.
su - removepkg /var/log/packages/openjdk-7u13_b20-armhfp-1 cd /path/to/the/extracted/java_dir sh java.SlackBuild installpkg /tmp/jdk-*-i586-1.txz
- Note that the i586 is a mistake, ignore that.
cp /usr/share/postgresql-jdbc/postgresql-*.jar /usr/lib/java/jre/lib/ext/ cd /usr/lib/soja javac SOJA.java
- SOJA's icon is located in the System menu.
- Enjoy.