Difference between revisions of "Software projects/OS/SOLEIL"
From Pandora Wiki
Linux-SWAT (talk | contribs) (→What is SOLEIL ?) |
Linux-SWAT (talk | contribs) m (new boards links) |
||
(26 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. 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 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. | ||
*** GParted, a Debian-based Linux for partitioning and formatting hard drives, SSD, SD cards 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 | *** 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 | *** MemTest, different versions of a RAM testing tool | ||
*** Hardware Detection Tool, for quickly make an inventory of the booted PC's hardware | *** Hardware Detection Tool, for quickly make an inventory of the booted PC's hardware | ||
Line 32: | Line 36: | ||
= Media choice = | = Media choice = | ||
− | * SOLEIL runs on a SD card. 32G or more are recommended if you plan to install all features. A minimal install | + | * 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 [http://pandorawiki.org/SD_compatibility_list this SD compatibility chart]. | * The SD card must support Linux filesystems, see [http://pandorawiki.org/SD_compatibility_list this SD compatibility chart]. | ||
− | * I myself recommend the [http://www.sandisk.com/products/memory-cards/sd/ SanDisk Extreme or Extreme Pro cards]. | + | * I myself recommend the [http://www.sandisk.com/products/memory-cards/sd/ SanDisk Extreme, Extreme PLUS or Extreme Pro cards]. |
= Accessories choice = | = Accessories choice = | ||
* Although there's ways to do without, you'll need one or two USB to Ethernet adapters. | * Although there's ways to do without, you'll need one or two USB to Ethernet adapters. | ||
− | * I myself recommend those. They can be connected to each other without the need of an external power supply: | + | * 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 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 | ** 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 = | = Installation = | ||
* Follow the SL4P procedure: http://pandorawiki.org/Software_projects/OS/Slackware#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.0%2Frootfs | + | * 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 = | = Rootfs versions = | ||
* There's two rootfs, minimal and maximal. | * There's two rootfs, minimal and maximal. | ||
− | * Minimal (16G SD card) only contains a 32 | + | * 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. | * Maximal (32G SD card) contains all features. | ||
Line 57: | Line 64: | ||
* Boot the Pandora. Once you see the Xfce desktop, SOLEIL is ready. | * 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 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, edit /etc/udev/rules.d/70-persistent-net.rules . | + | * If you made a mistake with the ethernet names/order, edit /etc/udev/rules.d/70-persistent-net.rules . |
= Wi-Fi gateway = | = Wi-Fi gateway = | ||
Line 70: | Line 77: | ||
iwconfig essid "your_essid" | iwconfig essid "your_essid" | ||
dhcpcd wlan0 | 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 = | = 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 | cd /etc/SOLEIL/installers | ||
− | sh 4.1-x86-GPARTED.sh | + | sh 4.1-x86-GPARTED.sh / |
− | * Same for G4L, System Rescue CD | + | * 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:<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 to normal Slackware mode = | + | = 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 90: | Line 128: | ||
* The previously mentioned services are running. | * The previously mentioned services are running. | ||
* USB host is enabled by default. | * 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: | ||
+ | |||
+ | * 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.