Subject: [alpine-devel] Re: Why Alpine

From: Natanael Copa <[email-masked]>
Date: Thu, 26 Jan 2012 15:43:27 +0100

On Tue, 24 Jan 2012 00:56:15 +0400
qnx4ever <[email-masked]> wrote:

> Hello Natanael,

Hi!

Sorry a bit late answer. Emails that require a bit longer response tend
to get lower prio during busy days...

Some very good questions you ask here. I am CC'ing the list.

> I was just thinking recently - why Alpine is still see as so rare
> distro ?

Because the Alpine community in general is more interested in coding
than in doing marketing. There are also tons of distros out there so we
kind of drown.

> Where do you see Alpine heading to ?

I think Alpine is and will continue be a niche distro. Alpine have
without doubt moved in a more mainstream direction but it will never
become an ubuntu replacement. The space we will be in is approx where
you see the BSDs today. Routers, servers etc. There will be Alpine
Desktops but that will not be the main focus.

The more easy part of that question is where we will not go:

* We will never be good at internationalization (even if we support it
paritally)

* we will probably never support the glibc ABI so binary
only linux apps like skype, adobe flash.

* we will probably never support binary only kernel drivers (so no
  nvidia, ati fglrx) - at least not in default kernel.

> What's the vision for the distro ?

Its a big question. Some random thoughts.

I want technically skilled people be attracted to Alpine Linux, due to
its technical quality rather than masses of people flocking to it due
to fancy eye candy or massive marketing. I want that people use Alpine
Linux because they understand that it can do more with less resources
and not because its a hype.

I'd like to see Alpine Linux become a general distro platform like for
example Debian, where others builds specialized spins or flavors on top
of that. For example xen dom0 live iso, maybe a gparted iso, NAS iso etc
etc.

For people who care more about size and effiency than user/beginner
friendliness and are are above the average techically skilled, Alpine
Linux should be the natural choice.

> Do we want to make it usable for Desktops ? Not though I much care
> bout desktops, but would love to move completely from Debian/Windows
> to Alpine.

Yes. I would like make it usable for desktop and to certain degree it
already is. My main workstation is Alpine Linux x86_64 and my hp
mini laptop runs Alpine Linux as primary OS. I have fedora installed
too but have not booted fedora in 6 months something.

That said, Alpine as a desktop is not a priority so that part have been
moving slowly.
 
> Should we start pulling in more developers through advertisement or
> alternative funding ?

I don't think that is needed. I think that more developers does not
necessarily means better development. I believe that one good developer
is better than 10 half good. So what we want to do is attract the good
developers rather than the many. I think we can do so by letting Alpine
Linux be a technical interesting place to be.
 
> What's the risk of distro dies if you decide not to continue
> development of it ? How do we manage the risk of losing development
> lead if you (pardon) been hit by bus ?

I think the distro might slow down if I quit/disappear but I don't
think it would die. I am pretty confident that some will continue
support it with security updates for at least a year or two.

I believe Timo Teräs and Ronaldo Arena would take over.

> Where do you work and how do you primarily use Alpine ? 

I use Alpine as my primary desktop and as primary OS on my private
laptop. I use it for a bigger DMVPN, email hosting, email gateways, web
proxy (squid) in production. I also use it for rescue USB/cdrom (it
boots fast and I normally only want netowrk + /bin/sh).

It is also used for practically all Alpine Linux infrastructure itself.
(drupal site, bug tracker, wiki, etc)

> Are there any companies who support distro development ?

I know at least 4 different companies and organisations that sponsors it
in one way or the other. (server and bandwidth hosting, development
directly or indirectly). I don't know if they would appreciate if I
mention their name.

> How does it stand vs Debian, Suse and other server distros in
> performance

That depends very much on the use case. Since Alpine Linux is generally
smaller you'll have less disk IO and less cache misses, all the way from
disk caches to cpu caches. In general, I don't think Alpine is worse
that debian or Suse. My XFCE Alpine Linux desktops is way more
snappy than ubuntu and fedora.

I know for sure that an Alpine Linux developer and kernel hacker has
done some performance improvements in the ipsec stack, done some
improvements to openssl for better support of VIA padlock hardware
(crypto engine). So when it comes to crypto I think Alpine might do
better than others.

I also believe we have the fastest package manager on planet that has
support for cryptographical signing of packages. Installing/upgrading
200-300 packages is easily done in less than 5 mins, depending on the
network speed. Setting up a new alpine linux vserver is done in less
than a minute while debootstrap takes 5 mins(?)

You should keep in mind is that we do trade some performance for
security. We do get some performance loss for Grsecurity kernel, SSP,
PIE and similar (pretty much the same as Gentoo Hardened does). Years
ago I measured it to approx 3% performance hit on x86. I don't think the
performance hit is the same on x86_64 and most distros today has SSP
and other similar things enabled so the difference against others
should not be that big.

But you should really test it for your specific use case. (and it would
be fun if phoronix could run some benchmarks...)

> and reliability ? Is uClib bullet-proof ?

The drawback with uClibc is that it does get less testing than
glibc/eglibc. OTOH, less code = less bugs. We have fixed various bugs
in uclibc (just check out the numbers of patches we add to uclibc).
That said, I have had Alpine Linux boxes running for years without
reboot and I have had Alpine Linux boxes that get kernel OOPSes all the
time (when running as hyper-v guest).

It does happen that we find applications going bad due to bugs in
uClibc but that is rare nowdays.

But one thing that does differ us from other distros, is that we do
assume that there are security bugs in there. Both in userland and
even in kernel. That is why we use Grsecurity patch and a hardened
toolchain so whenever bugs shows up, it should be harder than avarage
to exploit them. (we have a fresh example here:
http://blog.zx2c4.com/749 The (currently available?) exploits does not
work on Alpine Linux)

> Did you ever have face to face meetings with the rest of active
> developers ?

I have met some of them. Some of them are personal friends. I do want
keep my personal life out of this though.

> Feel free to copy the rest of community if you think it might be
> interesting for others.

It is.

> Thanks,
> Misha.

Thanks!

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---