Hyperbola - minimalist libre distro, and systemd-free
I was challenged by @damidu to give Hyperbola linux a try as it is an FSF-approved libre distro which is very minimalist. A big bonus (for me) is the fact that it is systemd-free.
After installing, it boots up almost instantly, and 'free -h' shows 44mb memory in use. Logging into the jwm minimalist window manager and opening qterminal brings it up to 73mb memory in use. Running screenfetch (similar to neofetch) brought it up to 89mb in use. These are all insanely low numbers on this wickedly fast system - good job to the Hyperbola devs.
Attachment | Size |
---|---|
HyperbolaJwmKit3.jpg | 23.68 KB |
HyperbolaJwmKit.jpg | 83.6 KB |
HyperbolaJwmKit2.jpg | 125.33 KB |
Thanks Andy for sharing Hyperbola here.
Sincerely,
Malsasa
I've updated to Hyperbola's testing repo, and after that I was able to download and run the latest version of Trisquel's abrowser web browser on it.
This is good, because the browser that comes with the stable version of Hyperbola, called "iceweasel-uxp", is about 1.5 years old - much too old to be considered safe on the internet I'm afraid. abrowser is kept very up-to-date, and so gives a much safer option.
The latest abrowser will not work with the "stable" version of Hyperbola, since Hyperbola's stable version of the glibc package is too old. But the latest abrowser will work with the "testing" version of Hyperbola.
To update Hyperbola to testing, open the /etc/pacman.d/mirrors file:
$ sudo nano /etc/pacman.d/mirrors
and then comment out all the mirrors that have "stable" in their name, and un-comment the mirrors that have "testing" in their name, and save and exit nano.
Then update the distro to testing:
$ sudo pacman -Syyu
This update will be very large and will take a long time, and you will be asked a lot of questions at the beginning. Answer "Yes" or agree to the "default" option each time. Be careful to watch the questions, because sometimes you have to type in "y" for yes instead of just hitting the Enter key. Reboot after the update, and try to update again. You'll need to update as root, since the testing version of Hyperbola does not have the "sudo" package:
# pacman -Syyu
To download the latest abrowser .deb file, navigate a web browser (Hyperbola's iceweasel-uxp in this case) to a Trisquel mirror, such as https://archive.trisquel.info/trisquel/
Once in the Trisquel mirror, navigate to the "pool" folder, then the "main" folder, then the "f" folder, and then the "firefox" folder. Find the latest version of abrowser in that folder that works with the architecture for your machine. In my case, it was this .deb file:
abrowser_92.0+build3-0ubuntu0.18.04.1+9.0trisquel82_amd64.deb
Ignore the language pack files (unless you need a non-English version) and the "dev" and "dbg" versions of the .deb files.
Download the .deb file into a folder in your Hyperbola home directory. For example, I made a folder for this called "abrowser":
$ mkdir ~/abrowser/
Then you will need a tool called "ar" to unpack the .deb file. You can get this "ar" tool by installing the "binutils" package (you'll need to do this as root, since the testing version of Hyperbola does not have the "sudo" package):
# pacman -S binutils
Now, as the regular non-root user, use "ar" to unpack the .deb file:
$ ar x abrowser_92.0+build3-0ubuntu0.18.04.1+9.0trisquel82_amd64.deb
This will create a bunch of folders and files in your "abrowser" folder. One of these is the "data.tar.xz" file. We need to unpack this file as well. Unpack it with the following command (as the regular, non-root user):
$ tar xf data.tar.xz
This will create a bunch more folders and files in your "abrowser" folder. One of these is the "usr" folder. Buried inside that folder is the "abrowser" binary, which you can execute to start the abrowser web browser, with the following command (as the regular, non-root user):
$ usr/bin/abrowser
NOTE - this is NOT "/usr/bin/abrowser" - this is "usr/bin/abrowser", with no leading "/". This command will start abrowser - and you are browsing the web like normal.
You can make abrowser available throughout Hyperbola with the following command (make sure to write out the full paths with this command) (you will need to run this command as root, since the testing version of Hyperbola does not have the "sudo" package):
# ln -sf /home/[YOUR_USER_NAME_GOES_HERE]/abrowser/usr/bin/abrowser /usr/local/bin/abrowser
Now you can start abrowser anytime by simple typing
$ abrowser
into a terminal, or you can add it to your desktop menu by adding the "abrowser" command to the menu.
That is great: a viable go-to alternative compatible with Abrowser is precious.
Couldn't you simply install abrowser from the AUR?
Something like this
$ mkdir abrowser-bin
$ cd abrowser-bin
$ pluma PKGBUILD
Copy this into file PKGBUILD (I added insecure to the AUR PKGBUILD as it wouldn't work otherwise)
# Contributor: Figue
pkgname=abrowser-bin
s_pkgname=${pkgname%-*}
pkgver=92.0
pkgrel=2
pkgdesc="Binary version of Abrowser, safe and easy web browser from Mozilla"
arch=('x86_64')
license=('MPL' 'GPL' 'LGPL')
url="https://trisquel.info/en/wiki/abrowser-help"
depends=('gtk2' 'gtk3' 'gcc-libs' 'libidl2' 'nss>=3.12.10' 'libxt'
'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib'
'alsa-lib' 'libevent' 'sqlite3>=3.7.4' 'libnotify' 'desktop-file-utils'
'libvpx' 'lcms2' 'nspr>=4.8.8' 'libevent' 'libpng' 'cairo')
makedepends=(curl)
_pkgver_x86_64=$(curl --insecure -s 'https://archive.trisquel.info/trisquel/pool/main/f/firefox/?C=M;O=D' | grep abrowser_$pkgver | cut -d+ -f2,3 | cut -d'"' -f1 | grep amd64 | head -1)
source=("https://archive.trisquel.info/trisquel/pool/main/f/firefox/${s_pkgname}_${pkgver}+${_pkgver_x86_64}")
sha256sums=('a998dd1000254b8e0cdf68007ca4e45eeb7d04f9e21894017926d977b9249e3b')
package() {
tar xJf ${srcdir}/data.tar.xz -C ${pkgdir}/
printf '%b' " \e[1;36m->\e[0m\033[1m Cleaning up unwanted files...\n\e[0m"
rm -rv "${pkgdir}"/{etc/apport,etc/apparmor.d,usr/share/apport,usr/share/lintian}
}
Then run:
$ wget --no-check-certificate 'https://archive.trisquel.info/trisquel/pool/main/f/firefox/abrowser_92.0+build3-0ubuntu0.18.04.1+9.0trisquel82_amd64.deb'
$ makepkg -s
$ sudo pacman -U abrowser-bin-92.0-2-x86_64.pkg.tar.lz
I'm sure you are right, I have not made my own PKGBUILD's before. Looks like you just copied the one from the AUR and added the 'insecure' option, and that's also what I'm reading from your note.
One thing I don't understand. If you are downloading the deb file with wget, then what is this command inside the PkGBUILD doing?
>_pkgver_x86_64=$(curl --insecure -s 'https://archive.trisquel.info/trisquel/pool/main/f/firefox/?C=M;O=D' | grep abrowser_$pkgver | cut -d+ -f2,3 | cut -d'"' -f1 | grep amd64 | head -1)
Is that entire line there just to grab the package version information?
Yeah the command finds the relevant version and I just added the insecure option to the regular PKGBUILD. I assumed the .deb download would fail as well due to a certificate error which is why I downloaded the file manually (usually this isn't needed but wget also cannot download the file without skipping the certificate check). makepkg seems to first checks the current directory for source files so it doesn't try to download them if it finds them in the current directory.
Seems like a lot of people are getting certificate errors. Why is that?
Is that what's covered in this Hyperbola forum thread? https://forums.hyperbola.info/viewtopic.php?id=590
An outdated version of curl causing problems?
It's because the Let's Encrypt certificates have expired.
$ wget 'https://archive.trisquel.info/trisquel/pool/main/f/firefox/abrowser_92.0+build3-0ubuntu0.18.04.1+9.0trisquel82_amd64.deb'
--2021-10-05 09:20:35-- https://archive.trisquel.info/trisquel/pool/main/f/firefox/abrowser_92.0+build3-0ubuntu0.18.04.1+9.0trisquel82_amd64.deb
Resolving archive.trisquel.info... 209.51.188.51, 2001:470:142:5::51
Connecting to archive.trisquel.info|209.51.188.51|:443... connected.
ERROR: cannot verify archive.trisquel.info's certificate, issued by ‘CN=R3,O=Let's Encrypt,C=US’:
Issued certificate has expired.
To connect to archive.trisquel.info insecurely, use `--no-check-certificate'.
Weird. Has ca-certificates not been updated? On my Debian unstable system I can wget https://archive.trisquel.info with no problems.
>"Trisquel v9 has Abrowser as standard and is utterly Stable and Efficient"
You definitely should stay with Trisquel, do NOT do any of the weird stuff I do while I'm tearing apart other distros and playing with their pieces. It is a complete waste of time and energy, I agree heartily with that point.
Too late, I already lost half the pieces. I guess I will now hammer the remaining parts to dust, and vacuum clean.
And by the way: good to have recent news from Zapper.
Are you following our recent discussions on the Devuan forum, or did zapper email you?
I opened the last attachment in your OP.
Oh, well he's on the Devuan forum every day, you should go sign up and say hi. Or better yet, he's also on the Hyperbola forum every day, it's a free software forum like Trisquel, we should both sign up there and explore this interesting Hyperbola distro further.
I definitely have to set a foot in the Hyperbola galaxy.
Next step will be to install it on that tiny test machine when I manage to put my hands on it. As you can see, I am trying to mobilize all my available limbs to that endeavor.
Hyperbola updated wget and curl - you do need to update curl with a newer PKGBUILD beforehand - see this thread: https://forums.hyperbola.info/viewtopic.php?pid=3529#p3529
$ sudo pacman -Syu
:: Synchronising package databases...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 104k 100 104k 0 0 141k 0 --:--:-- --:--:-- --:--:-- 141k
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1740k 100 1740k 0 0 662k 0 0:00:02 0:00:02 --:--:-- 662k
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3975k 100 3975k 0 0 657k 0 0:00:06 0:00:06 --:--:-- 731k
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 154k 100 154k 0 0 200k 0 --:--:-- --:--:-- --:--:-- 199k
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
:: Starting full system upgrade...
warning: aria2: local (1.35.0-2) is newer than community (1.31.0-1)
warning: gnutls: local (3.6.13-2) is newer than core (3.5.11-1.hyperbola2)
warning: gst-plugins-bad: local (1.12.4-3.parabola1) is newer than extra (1.12.0-1.hyperbola4)
warning: gummi: local (2:0.8.2-1) is newer than community (1:0.6.6-2)
warning: hugin: local (2019.2.0-5) is newer than extra (2016.2.0-5)
warning: nettle: local (3.6-1) is newer than core (3.3-1.hyperbola1)
warning: parole: local (4.16.0-1) is newer than community (0.9.1-1)
warning: python-musicbrainzngs: local (0.7.1-3) is newer than community (0.6-2)
warning: python-mutagen: local (1.42.0-3) is newer than extra (1.37-1)
warning: python-txaio: local (2.7.1-1) is newer than community (2.6.1-1)
warning: rkhunter: local (1.4.6-2) is newer than community (1.4.2-2)
warning: rubyripper: local (0.7.0rc2-1) is newer than community (0.6.2-10)
warning: snappy-player: local (1.0-5) is newer than community (1.0-4)
warning: speedtest-cli: local (2.1.3-1) is newer than community (1.0.3-1)
resolving dependencies...
looking for conflicting packages...
Packages (3) curl-7.74.0-1.hyperbola1.backports1 curl-debug-7.74.0-1.hyperbola1.backports1
wget-1.21-1.hyperbola1.backports1
Total Download Size: 1.76 MiB
Total Installed Size: 5.31 MiB
Net Upgrade Size: 0.70 MiB
:: Proceed with installation? [Y/n]
:: Retrieving packages...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1102k 100 1102k 0 0 385k 0 0:00:02 0:00:02 --:--:-- 385k
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 25087 100 25087 0 0 54655 0 --:--:-- --:--:-- --:--:-- 54775
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 677k 100 677k 0 0 411k 0 0:00:01 0:00:01 --:--:-- 411k
(3/3) checking keys in keyring [###########################################] 100%
(3/3) checking package integrity [###########################################] 100%
(3/3) loading package files [###########################################] 100%
(3/3) checking for file conflicts [###########################################] 100%
(3/3) checking available disk space [###########################################] 100%
:: Processing package changes...
(1/3) upgrading curl [###########################################] 100%
(2/3) upgrading curl-debug [###########################################] 100%
(3/3) upgrading wget [###########################################] 100%
:: Running post-transaction hooks...
(1/1) Updating the info directory file...
This is the thread andyprough pointed to the other day:
https://trisquel.info/en/forum/hyperbola-minimalist-libre-distro-and-systemd-free#comment-161054
For a moment I thought I was having a groundhog day.
>"Many more applications and games etc etc - all in at 256MiB"
But I got 44. Which is about 6 times less than 256.
"Many more applications and games etc etc - all in at 256MiB"
But I got 44. Which is about 6 times less than 256."
You can go even further if you start only the X server with an app. But it's not practical. You can't switch between applications. That's where a window manager is useful.
But with dwm or jwm you can run the "desktop" with just between 8O to 12O mb of ram on Hyperbola, which is still around 2 to 3 times less than 256 mb.
Yes, if you like to use the computer graphically and with a mouse, DE are ideal. But they use a lot of memory and cpu.
Stallman was right before graphical interface. He started Emacs and Emacs is a DE about it self. You have a file manager, a web browser, a pdf viewer, an editor, a shell, an image viewer, a mail reader, a rss reader , https://www.gnu.org/software/emacs/
I am joking :-)
But, if you have time and want to start with the command line some folks have written a book. It's free.
https://static.fsf.org/nosvn/gnu-press/source-files/books/command-line.pdf
This is how I use my computer and what I see on my screen a lot of the time.
I've used the command line for a long time, but I still enjoy the convenience that a desktop environment adds.
My interest is to move to the kernel or more system oriented things. I remove "apps" that I don't need as I progress. A lot of tings are command line oriented. You don't have an official graphical interface to "GNU/Linux". It's made by third party that don't have relationship with the GNU Project. I try to use a lot of "GNU".
Don't try this at home but good luck to do it with a graphical file manager.
mkdir years{2000..2010}-directory
You can put that in a file and execute it automatically every day.
When I use graphic tool, all I do is to play with the mouse. It's tiring. I move my arm and that take long time... Ok I can browse the web with the mouse but it's all. You need to search to find interesting things on the web and It's more plaisant to read it with a terminal.
>"Don't try this at home but good luck to do it with a graphical file manager.
>mkdir years{2000..2010}-directory
>You can put that in a file and execute it automatically every day."
I don't understand this - what does this accomplish?
GNU Bash expands "years{2000..2010}-directory" into "years2000-directory years2001-directory years2002-directory years2003-directory years2004-directory years2005-directory years2006-directory years2007-directory years2008-directory years2009-directory years2010-directory". mkdir then creates those 11 directories. It is not POSIX-compliant syntax though. It does not work on dash for example. Here is a portable way to do the same:
$ mkdir years$(seq -s '-directory years' 2000 2010)-directory
I understand, I could see the concept of HOW it works. It makes no sense to me to "execute it automatically every day".
I guess that's just damidu's thing that damidu likes to do.
thank you I'm not a true command line guru yet. This community is amazing! I learn all the time.
It just for demonstration, It create 10 directories with one command in 1 seconde.
years2000-directory
years2001-directory
years2002-directory
years2003-directory
years2004-directory
years2005-directory
years2006-directory
years2007-directory
years2008-directory
years2009-directory
years2010-directory
You can do more fun. Make a test directory, cd to it and make the whole alphabet with one command
mkdir {a..z}
$ ls
a b c d e f g h i j k l m n o p q r s t u v w x y z
If you want 1000 files. Make a test directory, cd to it
touch {1..1000}
Of course you can remove with rm {1..1000}
The FSF as published a book if you are interested in the command line.
https://static.fsf.org/nosvn/gnu-press/source-files/books/command-line.pdf
They say
"ADVANTAGES OF USING COMMANDS
Many people who give the command line a try are so amazed by its possibilities that they do not even want to go back to a Graphical User Interface(GUI)! Why? Well, in brief, the command line offers the following main advantages over common graphical software:
Flexibility
With graphical programs, you sometimes hit a limit; you just can't do what you want or you need to find cumbersome work-arounds to program limits. With the command line, you can combine commands to yield a virtually infinite range of new and interesting functions. By combining commands creatively, you can make the command line do exactly what you want; it puts you in control of your computer.
Reliability
Graphical programs are often immature or even unstable. In contrast, most of the tools that the command line offers are highly reliable. One of the reasons for this reliability is their maturity; the oldest command line programs have been around since the late 1970s. This means that these command lines have been tested for over three decades. They also tend to work the same way across different operating systems, unlike most graphical tools. If you want a Swiss Army knife you can rely on, the command line is
for you.
Speed.
Fancy graphics consume a lot of your hardware's resources, often resulting in slowness or instability. The command line, on the other hand, uses the computer's resources much more sparingly, leaving memory and processing power for the tasks that you actually want to accomplish. The command line is also intrinsically faster; instead of clicking through long chains of graphical menus, you can type commands in a dozen or so keystrokes, and often apply them to multiple files or other objects. If you can type fast, this will enable you to drastically increase your productivity.
Experience.
Using the command line is a great learning experience. When you use the
command line, you communicate with your computer more directly than with the graphical programs, thus learning a lot about its inner workings. Using the command line on a regular basis is the way to becoming a GNU/Linux guru.
Fun. Have you ever wanted to be like those cool computer hackers who can make a
GNU/Linux machine do things that you have not even dreamed of? Once you learn to use this powerful tool, you will find yourself doing funny and interesting stuff that you have never imagined."
I don't have finished the book yet. But when you play with the command line you have the same tools available every where. The distribution doesn't really matter. It's just a personal preference of an init system, a package manager, maybe the file system... etc.
And I'm happy because I see that command are "applications". They reside on the filesystem (like abrower, mate-terminal, LibreOffice, ...) and are loaded in memory for use.
/bin/ls
/bin/rm
/bin/mkdir
You have a manual for each "commands".
man ls
man rm
man mkdir
But in the GNU system documentation are info files.
info coreutils
That's a lot to read. But for myself it's faster than graphical tools and it's available on every GNU/Linux distribution.
oh. I don't really spread information about your person. You are funny.
"hyperbola is not secure."
It's funny.
"Viva trisquel-lxde"
It's also funny too.
I don't care about you or your person or your avatar. You are someone on the internet. I have other things to do in my life. But you flood topics and it's annoying.
It's funny. Really. And don't forget the intel graphic card and hardware with your screenshots.
It's always false information. And you don't search and try to correct your mistakes. It's always the "TRUE". Your are a lot of time not constructive.
I think you should stop feeding the troll. Most of us have stopped responding to his vitriol.
While there's nothing wrong with having discussions with Andy if you want, please don't do it with mindset of "feeding the trolls". It only ends up adding to the flood of posts and (intentionally or not) producing harsh personal attacks against him, mirroring the very behavior that was so concerning in the first place.
"Who are groupthink going to deploy next - their other racist...?"
IMHO, a far stretch to falsely accuse Legimet of being a religion-ist (is there a better word for this?), we were discussing video surveillance, and Islam is a region not a race. Did your screenshot excluded all that?
andyprough I don't have good hardware for testing the "sound" with hyperbola now. I'm waiting a refurbished thinkpad that will come this week.
I'm on a crap machine. hyperbola doesn't boot :-) I know it's not serious... The hardware is too "new". I need to update and build a kernel. It doesn't worth the time. I had installed trisquel with debootstrap on this machine. lol. It works. But it's crappy hardware.
"> I disconnected the cable screen while the computer was running. Yeah I didn't thinking.
How does one even do that? I'm impressed."
I upgraded the screen to an ips one. 1980x1024.
I'm using the the website. I will be carefull.
Wait, you can upgrade the screen while the computer it belongs to is running? That is genuinely awesome- I don't think I could even do it if all the parts were color-coded and labelled.
Sorry about the unrelated question too- if you want I can send an explanation.
The laptop is coming today. I'm waiting for it. I'll will update my post later.
I'm writing my new post on upgrading to Hyperbola 0.4 beta just in time for your new laptop!
Yeah Andy you should stop to copy/paste at every word. People are tired.