Ok, I want to fund a project, not propose it. How do I do that?
If someone makes a project that is basically "work with Amazon and FreeBSD to make FreeBSD a first class citizen on EC2" I would totally put money into that, and moreso, would use my deep contacts at Amazon to help make the project a reality.
From what I understand, the technical part of the project is basically making the kernel and the hypervisor play nice.
I too, would love to see FreeBSD become a first-class citizen on EC2!
As @colechristensen mentioned, you should contact cperciva (Colin Percival) about this -- he's already been doing some work on FreeBSD's Xen support and IIRC he's already talked to some people at AWS about "officially" supporting FreeBSD on EC2. I haven't heard anything for a while though, so perhaps you could use your contacts to get things moving (or moving faster).
EDIT: You might be interested in reading/joining the 'freebsd-xen' and 'freebsd-virtualization' mailing lists:
> Ok, I want to fund a project, not propose it. How do I do that?
I'm very interested in this, too. I've just begun using elance to find FreeBSD coders. I have a six-figure budget for various projects in the next three months. I would love to have some great projects coded and returned to the community, but finding vetted, high-quality FreeBSD coders hasn't been easy (on myself as an executive.) It would be most helpful if an organization, like the FreeBSD Foundation , were able to offer me an avenue to fund projects of interest to my organization (and the community.)
I have a strong feeling that if you simply took the initiative and asked the foundation, you would get what you want. Of course, per-project funding on a wide scale gets into a sticky situation where the foundation no longer can make its own choices and do the right things instead of the popular things.
I think that funding whatever is required here would be fantastic. The move to VPSs has forced me to also move to Ubuntu for what I host 'in the cloud', and I'd love to move back to FreeBSD.
> Of course, per-project funding on a wide scale gets into a sticky situation where the foundation no longer can make its own choices and do the right things instead of the popular things.
That's why I haven't asked the foundation directly. :) When I made my annual donation to them this year I expressed my desire to see FreeBSD on EC2, but I don't want to start dictating what they should be doing.
There's honestly no harm in discussing it. FreeBSD/Xen is already of interest to base committers, there's existing work done.
If those committers are interested in furthering it via funding -- something you can only establish by talking to the foundation et al -- then everyone wins! :)
Wait what about this announcement? I thought this meant that FreeBSD is now the same status as Linux on EC2. I know originally there was an extra charge for Windows instances, and you had to make your own AMI. But isn't this saying it's official? This is from November 2012, so very recent.
"These operating systems come directly from the Open Source community and are available at no charge other than the usual cost for the EC2 instances. You can find them in the Operating Systems section of the Marketplace"
For the most part, I find managing FreeBSD to be painless, with one glaring exception I'll get to in a minute. I really love that the base system and the 3rd party packages are iterated separately -- I can have a stable base OS, while also running modern software.
The problem is the ports system. Building your own software is a nice option to have, but it's usually just a waste of everyone's time, and it tends to fail in annoying, new, and magical ways.
On top of the hassle of using ports, writing ports is a huge hassle of battling archaic crap. Rather than using destroot, like every other package manager from the past 15 years, FreeBSD requires the package maintainer to manually list out each file that will be installed on the target system, and will fail to properly clean up ports if those file lists are incorrect.
That said, it's not all that much worse than what's necessary to produce a debian/ubuntu package -- it just could be better.
I've been running pkgng on CURRENT for a bit...It's really quite painless, even if you prefer compiling everything. The new pkg tool does some stuff easily that is painful even in debian (which in my opinion has always done packages right...I was burned by rpms in the 90s/00s many times). For instance I just discovered 'pkg which' which will tell you which package installed any file. I believe this is possible on debian, but not a two word command (I could be wrong).
One benefit as well is that it seems to do less random io/spinlocking when doing stuff with the package database than the old tools, which means large install runs (compiled or not) go much faster.
It also builds in vulnerability auditing, which is also great. Previously this required a separate port.
Just in case you (or anyone else) is wondering. You can find out which rpm installed a file with rpm -qf <file>. And you can see all the files in an installed rpm with rpm -ql <pkg>.
As already mentioned "dpkg -S file" will show which package installed which file. If you install apt-file, you can also search for which package, installed or not, contains a file:
$ apt-file search /etc/apache2/ports.conf
apache2.2-common: /etc/apache2/ports.conf
$ aptitude search apache2.2-common
p apache2.2-common - Apache HTTP Server common files
$ dpkg -S /etc/apache2/ports.conf
dpkg-query: no path found matching pattern
/etc/apache2/ports.conf
I have a nearly friction-free experience with FreeBSD ports.
portsnap fetch && portsnap extract
cd /usr/ports/lang/python && make install clean
cd /usr/ports/www/nginx && make install clean
...etc
Sometimes, during an extensive upgrade of hundreds of ports (portupgrade -a) I've gotten into a situation in which the ports system got confused a bit (it happened twice with a PHP extension). In such a case, pkg_deinstalling liberally Apache, PHP, PHP extensions, Apr-utils and maybe some others like freetype, and then installing the web stack ports again has always solved the problem.
I agree with the parent poster that package management and graphical environments on FreeBSD is NOT very easy compared to Ubuntu, for example.
pkgng supposedly brings FreeBSD's package system close to Debian's which would be a great advance. I almost wonder why they didn't port Debian's system over completely. Is it a GPL thing, or did they do apt-get better?
I'm old and grumpy and I just want my computers to work. Even though I did spend a lot of years hacking more than a dozen different UNIX flavors, it is close to 15 years since I found the easter-egg hunt of upgrading he OS even vaguely satisfying.
About a decade ago I discovered Ubuntu. I had just gotten a new ThinkPad and I needed to install Linux on it. I started the install and went back to hacking. At the end of the day I checked in my code and I remembered that oh fuck I'm installing Linux and now it is time to fight with X11 for the rest of the day in order to get a vaguely acceptable X11 setup. Better call my wife and say that I'd be spending the rest of the evening at the office swearing at my computer and using the competition's search engine to look for "X11" and "ThinkPad".
Except that didn't happen. I touched the keyboard and there was the X11 login screen. Just like that. Wow.
And Ubuntu just kept getting better over the next years. Until it reached a point where upgrading it was just a matter of running a few commands and reboot. Neat.
Of course, some time in 2006 I developed a serious case of suspend-envy and I ditched Ubuntu for OSX and a MacBook Pro. Imagine that: just being able to slap your laptop closed, carry it off somewhere, open it and it would just work. Without me having to spend about one man-week per year trying to make my laptop not self-destruct by burning its way through my backpack.
Funny that: me growing tired of constantly having to manage the operating system and fiddle around with the kernel to make my computer stay out of my way while I am programming.
It took me a good 6 months to get used to all the annoying aspects of using a Mac to develop software. But you know what: I got to spend more time programming and less dicking around with the OS so I was happy.
Of course, in 2008 I got the crazy idea that I wanted to store all my photos on a computer that had a decent filesystem. FreeBSD had ZFS, so while I wasn't overly fond of FreeBSD, I thought ZFS was worth the hassle. The downside is that FreeBSD, while a good basic OS, never quite grew up. It is still a pain in the ass to manage because it is no different from back in the 1990s when I made a living setting up SunOS machines for the math and chemistry department at my local university. Or dicking around with Ultrix at the mechanics dept. Upgrading the OS back then was like performing brain surgery. You needed notes and you needed to remember all the weird-ass quirks and pitfalls.
The other day I realized that my storage server is running an old version of FreeBSD and could do with an upgrade. Only I've forgotten the procedure and when reading up on it I realized that ... boy this sucks ass.
What is mostly annoying is that people think this is okay. It is like having to listen to people who think that the Model T Ford was the pinnacle of automotive usability: http://www.modelt.ca/drive-fs.html
This is 2013. Excuse me if I don't find manually upgrading operating systems amusing.
# freebsd-update upgrade -r 9.1-RELEASE
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching public key from update5.freebsd.org... failed.
Fetching public key from update3.freebsd.org... failed.
Fetching public key from update4.freebsd.org... failed.
No mirrors remaining, giving up.
That's the problem then -- you need to be running a release. The argument being that if you can get yourself to -STABLE, you're obviously comfortable with source upgrades.
I'll leave freebsd-update aside, since Colin already touched on that.
I too am old, and often extremely grumpy. That said, I think you might be having a "senior moment" regarding your recollection of administering SunOS systems, if you're comparing the hassle of SunOS to FreeBSD.
What do you feel is wrong with it now? It's much easier to implement features/fixes/improvements when you have an idea of what people want, and why they want it; there's not much you can do with "it sucks".
If someone makes a project that is basically "work with Amazon and FreeBSD to make FreeBSD a first class citizen on EC2" I would totally put money into that, and moreso, would use my deep contacts at Amazon to help make the project a reality.
From what I understand, the technical part of the project is basically making the kernel and the hypervisor play nice.