Category: Gentoo
New Council - Expectations?
Ok, we got a new council, I'm still there so thank you for renewing the trust on me =)
Looks like that less people found me or what I did that compelling to make me into the council, so surely I did something wrong. Solar got the first place so his cleanly cut ways are perceived better.
I started polling people about what they feel about Gentoo and what they'd like. The first thing I noticed is that people are sick of endless discussions on marginal stuff and even more sick of outside projects trying to push it's agenda on Gentoo using the shovel-in-throat way.
Second item is about trying to make the place nicer for everybody and better involve our large userbase. We used to be the nicest distribution regarding attitude towards newcomers and slow learner, now other distributions are better. We could re-learn from them.
That's what I perceived so far. As I said before I see the council just as the last resort to get something decided if we, developers, cannot find a large agreement. Solar likes more to be proactive in my opinion. You liked him so I guess we as council should try to push people express themselves and get new&interesting stuff done instead of discussing which is the new way to define a quantity next to infinity or why embedding information somewhere is right or wrong in theory.
That said, how wrong I am so far and how we could get Gentoo to improve even more?
LinuxTag - day after
I'm eventually back home, I'm dead tired, the c-base party was great in many ways (people, food, place) and ending the night (actually starting the morning) playing Go with beer and music was _quite_ fun (thanks again for the games =))
I'll try to wrap up everything in a short post before falling asleep completely: the LinuxTag had been a wonderful experience I had been more there as FFmpeg developer and less as Gentoo developer (mostly because I had to man the FFmpeg booth mostly since we aren't that many and that I failed to chat in a proficuous with the gentoo people even if we spent the evening in the same place most of the time =| In the end I had a refreshing conversation about Gentoo with rbu luckily and I managed to chat a bit more with fauli just before he was leaving...)
Was quite fun going at the end of the event to the fsfe stand to do explain the FFmpeg stance about patents, Theora (more will follow) and why, in our humble opinion at least, isn't correct to propose^Wactually shove down to the web users throat such codec just because of some claims that are yet to be validated...
The discussion was quite pleasant mostly because to my surprise fsfe people there weren't zealots, so the whole discussion discussion even evolved to touch more interesting topics, like reverse engineering, making sure our license is respected and actually multimedia, with a brief discussion on containers, codec and streaming (that part actually started from an explanation why Theora isn't that perfect fruit of opensource that is claimed and why Ogg has many
shortcomings as container and why in multimedia you do not have one-size-fit-all solutions... )
LinuxTag - day 1
After about 4 years I eventually managed to get there! Today is the first day and I'm actually sort of manning the FFmpeg Booth and from time to time I could happen to be in the Gentoo one as well.
In the FFmpeg stand we are showing BBB high res in a big LCD screen from a small beagleboard. The operating system image is obviously Gentoo as well the other system present showing some jumpy Japanese idol video (not my idea).
See you! (Pictures will come later)
Random ideas about changes, their value, their impact
During the last month we got many arguments about how fundamental was one or another change to portage and how this or that had been a life change for many users.
I'm talking about the whole discussion about glep54 and the following one.
When it was first proposed I found the glep lacking details and given that some people were vehemently against it I asked to have it updated. Since some other people found the idea of improving our support for live ebuilds as whole (not just the versioning) interesting I tried to gather ideas and put them all into a draft. The thing got quite big and covered many steps needed, most of them not detailed yet.
Basically the live template draft aims to have portage do the following:
- let you automatically merge from a specific live branch
- have emerge --fetch work as supposed introducing a phase just for that
- let you track what you installed and possibly re-install as is
- have a way to generate automatically snapshot ebuilds and binpkgs in a non ambiguous way
- some more (like have portage show you which revision and from which branch comes what you installed on emerge -upv)
Glep 54 just aim to make sure versioning is theoretically and thoroughly correct, no matter how crazy overlays, upstream and package maintainer could be. To make an example, right now if someone wants to provide a live ebuild he could prepare an ebuild with a large version value (say 9999) and assume nothing bigger would appear, version usually are small values like 1.2.3.
Now, nothing forbids to have a version that is, say, 10000, making invalid the assumption cat/pkg-9999 is the higher value. The glep54 comes with a solution for this issue, have a new prefix to state that he ebuild is live, thus has to be considered above all the others within it's range. This change has to be folded within a EAPI change or even better to a file extension change as stated in glep55 since it's as simple to state as radical: older portage, not knowing anything about what this prefix is, will issue a warning.
Installing from live sources is completely unsupported thus those ebuild are rightfully p.masked and their use is quite specific. The current amount of them is scarce: 90 on 26130 ebuilds are live.
So, if you got the question about if you'd approve this proposal and consider implementing that and all the changes due that would follow or just put it on hold till it would be more useful what would you do?
A pragmatic approach would either be either reject it since does pretty much nothing in the big scheme (0.003 is nearly nothing) a less pragmatic approach, due the tendency to thinker, would be just try to make it more useful so it could be of appeal to a wider interest...
Probably the same time would have been better spent on things that are more interesting like have a better way to state what a dependency is (if it is something I'll need to link to, something that I need to run) to ease the life of our embedded arches (say ppc, arm, sh, mips) or to fully support multislot and multiabi so we can avoid emul-linux on amd64 and have ppc64 being able to run xlc w/out many annoyances *cough*, or start thinking about how to enable pgo as widely as possible since it appears to make the difference in certain situations (e.g. firefox).
Alive again
During August I was supposed to prepare something new for the LScube project.
I was supposed to do a bit more for the Summer of Code (Sorry Keiji and Seraphim) and the FFmpeg project (libswscale isn't yet in shape I know).
Sadly I spent about a month with a bad pneumonia and just now I'm starting to catch up really. (I hoped to stay better before but, as my 2 miss on council meetings shown, wasn't ok yet)
Diego is doing a wonderful job rationalizing LScube suite, Ale almost finished his Flux (started as a way to show me that C++ isn't the problem, just people misusing it), Michael decided to make libswscale the default in FFmpeg forcing more people taking care about it.
What now?
Well first I'll try to not miss new council meetings (and I'll ask Chrissy and Diego to back me up when happens I cannot be there).
I have some pending stuff about libswscale that will end up having a better structure to provide arch specific optimizations, once they hit I'll try to do again a witch hunt over ffmpeg using applications to provide the new libavcodec in portage.
Hopefully the next feng (and friends) release will hit portage and the stale fenice and libnemesi will be replaced accordingly ^^;
There is plenty of new stuff on the CELL land to be tried and provided (like mars)
I'll try to take some time to merge the openmoko patches to the new (and gcc-4 building) qemu so I won't have to provide an qemu-openmoko to help people interested in getting Gentoo on the freerunner (openrc could help a bit the boot time possibly and bitbake is a bit annoying from time to time)
Last but not least Syoyo is getting his blazing fast renderer Lucille to be usable even by common people.
Lots is happening (with and without me) =)
Alternatives...
Here some ideas about alternatives and gentoo possible alternative implementation (refer to Diego's post):
- implemented as an eselect module, possibly with an alternatives interface for those who like it
- will work just on executables you directly run
- it will be backed by an eclass to handle post-inst/post-uninst (registration and removal to the alternatives list)
- it will use the environment, a separate config dir, a C wrapper [pick one or all]
- the wrapper will check his argv[0], look at the config dir for the string to call and run it.
Probably even those 5 lines have conceptual bugs but I guess that's enough for a draft.
lu
Japan!
I'll stay for about a month in Japan, till the latest I was too busy and not so sure I'd make it so I avoided blogging about this till I were sure.
Hopefully I'll have another great time hurrying from a city to another (Hiroshima and Sapporo will be the southern and northern cities I plan to visit) and I'm looking forward to meet the local gentoo community again (I never thanked you enough).
I'm not sure how I'll be able to get a reliable network link, but I think I'll find a way ^^.
Alternatives, part II
You may already know that I have some complaints about pidgin:
- its developers use a brain damaged dvcs (yes monotone sucks, yet another application written in C++ that sucks after cmake)
- The ability to listen to the user feedback is severely reduced.
Since we are talking about alternatives looks like somebody tried to make things a little nicer and forked the code so far and made something fun out of that.
Seems promising, I hope it works well enough to be put on Gentoo soon if the pidgin devs don't come to their senses =P
Replacements and stuff
I'm completely unhappy of the result of those elections, obviously I cannot tell it was unexpected (Idiots watching TV and believing are quite many) anyway today I'll write about alternatives.
You know that I consider cmake one of the worst item available if you want to get a build system sane. I know that people usin cmake won't use those alternatives, most of the time because they aren't that known, fashionable or with spiffy names.
My list
- linux (kbuild) or ffmpeg like systems (note, we need to find a name for it) since those are relatively hard to get working on new projects,
- quagmire seems to provide something you can use but is still its infancy, yet I'll give a stab at it.
- waf seems scons done right, still it lacks the completeness and ease you can archive using the autotools the right way (reusing the good .m4 bits from aclocal and not wasting time rewriting stuff every time)
- bitbake could make some windows oriented people happy while giving the rest of the world the tools expected, but maybe those people cannot stand an heavy known markup (xml based) while loving the cmake's one.
- autotools have the main issue that some part of them are either over engineered (libtool) or annoyingly broking from release to release (automake), still the most useful part now it's autoconf, but iff ffmpeg configure would be chopped into the right bits to be reusable w/out feeling the pain even it could be replaced with ease, recently I discovered dolt, a replacement for libtool that maybe could help a bit.
Right now if you want to build a project autotools, with all their defects and glitches, are the best all around. If you want to get something saner probably you may start looking at dolt and quagmire, if you want to do something for everybody you may start modularizing ffmpeg configure and makefiles or linux kbuild so everybody could enjoy it. In the middle I put other tools that look more or less useful but that for a reason or another I dislike a little.
In a perfect world we don't have people wanting to use microsoft visual studio to build opensource projects, every library would provide a pkg-config file with all we need to know to link against it, and every system has a identical way to build shared libraries (passing --shared to the compiler and linker?).
In a perfect world probably we won't witness human stupidity with a Berlusconi III (the government).
PS: The hunt to .la files is open, please try to remove them from your system and tell us if something must be fixed. The treasure trove about pkg-config files is opened too, if you find a library not exposing one please notify us and upstream possibly with a pkg-config for them ^^
What news?
Lately I started to test some stuff, after hammering openrc inside bsd jails I started to use it on my laptop, the ps3 and the new phenom I bought recently. So far I hadn't anything to complain but just minor glitches that got promptly addressed by Roy. With the help of the other testers and developer you'll get baselayout 2 soon and in a pretty good shape.
Feng and felix got quite an overhaul and hopefully I'll release them once I cleaned up the code:
- felix had lots of experimental stuff added and you may not want it nor look at it right now.
- feng is getting the eventloop reshaped so that you can understand what's doing w/out losing your sanity.
I'm still waiting for more SoC applications (in particular people willing to learn CELL seems fewer than we'd like) you have this week left to apply!
Summer of Code!
gcc-4.3 landing and other random stuff
gcc-4.3 seems to be released and I already started building it (right now spu-elf target being built while the powerpc64-unknown-linux-gnu quickpkg is being uploaded to the devspace for the people needing it). I got my alubook back and seems working fine, many thanks to
http://www.pixel.it/ for being that quick in fixing it. Now I'm waiting for the battery replacement and I should be more or less back on business.
The stuff I'm doing at LScube is shaping up nicely and I hope to have the next feng release, sporting the lighttpd and other major changes, out soon (It's nice to have shared configuration across services ^^
. Soon I'll update the efika setup and I'll ask you to hammer it again ^^
ide-pmac lost interrupt, dma status: 8080
Looks like the tibook I'm using while the alubook is hopefully being repaired is dying. I'm not exactly sure if the problem is due the disk or the controller, surely that is even more unexpected...
The alubook will be hopefully back in shape in a while (I won't believe till I have it back!)... Meanwhile I'm still thinking about what to get as workstation since this experience made me look for a workstation AND a newer laptop. I'm open to suggestions, right now I'm looking at a
phenom gear for the workstation and a laptop from enface.it
This http://www.enface.it/ita/octave150w.php looks nice for that pricetag, pity the lcd resolution is lower than the one I'm using right now (and it's a tibook! an older than 5 years laptop!). I like durable system, possibly with a decent batter life and that aren't too bulky... Anything you could suggest?
Sigh, I have no reason to overspend for an Apple since it now it doesn't provide an interesting powerpc and building my own laptop out of a powerpc current design could be a too costly exercise...
For a week or more I'll be less than present and active =/
Spring cleaning
Lately I spent lots of time cleaning up lscube related stuff, mostly trying to hack together lighttpd features inside feng. I'm getting ready for the Internet Governance Forum meeting that we will webcast.
My laptops (both G4, one titanium and one aluminium) got their fan broken in a quite unpleasant way and I'm still wandering looking for replacement, maybe it's time to buy something else =_=
Lately I tried to look around and found some more or less nice laptops and even started thinking about getting a phenom system for home...
In the other news Seems that something would appear soonish at least as desktop... so maybe I could stay x86 free for a bit more ^^;
lu
Gentoo in Jail (and alike) thanks to openrc
Uberlord fixed the main issue I had in order to get gentoo/freebsd work in a jail: stop-start-daemon accessing /dev/mem and /dev/kmem
Now you can prepare your stage3, install openrc, dummify net and be happy in your nice jail =)
I must say that there are lots of issue here and ther in using FreeBSD with or w/out gentoo, but at least I'm getting a nice environment and got some issues fixed in the way.
ejabbed in Gentoo seems working almost fine while on FreeBSD there are weird issues that I couldn't understand at all, still diversity is the root of evolution.
ejabberd vs freebsd vs me
I started setting up some stuff on a jail I'm sharing with some friend, freebsd-6.2
- installing ejabberd is quite painless through the port (good)
- configuring it was alike gentoo (nice)
- having ejabberdctl working needed some tweaking (and learning what a cookie means for erl)
now, time to test the beast
- web stuff working as should
- connecting doesn't using tls ?!
-- trying on gentoo shown the same issue -> solution on gentoo: set proper perms to the ssl.pem and using absolute paths.
-- on freebsd that isn't working for unknown reason.
Time to play with gentoo on freebsd in a chroot inside a jail.
humor me plenty!
Some random updates
First of all I'm eventually snapshotting a newer ffmpeg, I'll need some help to get it play nice with all the other applications. The new ffmpeg has lots of improvements but it changes its api slightly so every application should update accordingly, time has passed so I hope upstream caught up with the change.
Once it will be unmasked I'll hopefully put the next release of feng in portage, currently I'm studying lighttpd internals in order to
- Have feng using the same lighttpd syntax for configuration
- Improve its behavior as server
So far I started importing lighttpd datatypes and lemon based parser directly in a separate branch and reshaping a bit feng in order to make it more rational. First thing learnt from lighttpd: keep everything in instance variables.
In the other news my alubook got its fan broken (and the tibook is in the same sorry shape), if you know where to find replacement parts for it please tell me (bonus if they aren't that pricey).
Influencing projects: do and do not
There are many ways to get an opensource project fit better your needs:
- you contribute to it by doing the missing bits yourself.
- you contribute to it by funding somebody so you get the bits done.
- you ask politely about those bits and you make a point on how those bits could be useful for the developers too (so they will use their time and skill to implement them)
There are also many ways to hinder an opensource project (trying and failing to have it fit better your needs):
- you assume you can lead who is doing since you are using what's done by them
- you assume that there is democracy and the fact "everybody"* want something (but the people actually doing something) makes that relevant
- you try to annoy people till they give in or give up.
* from interestingly inflated self made estimation
How to contact developers
Let me give a bullet list about ways to contact developers:
- IRC: most developers are present on irc, you may query them, talk to them in the topic channels (e.g: #gentoo-media) or ask for voice in the #gentoo-dev channel. Irc logs may or may not be available for past digging.
- email: again you can either contact the developer privately using the ${nick}@gentoo.org email or using the mailing list (gentoo-dev, gentoo-project, gentoo-$topic), you may also read the archived discussions.
- jabber: we got IM too, you may again use ${nick}@im.gentoo.org to contact them directly.
Those are two way communication routes, you ask and you got replies, most of those let you have a nice log so you can even point past discussions for clarification. If someone disregard about you usually can voice it and it remains.
There are 1 and 1/2 way communication routes like blogs, it's up to the blog owner let the comment appear or not (so he could make like he got full support by everybody just silencing who isn't exactly keen on what's there).
There are even 1 way routes like the GWN and GMN in which the editor can write whatever he wants.
If you wonder why I'm just stating the obvious like this, well, seems that some people got a disconnected perception on how communication works so it's sorely required even if dead boring.
What are you expecting us to do?
Seems that some of people started talking about issues, lots started to listen to them and whatever they said, other picked up blogposts and just wrote on them...
Fine and dandy, still I'm with tsunam and ferdy.
http://archives.gentoo.org/gentoo-dev/msg_150039.xml
We are alive and from what I could see the future isn't that dark on the technical side.
:: Next >>