You are not logged in.

#1 2009-11-27 19:42:41

HashBox
Member
Registered: 2009-01-22
Posts: 271

stali - static linux statically linked only

Greetings!

I was browsing suckless.org the other day (I do this occasionally to see what's new) and I noticed this new page, http://sta.li/

From the site:

stali (sta[tic] li[nux]) is a new new linux distribution based on a hand selected collection of the best tools for each task and each tool being statically linked (including some X clients such as xterm, surf, dwm, dmenu, mplayer).

I thought this might appeal to archers particularly (sounds very KISS) and with this distribution being relatively new, I haven't seen any posts about it anywhere besides the official website, so I thought I'd create a thread here.

What are your thoughts? Is anyone here involved with it or planning to try it out? smile

Offline

#2 2009-11-27 19:55:20

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: stali - static linux statically linked only

> What are your thoughts? Is anyone here involved with it or planning to try it out?
I'll give it a shot when it comes out.

Last edited by karol (2009-11-27 19:57:28)

Offline

#3 2009-11-27 21:04:37

bender02
Member
From: UK
Registered: 2007-02-04
Posts: 1,328

Re: stali - static linux statically linked only

It sounds pretty interesting, but it all depends on how hard will it be to maintain apps/packages that would not be supported directly by the dev.

Offline

#4 2009-11-29 21:40:00

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: stali - static linux statically linked only

If it is smaller and faster it may be nice for certain cases where resources are short.

I can see a bit of a catch .... putting the root home in /home ... it is sort of logic but if /home fails to mount ....


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#5 2009-11-29 21:48:01

Renan Birck
Member
From: Brazil
Registered: 2007-11-11
Posts: 401
Website

Re: stali - static linux statically linked only

It could get interesting for small, embedded-like applications... Like a web-browsing terminal, or a computer that is used to access a single application.

Or even for old PCs.

Offline

#6 2009-11-29 22:08:28

ataraxia
Member
From: Pittsburgh
Registered: 2007-05-06
Posts: 1,553

Re: stali - static linux statically linked only

Looks like arg got his hosting donation. There's also a note at the top now that "First usable version will be available Dec 1." Getting exciting...

Offline

#7 2009-11-29 22:13:50

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: stali - static linux statically linked only

For people looking for a small OS: they (suckless.org) write they're going to have mplayer etc. so I don't think stali's going to be smaller than TinyCore, ttylinux etc.

I've noticed that they could have chosen a much "nicer" and much more memorable name: sta(tic)lin(ux) - stalin ;-)

Offline

#8 2009-11-30 00:07:08

Themaister
Member
From: Trondheim, Norway
Registered: 2008-07-21
Posts: 652
Website

Re: stali - static linux statically linked only

I don't get why they statically link everything though. Won't that take enormous amounts of space?

"It also targets binary size reduction through the avoidance of glibc and other bloated GNU libraries where possible (early experiments show that statically linked binaries are usually smaller than their dynamically linked glibc counterparts!!!). Note, this is pretty much contrary to what Ulrich Drepper reckons about static linking."

hmm....

Last edited by Themaister (2009-11-30 00:09:38)

Offline

#9 2009-11-30 00:25:57

luceroz
Member
Registered: 2005-10-09
Posts: 40

Re: stali - static linux statically linked only

R00KIE wrote:

If it is smaller and faster it may be nice for certain cases where resources are short.

I can see a bit of a catch .... putting the root home in /home ... it is sort of logic but if /home fails to mount ....

If root's home directory fails to mount, it's no big deal.   even in the longest lasting distro installs I've ever used, /root sees little change.  if you have something in .shrc/.profile that your system can't operate without, even in single user mode, you've got issues anyway.


I would like to see this distro happen.  and to the question about maintainability and external packages, it could use a build system, like pkgsrc, but with a modified make.conf/whathaveyou to create static everything.

Offline

#10 2009-11-30 01:12:16

iphitus
Forum Fellow
From: Melbourne, Australia
Registered: 2004-10-09
Posts: 4,927

Re: stali - static linux statically linked only

"It also targets binary size reduction through the avoidance of glibc and other bloated GNU libraries where possible (early experiments show that statically linked binaries are usually smaller than their dynamically linked glibc counterparts!!!). Note, this is pretty much contrary to what Ulrich Drepper reckons about static linking."

That's a pretty screwed up comparison. Comparing Dynamically linked glibc to static link XYZlibc and then deciding that static linking is the best thing since sliced bread?

Offline

#11 2009-11-30 01:25:17

HashBox
Member
Registered: 2009-01-22
Posts: 271

Re: stali - static linux statically linked only

iphitus wrote:

"It also targets binary size reduction through the avoidance of glibc and other bloated GNU libraries where possible (early experiments show that statically linked binaries are usually smaller than their dynamically linked glibc counterparts!!!). Note, this is pretty much contrary to what Ulrich Drepper reckons about static linking."

That's a pretty screwed up comparison. Comparing Dynamically linked glibc to static link XYZlibc and then deciding that static linking is the best thing since sliced bread?

I do have to agree that this is a bit of an unfair comparison, but it is still an interesting one nonetheless.

@luceroz, I too would really like to see this happen, and I'm also hoping that I can maybe run it chrooted from my Debian based coLinux setup. Considering this is hosted as a root filesystem under git, it seems like it would be quite easy to set up that way smile

Offline

#12 2009-11-30 20:13:18

eam
Member
Registered: 2009-11-30
Posts: 1

Re: stali - static linux statically linked only

I just stumbled on this since I'm new to Linux Mint and have had to re-install 3 times already. Then I had to re-install all my software, a lot from source, and got the plethora of errors regarding missing libraries. I love static linked. As long as the developer can keep the exe size down by linking smaller libraries, so that they aren't too big, I think the advantages far outweigh any disadvantages. To have an exe work the first time and everytime would be wonderful. Coming from a Windows background and that DLL hell, I usually try to statically link all of my libraries. With .NET the library is huge but disk space is rather cheap these days as opposed to banging my head against the wall. I was excited to get Linux until all of the library nonsense but now I'm excited again. I will definitely put this on my computer. Just my 2 cents

Offline

#13 2009-12-01 06:22:30

dwindle
Member
From: /dev/urandom/
Registered: 2009-05-15
Posts: 85
Website

Re: stali - static linux statically linked only

I started messing with an openmoko today and realized that a statically linked distro definetally has its advantages (I really hate dependancy-hunting. You know how it is.). I'm looking forward to messing with this and possibly using it on a box permanently.


[nil]
[exists]

Offline

#14 2009-12-01 06:38:15

HashBox
Member
Registered: 2009-01-22
Posts: 271

Re: stali - static linux statically linked only

I've just noticed that the page has been changed to remove the "First usable version will be available Dec 1." notice, but I can't see any other updates at the moment, will keep an eye on it.. smile

Offline

#15 2009-12-01 15:34:47

Procyon
Member
Registered: 2008-05-07
Posts: 1,819

Re: stali - static linux statically linked only

Development
The current state of the build environment can be cloned with the following command:
   git clone git://sta.li/stali
Note, please use one of the following mirrors instead:
   git clone git://stali.yokuts.org/
(More to follow)
Size: 400 MB

How do you browse these repositories without downloading 400MB?

Offline

#16 2009-12-01 15:50:10

ataraxia
Member
From: Pittsburgh
Registered: 2007-05-06
Posts: 1,553

Re: stali - static linux statically linked only

arg commited a "hand-selected openbsd 4.6 userland" as his /bin source tree. Interesting.

For those who don't want to download it all just to get a look at this, the contents are currently:

A prebuilt gcc 4.3.2 and uClibc 0.9.30.1 for bootstrapping

Linux 2.6.31.1
glibc 2.9
ncurses 5.7
uClibc 0.9.30.1

Stuff from the OpenBSD 4.6 import:
apropos
arp
at
awk
banner
basename
bc
cal
cat
chmod
chpass
chroot
cmp
compress
cp
cpp
cron
crontab
csplit
ctags
cut
date
dc
dd
df
dhclient
dhcpd
diff
diff3
dirname
dmesg
du
echo
ed
env
expand
expr
false
fdisk
file
find
ftp
grep
head
hexdump
hostname
id
ifconfig
indent
init
join
jot
kill
ksh
last
less
ln
locate
login
lpr
ls
m4
mail
make
man
md5
mkdir
mktemp
mount
mount_ext2fs
mount_msdos
mv
nohup
nologin
passwd
ping
ping6
pkg-config
pkill
ps
pwd
reboot
renice
rm
rmdir
route
sed
shar
shutdown
sleep
sort
stat
strings
su
sudo
sync
tail
tcpdump
tee
telnet
tftp
time
top
touch
tr
traceroute
traceroute6
true
tty
ttyflags
umount
uname
unexpand
uniq
vi
w
wc
which
who
whois
xargs

Offline

#17 2009-12-02 20:40:13

x0rg
Member
From: Switzerland
Registered: 2009-07-12
Posts: 116

Re: stali - static linux statically linked only

can someone explain me, what does static-linking mean exactly? And what's the difference to dynamic linking? What's the advantages?
I'm a bit confused about this....

Offline

#18 2009-12-02 20:53:17

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: stali - static linux statically linked only

> what does static-linking mean exactly?
http://sta.li/ - the top and bottom
http://blog.garbe.us/2008/02/08/01_Static_linking/

Last edited by karol (2009-12-02 20:53:54)

Offline

#19 2009-12-02 21:18:55

wuischke
Member
From: Suisse Romande
Registered: 2007-01-06
Posts: 630

Re: stali - static linux statically linked only

Quick explanation:

When programs are compiled from source, so called "object files" will be created. By combining these object files - called linking - you create an executable.

There are some object files with a common functionality, for instance for doing mathematical operations. You need these operations in many programs and create a library for it.

Now people have two options: They can include a library, that is, the object file with mathematical operations as a part of their executable. This is called static linking.
They also can link a library dynamically. This means when you start the program, the operating system looks for a file on the hard disk with the object code for mathematical operations.

Static linking is easier and you don't have missing libraries. ("DLL Hell" DLL -> dynamic-link library) You also can only include the object code you need. Let's presume our program uses only cosine, but not arctangent or square root. Then we can only include the object code for cosine and save space by not including arctangent and square root.

Dynamic linking has two main advantages: If many programs share a library, we can have only one copy of the library instead of many static copies inside each program. And more important: We can update the library to fix for instance a bug without having to change any program. Compare this with the case of static linking, where you have to update every program using our library to fix the bug.

The downside is slightly slower loading, because the operating system has to look for the library when starting the executable and because you have to load the whole library, even if you need only one small function. And there are compatibility problems when for instance Linux distributions use slightly different libraries or when there are missing libraries.

Offline

#20 2009-12-02 21:18:56

bender02
Member
From: UK
Registered: 2007-02-04
Posts: 1,328

Re: stali - static linux statically linked only

Not all of what he says is exactly true:
- about size: of course if you are looking at *one* executable it's better to have it statically linked, but if you have 100 executables linking in the same piece of code, it takes more space than one shared library, even though it has some useless code in it
- about execution speed: again true if you're running one program, but as soon as you load one, the shared libraries are loaded in memory - so there's a tradeoff: shared lookups vs parts of the program already in memory
- about consuming memory - the same as above applies
His points thus might or might not be valid - unless someone actually does the tests and comparisons.
However he has a very good point about portability, lastingness and failsafeness.

Offline

#21 2009-12-21 02:59:07

OpenBSD
Member
Registered: 2009-02-04
Posts: 43

Re: stali - static linux statically linked only

This is going to be sweet.
I am a sucker for suckless and openbsd stuff.

Monolithic linux kernel with openbsd userland and static linking.
All this makes sense.

Offline

#22 2009-12-21 14:58:44

Ranguvar
Member
Registered: 2008-08-12
Posts: 2,549

Re: stali - static linux statically linked only

Interesting project.

I'm eager to see how they handle security, though...  Imagine rebuilding every single app that needs libjpeg, or GTK+, when they receive a security patch (we only do that for major new versions).

Offline

#23 2009-12-21 21:20:03

HashBox
Member
Registered: 2009-01-22
Posts: 271

Re: stali - static linux statically linked only

I think it wouldn't be too bad to rebuild the entire system as it sounds like it's going to be pretty minimal in the first place. I assume if you want anything else you will just have to build it yourself.

Offline

#24 2009-12-22 00:26:41

Dirk Sohler
Member
From: Hamburg, Germany
Registered: 2009-10-03
Posts: 109

Re: stali - static linux statically linked only

Instead of launching projects that no one really needs, a wmii update would be nice smile

Offline

#25 2009-12-22 01:19:10

MP2E
Member
Registered: 2009-09-05
Posts: 115

Re: stali - static linux statically linked only

Dirk Sohler wrote:

Instead of launching projects that no one really needs, a wmii update would be nice smile

Just use wmii-hg, that's what I do. Don't worry though wmii is still being actively developed, the mercurial repository has been getting updates.


17:23 < ConSiGno> yeah baby I release the source code with your mom every night
17:24 < ConSiGno> you could call them nightly builds if you know what I mean

Offline

Board footer

Powered by FluxBB