Several people complained that I've added malware to chromium in Slax, and similar shit :) So, lets take a look at it.
The chromium module in Slax is created using this method:
1) boot fresh Slax
2) apt install chromium
3) savechanges /04-chromium.sb
That is all. Well, the procedure is indeed a little bit more complicated since I want to remove some unneded files after apt install, and I need to provide a 'chromium' script which logins as guest user and starts the chromium binary, because chromium refuses to run as root, but other than that, I make no changes. Especially I add no chromium extensions etc. You can review the build script here
If you start chromium in Slax and check out chrome://extensions URL, you will indeed see three extensions. Those cannot be disabled or uninstalled through the settings interface. What are those extensions? Well I have no idea what they do, but you can gues by their names:
- bookmark manager - pdf viewer - cryptoTokenExtension
To be honest, I didn't know that chromium installed with apt install has such extensions. I am not sure if all of them are really needed. But as I mentioned, I am not adding these, if you install fresh Debian and you install chromium the way I did, you'll get those extensions too. I believe that Debian developers know what they are doing, and I doubt those extensions would be any harmful.
I can assure you that if I was to add malware to chromium in Slax, I would definitely add it in a way that you could never notice. Adding malware this way makes no sense :-)
Several people reported they have problem booting Slax from USB device, with the following error message displayed:
failed to load com32 file /slax/boot/vesamenu.c32I am not able to replicate this error, so I need your help to find out what particular change fixes it. So, if you are experiencing these troubles, please try the following and let me know what helps:
1) download latest syslinux
3) find file ./bios/com32/menu/vesamenu.c32
4) copy the vesamenu.c32 to your USB disk with Slax and try to boot Slax again.
If this helps to resolve your problem, please reply here that vesamenu.c32 is the only file which needs update. However, it is possible that some more files need to be added, so if only vesamenu.c32 won't help to fix your problem, try to copy also ./bios/com32/libutil/libutil.c32, ./bios/com32/libcom/libcom.c32, and maybe some others from the ./bios/com32 directory. I don't think that those are needed, but you can test.
I cannot solve this alone, since it doesn't fail on my computer. Thank you very much for your time playing with this.
In a reply to several questions about persistence, I'd like to put here few hints. Remember that this all works after reboot only if you select "Keep changes persistent" in the boot menu, and only if you are running Slax from a writable media such as USB disk.
1) how to make sshd server start automatically?
You can start ssh server manually by running
service ssh start. If you run it the first time, it creates some keys in /etc/ssh/ directory, so the first start is a little bit longer. But even after the keys are created, sshd won't autostart on reboot. It's because I manually disabled it in Slax, because root's password is well known. So, make sure to change your root's password (and password of the guest user) to something new. When done, run
systemctl enable ssh. It will basically create a symlink to ssh.service in multi-user.target.wants (which is in /etc/systemd/system directory). This ensures sshd will be started on boot.
2) How to make keyboard layout persistent?
I forgot to implement such functionality. So keyboard layout needs to be set from the fluxbox menu each time and there is no config file to change. You can make it persistent by editing /root/.fluxbox/startup ... add there a line such as
setxkbmap fr for french keyboard layout, etc. Make sure it is somewhere on top of the file. I will probably fix the persistence of keyboard layout in next Slax release, so if you set it this way, you may need to remove it from the startup file again at some point later, when Slax fixes this.
3) how to disable autostart of Xorg?
Similarly like enabling ssh server, you may disable autostarting of X by the following command:
systemctl disable xorg. This will remove display-manager.service symlink from /etc/systemd/system and you will get only text-mode console on next boot. You can still start X manually with the
startx command after login, though.
Apparently I forgot to include some wifi support in Slax. I don't have any device with wifi here at the moment, so I can't test, but there should be few things to consider. First of all, you will probably need some firmware for your wifi adapter. I'm not sure which packages to install, some of them may not be in official debian repository. Hopefully somebody in the comments will suggest something. Second, you will probably need some software to manage your wifi connections. Some people suggested wpa_supplicant, this can be installed with
apt install wpasupplicant. This is a commandline utility, as far as I can tell. If you are looking for a GUI to configure your wifi network, you may try
apt install network-manager-gnome nm-applet &
Or better (half download, only 50MB):
apt install wicd wicd-gtk -t &
This will put an icon in system tray, which you can use to access network settings using GUI.
Hope this helps a bit.
After several years of inactivity Slax project has been brought to life again in new version 9.2.1. For those who did not hear about it yet, Slax is a little distribution of GNU/Linux (in 200 MB), which runs on your computer without installing, and makes no changes to it (unless you tell it to do so).
This time, Slax uses Debian stretch as its base, and thus it can offer all the wonders of the mighty 'apt' command. If you are missing any software in Slax, use 'apt install SOFTWARENAME' to get it in an instant. I've decided to go for Debian because it made my life much easier and I believe that it will make yours too.
Graphical desktop uses FluxBox window manager and xLunch, which was written especially for Slax and with Slax needs in mind. Furthermore the development of xLunch continues independently.
There are only few applications included, Chromium is used as a web browser and video player, and there is also leafpad and calculator, just for the sake of completeness :]
You can consider Slax as a simple and minimalistic base Linux system, which you can carry in your pocket.
I am happy to announce that after a month of development, the next generation Slax Linux has been released. Proper release announcement will follow in few hours, I'm kinda busy at the moment :)
FluxBox is somehow limited in the way how to customize its look. No icons on desktop, no shutdown buttons... So I hired a programmer who wrote the best application on the world - SysTray Icon Launcher. It is like 50 lines of code, and what it does is pretty simple. Put an icon to system tray and execute a command when it is clicked. Thanks to it, we now have an awesome power button in about 20KB or so :) Hell I love this wallpaper, all screenshots are so cool!
I am finishing last few bits of the next gen Slax release. I think the biggest difference for the end user will be lack of applications. People were probably used to a rich collection of apps in Slax, including GUI file manager, video player, instant messaging program, card games, remote desktop app, more card games, ... :-) None of this will be included in the next Slax release. I may prepare, in the future, a bigger and more feature rich version, but for now, i am sticking with the only necessary software: xterm and web browser (chromium).
There is also leafpad as text editor and qalculate as a calculator, those apps were like 200KB in total, so I added them. But other than that, only browser and terminal. I believe that everything (and I mean really EVERYTHING) is moving to the web. In most cases, web browser is the only software you need nowadays for various tasks. Spreadsheeds? online. Video player? Online. And thanks to apt-get (now included in Slax), most of the available software is online as well.
So for now, four icons will be fully sufficient.
Here are some first Slax screenshots. The wallpaper was created specially for Slax.
Running some programs:
Warning, technical post, for advanced users and developers only :) (and for me, because I will surely forget this soon)
If you were used to access files in /mnt/live/* in Slax, then you will have to change your habits (and scripts) because that is now available in a different path: /run/initramfs/* ... Explanation why this change was necessary follows.
When Slax was based on Slackware, I had to manually patch the rc scripts for shutdown, to return control back to initramfs which could safely unmount all devices and reboot. But after changing to Debian base, there are no such rc scripts (due to systemd). Systemd has some hardcoded logic on what it tries to unmount. I had to digg into systemd source codes to find out what it actually does during reboot, and I was happy to find a solution.
Previous Slax puts the initramfs-root-filesystem in /mnt/live/ by calling pivot_root. But systemd has no idea this directory is special, and it tries to unmount it (including all submounts) on shutdown, making Debian report lots of red warnings. As it shows up, there is no possibility to exclude certain mountpoints from unmounting when the system is ending, however systemd has several exclude-paths hardcoded. It is / (root directory, obviously), /run/initramfs and /usr. So, instead of pivoting the root to /mnt/live, I had to modify linux-live-kit to pivot into /run/initramfs, in order for all systemd-based distros to ignore unmounting of initrd-based mounts, resulting in shutdown without errors. In order to unmount those properly, systemd executes /run/initramfs/shutdown.
One problem appeared immediately - Debian overmounts /run on boot with tmpfs, which made the /run/initramfs inaccessible (even mount --bind /run /somewhere couldn't help). So I had to make a little change in the initial startup - mount the 'run/' directory first with tmpfs, then create run/initramfs/, and then pivot root. Debian recognizes that /run is areadly mounted and doesn't overmount it again, leaving /run/initramfs accessible. Bingo.