Again, the fun has begun. We have a lot of interesting projects. Mine is accepted again. Here’s what I’m going to work on with the mentorship of Andrew Pantyukhin(sat@):
Well, a lot of interesting things happened in the recent days, thus it’s time to write a bit of summary.
- The ZFS filesystem support was committed to HEAD by Pawel Jakub Dawidek (pjd@). Pawel has done a great work on porting this great functionality from OpenSolaris, and yesterday the code hit the tree. It lacks from ACL and extended attributes support and can’t be booted off. There’s no iSCSI target daemon support yet. it is only for i386 and can be used only as a module. These are the current limitations, but apart from those it is reported to work well. As Pawel said, support for amd64 is going very soon and other architectures will be supported later due to the missing atomic operations.
- There’s a nice utility in the graphviz packag, called dot. It can be used to render nice graphs from text files. Some time ago we already talked about making some graphs to display the mentor-mentee relationships between the project committers, and recently Florent Thoumie added a sample dotfiles to src/share/misc. The files are still being completed, I hope we can add them to our website later.
- The Google Summer of Code 2007 has begun. Applications are no longer accepted, thus applicants had to submit their proposals by now. I submitted an application about the Ports Collection infrastructure again. I’m looking forward to the results, which we will get to know by 5:00 PM at April 11 Pacific time.
Recently, I got a doc commit bit as well. As a doc committer, the first thing I’d like to take care about is the webpage. The PR count is low for www, but there are some trivial PRs that are easy to solve. Besides, I’d like translate the news/press parts for the Hungarian Documentation Project. After these are solved, I’ll start busting doc PRs as well.
I’ve been working on the Hungarian translation of the webpages for a long time. Recently, I got to the point, where it reached a pretty good shape, so I looked for an active doc committer and Giorgos Keramidas (keramida@) offered that he can help me getting this stuff to the repo. He committed the webpages yesterday, so that we can see how it looks on www.FreeBSD.org. Unfortunately, I found some very nasty things after the first build and spent this day with fixing those rendering issues and finally I succeeded and sent the patches to Giorgos. While fixing these issues I also found some typos and broken links, which are also fixed now. And while here, I also sÃnced the content, so I think I can announce it in the Hungarian community forums after Giorgos committed the new patches. This translation also supposed to be a little bit of encouragement for Hungarian people to get a bit more involved.
I have not posted a long time ago, so here’s a bit of summary what makes me busy nowadays besides my university studies:
- DESTDIR support: my test computer was broken for quite a long time, so I could not work on DESTDIR support. Not I got a new hard drive and a laptop, so I can continue working on this soon, I just have to set up the test computer again.
- Hungarian webpages: it is almost done, I submitted some text for the status reports as well. Only about 4-5 pages has to be translated, and of course it needs a thorough review for typos and grammar.
- Porting wpi driver: I’m not the most eligible for this, but there’s nobody interested with knowledge, so I’m trying to port this driver from OpenBSD. Most part are straightforward, and Sam Leffler’s iwi port is a good reference for FreeBSD-specific changes. I’m not sure, I can finish this port, however, it is my first experience with kernel-level programming.
Today I have been working on the Hungarian webpages again. I had issues with ®, © and ™ signs a long ago, so I tried to find out what’s wrong with the charset. I tried iso-8859-1, iso-8859-2 and utf-8, but something was wrong in each case. Finally, I realized that tidy mess up the entities, so everything went ok under iso-8859-2 by disabling tidy.
Today, I started to work on the new DESTDIR implementation that was suggested by Kris Kennaway on ports@. I’m stuck with this right now, but I hope I’ll find the problem soon.
Besides, I made some progress on www/hu as well. I have almost merged all of Hiroki Sato’s cleanup changes. His work is great! Everything is much saner now. The best thing is that I can use character entities so no need to keep in mind a lot of character codes any more. Only few pages left to translate that I consider mandatory, but I want to come up with a working website as soon as possible. I hope it will get some attention and more people will be involved then.
SoC is ending. I’m a bit sad that I couldn’t complete the DESTDIR work and the other items, but actually the DESTDIR problem needed much more time and effort than I though before the SoC. Now, Kris Kennaway found a better solution, so things might change soon. It is much simpler than my approach, so makes my work useless. I don’t have to blame myself, because nobody could find out this solution so far. I don’t think that my work was pointless at all, it needed some investigation and I’ve learnt a lot. Of course, I would like to continue working on this, and address my other projects that I did not have time for this summer.
Apart from DESTDIR, I wrote a new handling i386 binary ports. There are also two patches of mine that are still open in gnats. These were not in my original Soc proposal. One of them corrects the ECHO_MSG and ECHO_CMD variables in bsd.port.mk, it is just a minor issue, I realized it when working on the DESTDIR support. The other one adds a generic infrastructure support for building binaries for debugging purposes via the WITH_DEBUG macro. This was requested by Alexander Leidinger, and I like the idea, as well.
As for the remaining, I started to move out the fetch code from bsd.port.mk. This is good for “modularization”, the used fetch script can be overriden. The other advantage is that it makes bsd.port.mk cleaner and easier to read. This part of the code is definitely such thing that is easier to maintain in a shell script. I hope it will inspire people to work on it and write enhancements, e.g. master site randomization, stale mastersite detection, or such things. I also thought of sorting master sites by ping replies.
The three other items would have been making ports respect CC and CFLAGS, implementing cross-compiling and writing some kind of good plist generator tool. I hope I’ll have time to work on them in the future, as well.
Erwin committed my patchset yesterday. I’m working on 5 ports that were broken by my patchset due to the incorrect usage of the DESTDIR macro. We can also start to work on making ports DESTDIR-respective, so I’d like to encourage everyone to check the maintained ports, I’ve already started that for my ones.
I’ve started to work on moving out the fetch code from bsd.port.mk, which fetches all the distfiles and patchfiles for ports, because this makes bsd.port.mk pretty messy. The fetch code is about 12 pages of A4 and located in bsd.port.mk in bunches, not as a whole. The task is quite simple, I need to convert make if and for cluases to shell, as well as the make substitution expressions.
Besided, I’m still working on DESTDIR. In the exp run, my patches broke some extra ports, that were not broken on the latest i386-7 run, so I need to investigate what caused these breakages.