Did you know: We Git-host Gentoo user overlays!
Your Gentoo overlay hosted on Gentoo machines like this one — wouldn't that be sexy? Just click here to open a bug (already set to product "Gentoo Infrastructure" component "Gentoo overlays") providing
- Overlay Name (matching
"^user/[A-Za-z0-9_][A-Za-z0-9_-]*$"
) - An extra-short description
- Owner name and e-mail (that's you)
- SSH pubkey you'll be pushing with
That's it. Once you're running we can get you into the layman registry, too.
What being a Gentoo developer is about
Intro
Besides writing ebuilds itself being a Gentoo developer is about quite a few other things: it's never just configure-make-make-install. It's actually true not only for Gentoo but for other distros, too. Read on.
So what is it?
So if you are still wondering what distro developers (sometimes called "packagers") are doing I can recommend watching How to Build Applications Linux Distributions will Package (audio from 1:40 on) of PyCon 2009 by Toshio Kuratomi of Fedora.
As a result of all these other aspects there is a lot of room for challenge,
interaction, and — dependening of your definition of that word — beauty. If
you're thinking by now: wow, cool, I want to join with this : please contact
us! Drop by in #gentoo
on Freenode for instance and say hello.
Besides...
The Gentoo tool mentioned in the end by someone from the audience is g-pypi, I suppose. There's a related Summer of Code task related to g-pypi, if you're a student looking for paid fun in the summer.
Bug fixing in Gentoo: How we are performing #2
One month is over, here's an updated graph: PS: The source code producing above graph is available.
Pioneers of the Evitable? Fwd: Songbird dropping support for GNU/Linux
Songbird Singing A New Tune without support for GNU/Linux
Passing arguments to the end part of \newenvironment
I recently found myself with repeated use of quote environments like this:
\begin{quote}{\sl To call two elements ``independent'' is to say the chances of one failing are not linked in any way to the chances of the other failing. }\\\hspace*\fill\citep{downer-failure} \end{quote}
So it's an ordinary quote plus
- slanted style around the actual citation
- a note on the author
By creating my own custom environment fancyquote I could reduce duplication and at the same time make it more readable. I wanted to be able to write it like this, instead:
\begin{fancyquote}[\citep{downer-failure}] To call two elements ``independent'' is to say the chances of one failing are not linked in any way to the chances of the other failing. \end{fancyquote}
If it had worked I would had stopped at this:
\newenvironment{fancyquote}[1][]{% \begin{quote}% \begingroup\sl% }{% \endgroup\\ \hspace*\fill#1% \end{quote}% }
What's the problem here? Arguments (#1
) cannot be used in the second half
of environment definitions.
It may not contain any argument parameters. [1]
What? No really. Now that I know that an environment definition makes two
commands \begin envname and \end envname it even makes a bit of sense to
me. On a side note: \begingroup
and \endgroup
are replacement for curly
brackets that work in syntactically unbalanced manner. So still, I wanted that
environment. In the end I came to using a savebox to give the second half
access to my original value of #1
:
\newsavebox{\fancyquotesavebox} \newenvironment{fancyquote}[1][]{% \savebox{\fancyquotesavebox}{#1} \begin{quote}% \begingroup\sl% }{% \endgroup\\ \hspace*\fill\usebox{\fancyquotesavebox}% \end{quote}% }
In contrast to the first approach now this does work.. as longs as you don't run into a need to nest it. If you know how to use a proper stack for this I'd be interested to hear.
Gentoo Bugday April 3rd: Bugs to start with
Introduction
Today, April 3rd, 2010 is bugday again. If you didn't know what bugs to work
on last month — not this time!. A few developers have taken the time to mark
117 bugs as candidates for bugday using the bugday
flag in Bugzilla —
thank you! Below is what they marked, presented from three different
points of view.
Please keep in mind that for now the tables below are static snapshots , live stats may be ready next month: consider this as a preview. You can always get a Bugzilla-style live listing from http://tinyurl.com/bugday-candidates, though. Thanks for taking part in bugday!
Bugs to start with:
Bugs by class
Bugs by package
Bugs by herd
PS: Yes, the code which generated this report is available.
New flag "bugday" on bugs.gentoo.org: Please check your bugs for suitability
.. WHAT?
Next bugday is around the corner: Saturday, April 3rd 2010. As previous bugdays have been suffering from the bad selection of bugs for bugday I want to ask you to help select bugs for bugday not that we have technical means to, please read on. If you have editbugs permission on bugs.gentoo.org you can marks bugs for bugday by now. Thanks Robin!
Requirements for a bugday bug
Just one thing: The task behind it must be solvable without developer access (excluding the final commit)
Good candidates
A bug is a good candidate if it belongs to any of these classes:
- any kind of easy fixes
- compile errors
- documentation bugs (smaller ones)
- requests for ebuilds (maybe point user to Project Sunrise)
- typos,
SRC_URI
/HOMEPAGE
changes - sandbox violations
- segfault and crash bugs
- bugs in need for working/non-working confirmation
If you can do a better list please make me replace it ;-)
Marking bugs for bugday
There's a new flag called "bugday". For each bug you can set it to one of four states:
-
+
— Yes, good candidate for bugday -
-
— No, please keep this bug of bugday -
?
— Decision requested (good choice if you're unsure) -
— Unknown (a space)
Bugs in so far
To see what bugs have made it into the bugday so far you can have a look at either
- http://tinyurl.com/bugday-candidates (usual web view)
- http://tinyurl.com/bugday-candidates-ctype-rdf (XML for scripts)
Thanks for reading.
Before svn2git you want to run: svneverever
First: There are several tools called svn2git: this is about the svn2git of KDE up on Gitorious. So you're about to convert a larger SVN repository to Git, say 15,000 revisions. You check out the latest revision, run some find command or fire up a file browser to get a better view of file hierarchy in there. Then it strikes you:
- What if the layout didn't look like that all the time?
- Are there any sub projects hidden in there that you want to ignore or extract to a separate repository?
You may end up using "svn ls" or something peeping in here and there not being really sure until you've seen it all. What a nightmare. When converting the repository of Gentoo's Portage I wrote a simple tool in Python to do that work for me in automated fashion: I called it svneverever. It runs through all history collecting additions of directories. In the end it presents a tree of all directories ever having existed in the repository. Let's do a quick example. First we create tiny but suitable sample repository:
# Create and checkout dummy SVN repo svnadmin create example-store svn co file://$PWD/example-store example-workdir cd example-workdir # Make revision #1 for /trunk mkdir trunk touch trunk/readme.txt svn add trunk svn ci -m 'Add /trunk' # Make revision #2 for /project7/trunk mkdir project7 svn add project7/ svn mv trunk project7/ svn ci -m 'Move /trunk to /project7/trunk'
Let's feed that to svneverever:
svneverever file://$PWD/../example-store
Its output will be:
Analyzing 2 revisions.... 50% (r1)... 100% (r2). /project7 /trunk /trunk
(The output for Portage was more complex, have a look at all-portage-repo- dirs-ever.txt if you're curious.) With that information at hand it's easy to write a svn2git rules file for it:
create repository project7 end repository match /project7/trunk/ repository project7 branch master end match match /trunk/ repository project7 branch master end match
or this one after unification of the matchers into one:
create repository project7 end repository match (?:/project7)?/trunk/ repository project7 branch master end match
(For Portage we ended up with these rules (v3).) On one hand svneverever is a working tool already, on the other some of you will want more from it. As of now I just won't be able to handle potential feature request but I hope to have time to review and accept sets of clean patches. So if you have patches for me: please contact me. Last but not least a big THANK YOU to the authors of svn2git. It's powerful and fast: 110 minutes faster than git-svn on the history of Portage over here. Thank you (in order of current commit count, descending):
- Thiago Macieira
- Thomas Zander
- Torgny Nyblom
- Anders Kaseorg
One last time: here's the link to svneverever.
One site to search all ebuilds: gpo.zugaina.org
Yannick/Ycarus has been running a very usefull website for some time (http://gpo.zugaina.org/; GPO = Gentoo Portage Overlays) allowing you to browse and search ebuilds from all overlays known to the layman registry. Recently he added the trees gentoo and funtoo to the database. So while there may still be ebuilds flying around on the net or on bugs.gentoo.org that website finally allows access to the majority of ebuilds in one place. Awesome!
Looking back at bumpday #1: winners and packages
First of all thanks to everyone participating in this bumpday!
In this report:
Quick summary
-
First place goes to betelgeuse with 9 bumps.
-
Second place goes to jlec and tove with 3 bumps each.
-
Third place goes to armin76, caster, matsuu, nirbheek, spatz, ssuominen, vapier with 2 bumps each.
-
37 packages have been bumped in total.
This analysis is referring to bumpday 2010-03-20.
Bump count per person
Rank | Bumps | Person |
---|---|---|
1. | 9 | betelgeuse |
2. | 3 | jlec |
tove | ||
3. | 2 | armin76 |
caster | ||
matsuu | ||
nirbheek | ||
spatz | ||
ssuominen | ||
vapier | ||
4. | 1 | calchan |
djc | ||
keri | ||
keytoaster | ||
mpagano | ||
serkan | ||
sping | ||
weaver |
Packages per person
Person | Category/Package | Version |
---|---|---|
betelgeuse | app-arch/fastjar | 0.98 |
dev-java/charva | 1.1.4 | |
dev-java/commons-codec | 1.4 | |
dev-java/commons-daemon | 1.0.2 | |
dev-java/commons-pool | 1.5.4 | |
dev-java/jdbc-jaybird | 2.1.6 | |
dev-java/maven-bin | 2.0.11 | |
dev-java/slf4j-api | 1.5.11 | |
dev-java/slf4j-nop | 1.5.11 | |
jlec | app-text/dos2unix | 5.0 |
sci-chemistry/aria | 2.3.1 | |
sci-chemistry/arp-warp-bin | 7.1 | |
tove | dev-perl/DateTime-Format-Strptime | 1.2000 |
dev-perl/DateTime-Locale | 0.45 | |
dev-perl/Net-Twitter | 3.12000 | |
armin76 | net-p2p/deluge | 1.2.2 |
sys-kernel/vanilla-sources | 2.6.34_rc2 | |
caster | dev-java/ant-eclipse-ecj | 3.5.2 |
dev-java/eclipse-ecj | 3.5.2 | |
matsuu | app-arch/upx | 3.04 |
app-arch/upx-ucl | 3.04 | |
nirbheek | media-libs/gnonlin | 0.10.15 |
media-video/pitivi | 0.13.4 | |
spatz | app-misc/strigi | 0.7.2 |
media-video/devede | 3.16.6 | |
ssuominen | media-sound/mpg123 | 1.10.1 |
media-video/cinelerra | 20100320 | |
vapier | sys-fs/e2fsprogs | 1.41.11 |
sys-libs/e2fsprogs-libs | 1.41.11 | |
calchan | sci-electronics/kicad | 20100314_p2456 |
djc | dev-vcs/hgsubversion | 1.1 |
keri | dev-lang/yap | 6.0.3 |
keytoaster | dev-lang/php | 5.2.13 |
mpagano | sys-kernel/git-sources | 2.6.34_rc2 |
serkan | dev-java/java-gnome | 4.0.15 |
sping | media-libs/freeverb3 | 2.5.0 |
weaver | sci-biology/seaview | 4.2.3 |
Packages bumped
Category | Package | Version |
---|---|---|
app-arch | fastjar | 0.98 |
upx-ucl | 3.04 | |
upx | 3.04 | |
app-misc | strigi | 0.7.2 |
app-text | dos2unix | 5.0 |
dev-java | slf4j-api | 1.5.11 |
jdbc-jaybird | 2.1.6 | |
commons-codec | 1.4 | |
eclipse-ecj | 3.5.2 | |
java-gnome | 4.0.15 | |
ant-eclipse-ecj | 3.5.2 | |
commons-daemon | 1.0.2 | |
charva | 1.1.4 | |
maven-bin | 2.0.11 | |
commons-pool | 1.5.4 | |
slf4j-nop | 1.5.11 | |
dev-lang | php | 5.2.13 |
yap | 6.0.3 | |
dev-perl | DateTime-Locale | 0.45 |
DateTime-Format-Strptime | 1.2000 | |
Net-Twitter | 3.12000 | |
dev-vcs | hgsubversion | 1.1 |
media-libs | gnonlin | 0.10.15 |
freeverb3 | 2.5.0 | |
media-sound | mpg123 | 1.10.1 |
media-video | pitivi | 0.13.4 |
devede | 3.16.6 | |
cinelerra | 20100320 | |
net-p2p | deluge | 1.2.2 |
sci-biology | seaview | 4.2.3 |
sci-chemistry | aria | 2.3.1 |
arp-warp-bin | 7.1 | |
sci-electronics | kicad | 20100314_p2456 |
sys-fs | e2fsprogs | 1.41.11 |
sys-kernel | git-sources | 2.6.34_rc2 |
vanilla-sources | 2.6.34_rc2 | |
sys-libs | e2fsprogs-libs | 1.41.11 |
PS: Yes, the code which generated this report is available.