The latest(?) version of BSD Magazine is out. Among other things, it has an intro to pkgsrc. The site lists November 2010 for this issue, but it just showed up on the Twitter feed, so I’m not totally sure I have this right. In any case, it’s a free download.
I never really noticed this before, but it’s possible to include your own patchsets into pkgsrc and have them picked up as part of the build process, using $LOCALPATCHES.
Somehow I ended up with a zillion links for this week’s Lazy Reading. I hope you’ve got some spare time for this… Let’s get right into it:
- Michael Lucas, BSD book author (see links on site), has started Twittering. He’s also found the Wikileaks/NetBSD association that I didn’t know about, as Julian Assange even shows up in the NetBSD fortunes file. Also, while linking to his blog, I’ll point at his post on “Write what you don’t know“. Think of that article next time you feel you don’t know enough to contribute to something – especially open source.
- There’s a lengthy dialog on the email@example.com mailing list about pkgsrc, and “Making it easier to get and use pkgsrc“. You can follow the whole thread on the listing page. I am all for the idea. Everybody and their brother has an App Store these days. Ports/pkgsrc are perhaps the original app store ideas, and I’d like to see them brought to the same level as these commercial entitites. This is important: pkgsrc is perhaps the only app store equivalent in existence that is not tied to a platform; that exists only to get you software rather than to provide a way to tie a platform into its developers profits.
- Hey, a roguelike zombie apocalypse game! Aw, it’s Windows-only.
- Mikel King has an editorial that sums up the many places BSD serves as an underpinning to products – a good checklist, if you don’t know of them. He’s also written an instructional article on passwordless/SSH setup.
- Along the same lines, Promote Perl by Building Great Things. This applies to BSD products too; telling people it’s great doesn’t work as well as making something great and showing that a BSD system is part of what makes it so.
- Did you know there are even BSD Certification classes in Iran? I really need to do that… though probably not at that location.
- Yacc is not dead. (via) I link to this because I had a moment of nerd excitement realizing that blog’s title is intended to look like a bang path.
- Database design ideas. There’s been a good series of posts there lately, good for anyone wanting to move beyond the basic CRUD details.
The utility pkg_add has a -u option that tells it to upgrade any existing matched package with a given binary package. Since pkg_radd passes options on to the underlying use of pkg_add, after automatically setting a remote repository for binary files, pkg_radd -u <packagename> tells pkg_add to automatically find and upgrade a package.
I never thought this would work. However, I’m building a package on a system that has pkgsrc-2010Q1 packages installed, but a pkgsrc-2010Q3 /usr/pkgsrc. Every time I’ve encountered an error because installed software was too low a version, pkg_radd -uv <package_name> has resulted in a quick upgrade.
I’m not recommending this as a new upgrade method; I’m noting how unexpectedly well this experiment is going. It may be just blind luck, but this sure would be nice if it ‘just worked’.
A number of people have encountered this: while installing some larger pkgsrc package, the process stops on a strange DocBook error. Alex Hornung has a fix: symlink /usr/pkg/etc/xml/catalog to /usr/pkg/share/xml/catalog.
Alex Hornung has some patches that allow KDE4 to build on DragonFly. They aren’t in pkgsrc and not all in KDE yet, so try them out directly if you want KDE4, for now.
Update: based on something Alex said on IRC… they’re in KDE4 now.
Chris Turner wrote some notes about building pkgsrc packages in a chroot, including the handy tip of using
to run and display a GUI-using app under the chroot.
Our mirror of the never-quite-official git repository for pkgsrc is being rebuilt, so it will be temporarily inaccessible. Matthew Dillon is working on building a new one directly from pkgsrc CVS, which will have a different link.
Update: It’s finished. Matthew Dillon’s posted a summary of the changes and what you need to update in order to use it.
I’ve drastically revamped the pkgsrc howto on the dragonflybsd.org website. It’s also linked in that site’s menu, too. Comments please!
A bump in shared library version for libssl/libcrypto means that any programs dependent on it will require a rebuild – including any pkgsrc programs.
This only affects you if you are running 2.7, for now. It means that on upgrading from 2.6 to 2.8, any libssl-using programs will need to be updated. This may not be a big thing, since pkgsrc-2010Q3 will also be out and people will want to upgrade anyway.
A small crop for Lazy Reading this week – oh well.
- Bad things about SVN. I’ve always thought git is more interesting, but subversion is easier. Oh well. The article is also fun for the unfiltered Windows-hate.
- At least this hasn’t happened yet with pkgsrc.
- What happens if you put your hand in the way of the Large Hadron Collider beam? (via)
I’ve noticed that if you have older pkgsrc packages installed, and install binary packages for pkgsrc-2010Q2, those packages will refuse to install if pkg_install is an older version than what they were built with.
I ended up force-deleting pkg_install and bmake, and reinstalling by running pkgtools/bootstrap/bootstrap. There may be better solutions; I’m mentioning it now since it’s a known problem.
Update: “bmake replace USE_DESTDIR=yes” was suggested by Joerg Sonnenberger. “pkg_add -u /path/to/newer/pkg_install” should also work (untested).
This will probably apply to the upcoming pkgsrc-2010Q3, too. Building from source is a workaround for now.
Starting September 23rd, pkgsrc will freeze (i.e. bugfixes only) in preparation for the 2010Q3 release, which is planned for one week later, instead of the usual 2 weeks. This release will include some very new software like Postgres 9, too.
Some time ago, there was an application called pkgmanager, available in pkgsrc-wip. It worked by tracking ‘wanted’ packages in pkgsrc, and upgrading based on that list. It hasn’t been updated in some time, however, and may not even build.
‘Rumko’ has written a replacement, called rpkgmanager. The Gitorious page linked in the previous sentence includes the URL to download the code via Git, so it’s available to try now even though it’s not yet in pkgsrc.
I totally meant to post this yesterday. Oops!
- We’re using toeplitz. I just like the name; I don’t understand how it works.
- The idea of software forks has been around since, oh, BSD and System V Unix diverged, if not earlier. Here’s an article that talks about forking in general, rather breathlessly. After reading that, read this perhaps more accurate fork parody. (via)
- You know what we could use for pkgsrc, and all the other port/package collections? Explanation. They face the same problem phone application stores face: too many programs to easily select what you need. You could certainly build a whole site just around package reviews; it’s even possible to argue that Ubuntu or PC-BSD are built around just making some 3rd-party-app choices ahead of time on an existing operating system. Anyway, here’s an article talking about that idea specifically around the Apple App Store. Please won’t somebody who is not me do something like that for pkgsrc?
- This writeup of one man’s experience with Forth gives a good feel for the language, or at least as good a feel as I can understand. Posted in memoriam for our recently departed Forth bootloader. (via) There’s other enjoyable articles on that blog, too.
- This describes about two years of my life, except it was mostly Zangband.
As I found out directly, upgrading from pkgsrc version 2010Q1 to 2010Q2 has a minor quirk: binary packages for 2010Q2 will refuse to install with an older version of pkg_install. Rebuild pkgtools/pkg_install to the 2010Q2 version and the problem will go away.
- If you are running DragonFly 2.7, Matthew Dillon has made some kernel changes, so updating your 2.7 machine will require a full buildworld cycle, not quickworld.
- The binary packages for 2.6 and 2.7 have been updated to pkgsrc-2010Q2. This means that pkg_radd will automatically pull down newer packages, and you should make sure your /usr/pkgsrc is using the pkgsrc-2010Q2 release if you want to be sure there’s no version mismatches.
I recently sent out a description of what built for pkgsrc-2010Q2 , though the section on not changing the stable link is no longer true.
Binary packages built for pkgsrc-2010Q2 are available now via pkg_radd or directly. Make sure to read my lengthy post for exact details.
I haven’t seen an announcement at all, but I’m inferring that it’s out. I’ll be changing the DragonFly build machines momentarily.
There’s an online hackathon (the 14th!) planned for July 30th through August 2nd for pkgsrc (and probably some NetBSD material too) at FreeNode/#netbsd-code on IRC. Aleksej Saushev’s post has more details. At least it’s cheap to attend!
Matthew Dillon set up a git copy of the pkgsrc repository some time ago. However, it’s had syncing problems, and there’s an ‘official’ pkgsrc git repository now which does not have the problems. You can still pull from the same place, but it’s the ‘master’ branch now. His heads-up message describes how to switch.
It’s been 0.25 years since the last, so pkgsrc is due for another quarterly release. The usually-two-week freeze before release starts tonight. The release should happen at the end of the month.
- IBM’s developerWorks has an article up about GNU screen. It’s not BSD-specific, but the tips in using screen are useful. (Before someone brings it up: yes, tmux too.)
- Another article talks about inspecting network traffic using various tools including tcpdump and wireshark. It is a tremendous advantage to see what happens on a network at the most basic level, so this is a good skill to pick up.
- Oh, and “Setting up UNIX file systems” and “10 steps to Unix nirvana“.
- FreeBSD now ships with clang. (via) I know DragonFly (mostly?) works with clang… Could we switch?
- “hwstat” will gain DragonFly support soon.
- Firmware for ral(4) has been added by Joe Talbott.
- Thomas Klausner has a writeup of some project ideas or goals taken from the recent pkgsrcCon. A followup has me thinking: if the -uu option updates dependent packages with pkg_add, does that mean ‘pkg_radd -uu packagename” will do all updating possible based on available binary packages? Worth trying.
I’ve put a few of the reports from pkgsrc builds on DragonFly out. They’re all using pkgsrc-2010Q1, on i386/DragonFly 2.6, i386/DragonFly 2.7, and x86_64/DragonFly 2.7. The links in the reports go to the errors that caused each package to not build. If you happen to see something that has an easy fix, or that you really need to have working, please submit a fix.
Binary packages built for DragonFly 2.6 and 2.7 from the most recent pkgsrc quarterly release, 2010Q1, are now available. The utility pkg_radd will access them, or you can download directly.
From my email to users@:
- I almost have pkgsrc-2010Q1 builds done for every architecture, so I’ll point the default load location for pkg_radd to them within the next 24 hours.
- Are you still using a DragonFly system older than 2.4 and downloading binaries? If so, tell me.
- A project: enhancing pkg_search and pkg_radd to be able to tell when a package is missing because of license restrictions. Anyone want to try it?
If you use Apache, as many people do, some of the default building choices have changed in pkgsrc. Read Matthias Scheler’s post for details.
I’ve made reference to DESTDIR for pkgsrc several times, with only an informal understanding of what it means. From what I’ve learned, and what Joerg Sonnenberger’s told me, DESTDIR support means that packages can be built from pkgsrc without needing to be root. This means local packages can be built on an ordinary user account using pkgsrc.
This also means that pkgsrc can build packages before each upgrade, and only upgrade if a binary package can be built for each item involved. This means minimal downtime and no failures during upgrades, the biggest bugaboo for using pkgsrc that I’ve encountered.
I posted a note about where the 2010Q1 builds are for pkgsrc; if you’re on i386/2.6 right now, you can try it out.
The newest branch of pkgsrc for 2010 is officially out – read the release announcement for details on what’s updated. Among other things, DESTDIR support is almost complete, and a shift to default KDE4 is underway.
I’m working on bulk builds already, so hopefully soon you’ll be able to pkg_radd 2010Q1 packages…
pkgsrcCon is happening May 28th-30th in Basel, Switzerland. The event web page has note on location and hotel information. (thanks, S.P.Zeidler)
Based on a comment from John Merino on this very Digest, I managed to assemble some statistics on binary pkgsrc package use. See my full post for the details, including some analysis.
In an effort to catch up…
- Matthew Dillon made a change to how material in memory is paged out; it may improve things depending on how much paging your system already does.
- The AsiaBSDCon OpenBSD papers are online, with mention of video of the presentations.
- Use keys for your SSH login, cause this will only get worse.
- Ten Shell One-liners. The first one, using your favorite editor on the command line, is one of those things I knew about, but didn’t know to do. (caveat: some Linuxisms)
- Want to test a big xorg update for pkgsrc? Of course you do.
Every time a bulk build of pkgsrc packages is completed, a report is uploaded listing what built and what didn’t. Since there’s so many reports from the now-automated build, I’ve sorted it by architecture and release, to make lookups faster.
This is handy if you’re looking to fix pkgsrc apps on DragonFly, and you need a target. It’s also a good way to see if a desired module exists as a binary.
We actively need more people to do the small but plentiful fixes to make sure as many pkgsrc packages work as possible. Are you interested? Speak up.
Jan Lentfer has accomplished something rather dramatic: the removal of BIND from the base system. It’s not actually out yet, but I daresay it will be after the 2.6 release, freeing people up to install any DNS server from pkgsrc – including BIND.
The ‘freeze’ for pkgsrc-2010Q1 is scheduled to start March 16th, which will be right around the same time of the DragonFly 2.6 release. The freeze lasts 2 weeks, usually, so new packages for 2.6 will be built probably about mid-April, based on this info…
Joerg Sonnenberger announced new behavior in pkgsrc: Performing “bmake install” in pkgsrc with a package that supports DESTDIR will build a binary package and then install from that package. This means a package will be successfully build before the installation process is started, and I assume is to assist further work down the road.
Details: The old behavior was to build and install directly, which “bmake stage-install” can reproduce. DESTDIR support means that the software can be installed as non-root.
It’s like someone turned on the activity faucet; there’s so much to post about lately!
- PkgsrcCon 2010 is May 28th to 30th, in Basel. The date’s been declared, but not much else – yet.
- Chunks of KDE in pkgsrc are now updating to the KDE4 versions by default. This only affects pkgsrc-current users, not pkgsrc-2009Q4.
- An interesting story about computer manufactuing and MicroSD problems.
- In Praise of Online Obscurity – this article makes me think of communities like DragonFly and the other BSDs. In essence, growth causes smaller independent groups to form out of a larger membership, because a social group can only be maintained to a certain size. Perhaps this is why FreeBSD’s evolved a core group, or other groups form, like Wikipedia ‘editors’. (via) I’m catering to my own interests in group dynamics here.
- Jan Lentfer’s brought in his hostapd and wpa_supplicant work, mentioned previously.
Postgres will be 8.4, and Python 2.6, as default installs from pkgsrc. This affects anyone following pkgsrc-current, but if you are using pkgsrc-2009Q4, it won’t matter for a few months yet.
Seen via email and Hubert Feyrer’s blog: There’s a NetBSD hackathon planned for February 19th through the 22nd. The meetup is via IRC. Since it’s NetBSD, it’ll include pkgsrc, and if it includes pkgsrc, it affects DragonFly. If you’re interested, show up – even being there to report on packages that compile or don’t (on DragonFly) would help.
It’s been available to build for some time, but the official announcement for pkgsrc-2009Q4 is out. It’s worth reading to see what new packages pushed it over the 9,000 mark.
A fresh set of pkgsrc-2009Q4 packages for DragonFly 2.5.x/i386 are ready, and already available on avalon.dragonflybsd.org. pkg_radd will fetch them.
There’s a number of things that all came together in the last 24 hours or so, which means: bullet points!
- Jen Lentfer took my suggestion and ran with it. He’s got an update to Sendmail 8.14.4 on the way too.
- Binary pkgsrc-2009Q4 packages for DragonFly 2.4.x/i386 are all uploaded.
- I finished a build of pkgsrc-2009Q4 for DragonFly 2.5.x/x86_64 – take a look and fix some of the broken items, if that interests you.
- Weekend reading: check out this Trivium post as there’s some interesting historical items. I may try that LackRack idea in a environment that doesn’t fit a normal rack well…
A build of pkgsrc-2009Q4 for DragonFly 2.4/i386 is complete, and uploading now to avalon.dragonflybsd.org. When the upload’s done, I’ll change the symlink so that pkg_radd downloads from the new collection. Builds for x86_64 and 2.5 will be done soon.
There’s a couple packages – lang/mono, devel/boost-libs – that can be fixed with some updates; I’ll do so next chance I get.
It’s been possible for some time to automatically check for vulnerabilities in installed pkgsrc packages. However, it requires some initial setup work. NetBSD now will check automatically if there’s any packages installed. The same feature could work in DragonFly – I have a post about that even links to the appropriate changes. Someone want to take this on?
Joerg Sonnenberger’s planning to remove more old pkgsrc packages. This includes some packages like php4, which is common and also should die. There’s discussion that can be followed from the post for some details.
I started building the pkgsrc-2009Q4 packages on several machines tonight, and I noticed something. The previous quarterly release, pkgsrc-2009Q3, had 8,969 packages. This release has 9,100. That’s right – OVER 9,000!
Still not used to typing “2010”.
- I have no idea if bup is a worthwhile backup tool or even if it would compile on DragonFly, but more products should be described this way. (via)
- I’ve seen plenty of articles along the lines of “Open Source and X”, where the article explains at great length how open source in certain situations can work well. “Doing It Wrong” comes at it from a different direction.
- BSD Magaine is going free, meaning it’s a free download starting with the February issue. The site says “sign up for our newsletter and get every issue straight to your inbox” – the correct link is “Newsletter” on the upper right corner of the page. PDFs of the print issues are available too.
- The Open Source Business Resource is now publishing weekly articles in addition to their monthly issue. The inaugural article is “Avatar, Open Source and Humanity 2.0” by Stephen Huddart, and the second is “Do, Delegate, Defer” by the wonderfully-named Emma Jane Hogbin.
- Why you should use OpenGL and not DirectX: linked many places. It’s a good argument, which reminds me… anyone want to work on DRM for DragonFly? It could use some loving.
- A Python script that takes your picture and uploads it every time a merge (in Mercurial) fails. Someone make this work for Git, please. (via)
- Speaking of Git, here’s a way to get auto-complete of git commands and local/remote branches in bash.
- The latest @Play covers the new, developing roguelike Dungeon Crawl, part 1 of many. It’s listed as running on “all the BSDs”, though I don’t see it in pkgsrc. It is playable via telnet to other servers, though.
There isn’t an official release announcement as of this moment, but the next quarterly release of pkgsrc is out. This is 2009Q4, meaning development happened in the 4th quarter of 2009. I’ll start binary package builds for DragonFly tonight…
Joerg Sonnenberger is planning to remove a number of outdated or broken packages from pkgsrc, after the next quarterly release. Speak up if you’re actively using one of those packages slated for removal.
When is that next quarterly release, anyway? It was due the 7th, as far as I know…
This has been bouncing around other news outlets, but I’ll mention it here: There’s an out of data SpamAssassin rule that can potentially mark mail as spam because of the 2010 date. A mail to firstname.lastname@example.org describes the various fixes.
The step of ‘sa-update && /etc/rc.d/spamd restart’ seems to have fixed it for me. Incidentally, if you are using SpamAssassin, sa-update is a good tool to run on a regular basis.