Search Results: "ag"

15 November 2010

Raphaël Hertzog: Save disk space by excluding useless files with dpkg

Most packages contain files that you don t need: for example translations in languages that you don t understand, or documentation that you don t read. Wouldn t it be nice if you could get rid of them and save a few megabytes? Good news: since dpkg 1.15.8 you can! dpkg has two options --path-include=glob-pattern and --path-exclude=glob-pattern that control what files are installed or not. The pattern work the same than what you re used to on the shell (see the glob(7) manual page). Passing those options on the command-line would be impractical, so the best way to use them is to put them in a file in /etc/dpkg/dpkg.cfg.d/. Beware, the order of the options does matter: when a file matches several options, the last one makes the decision. A typical usage is to first exclude a directory and then to re-include parts of that directory that you want to keep. For example if you want to drop gettext translations and translated manual pages except French, you could put this in /etc/dpkg/dpkg.cfg.d/excludes:
# Drop locales except French
path-exclude=/usr/share/locale/*
path-include=/usr/share/locale/fr/*
path-include=/usr/share/locale/locale.alias
# Drop translated manual pages except French
path-exclude=/usr/share/man/*
path-include=/usr/share/man/man[1-9]/*
path-include=/usr/share/man/fr*/*
Note that the files will vanish progressively every time that a package is upgraded. If you want to save space immediately, you have to reinstall the packages present in your system. aptitude reinstall or apt-get --reinstall install might help. In theory with aptitude you can even do aptitude reinstall ~i but it tends to not work because one package is not available (either because it was installed manually or because the installed version has been superseded by a newer version on the mirror).
Found it useful? Click here to see how you can encourage me to provide more articles like this one.

8 comments Liked this article? Click here. My blog is Flattr-enabled.

Erich Schubert: Dear Lazyweb: tools for blog comments

Dear Lazyweb,
My blog currently does not have a comment function, since it is based on static HTML files (I just don't trust the average PHP blog software; I've seen to many issues and bad code there). So I'm considering ways to keep the comments separate from the actual blog; so that if they don't work, they'll still not affect my blog.
One option is to deploy a comment application e.g. on Google AppEngine. Another one would be to use SideWiki.
Have you used either of them? What are your experiences? Is there another simple option to add comments to my blog without going for one of those despised PHP applications - email me erich () debian org!
P.S. related to my previous post: planet.debian.org seems to use the "updated" timestamp where it should be using the "published" time AFAICT. Planet Gnome gets it right - do we need to upgrade the planet software on p.d.o?
Update: half a dozen people have pointed me to Disqus along with some other alternatives (Ikiwiki, building an own Django app, or using identi.ca). I guess I will give Disqus a try (although most just have "come across" it). Thank you, Lazyweb.

Alessio Treglia: Bits from the Debian Multimedia Maintainers

This brief announcement was published in the debian-devel-announce mailing list and I repeat it here for your information.
Hi! Since there has been a lot happening in the Debian Multimedia world during the Squeeze release, so we figured we should give you an update on that. Who are we? In the dark old ages, there were two teams involved in multimedia: the Debian Multimedia and Debian Multimedia Packages teams. Please note that neither of them is related to debian-multimedia.org (which is maintained by Christian Marillat, and is known to break current ffmpeg-based applications like mplayer and vlc in Debian Squeeze.). During late 2008, both teams were merged into one, the Debian Multimedia Maintainers team, to avoid effort fragmentation. Since then, there has been a lot of work done: Consumer Multimedia in Debian Consumer Multimedia is about playing and, well, consuming multimedia. Squeeze will feature: Squeeze will not feature: Producer Multimedia in Debian Producer multimedia is software for producing multimedia. Squeeze will
feature: End user applications: Platforms and technologies: Squeeze will not feature: Debian Multimedia Blend There is also an effort to start a Debian Multimedia Blend to give a better overview about what multimedia applications are available in Debian. There is a short list for a quick overview as well as a long package list separated in sections to give a more detailed overview (including translations, screenshots, popularity of package etc). You are invited to help improving the tasks either directly in SVN or by sending patches to Andreas Tille <tille@debian.org> or debian-multimedia@lists.debian.org (see below). Note that not all of the packages listed in the tasks pages are maintained by the Debian Multimedia team, since they are aimed at producing useful package sets instead of showing only our own packages. For those who want to squash some bugs in multimedia packages there is also the bugs page generated by the Blends tools, or our team bug page. Other activity The team has seen a lot of growth since the merger. Of the current 52 members of the Alioth team, 20 were added during 2009 and 18 in 2010, many of whom are involved in upstream development as well as the debian packaging. The number of packages has also grown, with 112 of the current 205 git repositories in our team area having its first commit during 2010. Where to reach us The Debian Multimedia Maintainers can be reached at pkg-multimedia-maintainers@lists.alioth.debian.org, should you have any questions. We have also decided to repurpose the old debian-multimedia@lists.debian.org address for user and more general discussion. We would like to invite everyone interested in multimedia to join us there. Interested developers/packagers can also join us at the first address. Some of the team members are also in the #debian-multimedia channel on OFTC.

Regards,

Alessio Treglia on behalf of the Debian Multimedia Maintainers

Manoj Srivastava: Manoj: Dear Lazyweb: How do you refresh or recreate your kvm virt periodically?

Dear Lazyweb, how do all y all using virts recreate the build machine setup periodically? I have tried and failed to get qemu-make-debian-root script work for me. Going through and redoing it from netinst ISO is an option but then I need debconf preseeding files, and I was wondering if there are some out there. And then there is the whole Oh, by the way, upgrade from Squeeze to Sid, please step. The less sexy alternative is going to the master copy and running a cron job to safe-upgrade each week, and re-creating any copy-on-write children. Would probably work, but I am betting there are less hackish solutions out there. First, some background. It has been an year since I interviewed for the job I currently hold. And nearly 10 months since I have been really active in Debian (apart from Debconf 10). Partly it was trying to perform well at the new job, partly it was getting permissions to work on Debian from my employer. Now that I think I have an handle on the job, and the process for getting permissions is coming to a positive end, I am looking towards getting my Debian processes and infrastructure back up to snuff. Before the interregnum, I used to have a UML machine setup to do builds. It was generated from scratch weekly using cron, and ran SELinux strict mode, and I used to have an automated ssh based script to build packages, and dump them on my box to test them. I had local git porcelain to do all this and tag releases, in a nice, effortless work flow. Now, the glory days of UML are long gone, and all the cool kids are using KVM. I have set up a kvm box, using a netinst ISO (like the majority of the HOWTO s say). I used madduck s old /etc/networking/interfaces set up to do networking using a public bridge (mostly because how cool his solution was, virsh can talk natively to a bridge for us now) and I have NFS, SELinux, ssh, and my remote build infrastructure all done, so I am ready to hop back into the fray once the lawyers actually ink the agreements. All I have to do is decide on how to refresh my build machines periodically. And I guess I should set up virsh, instead of having a shell alias around kvm. Just haven t gotten around to that.

Benjamin Mako Hill: Between the Bars

Almost a year ago, I blogged about Between the Bars -- a project that offers a blogging platform to the 1% of the United States population that is currently incarcerated. The way it works is pretty simple: prisoners send letters through the postal mail. We scan them and put them up on the web. Visitors can transcribe letters or leave comments which are mailed back to the authors. About a month ago, my collaborator Charlie DeTar and I finally finished planning and paperwork and opened the site to bloggers. Over the last few weeks, we've had a bunch of authors sign up. We now have a daily stream of blog posts going up on the site. Please visit the site. Leave comments. Transcribe posts. If you know of prisoners who might like to use the site, let them know. If you want postcard fliers to send to prisoners, let us know.

14 November 2010

Eugene V. Lyubimkin: cupt: 2.0.0~alpha2

The second alpha of Cupt2 is out at the same download place.

Changes since first alpha:
The library API is still a subject to change. If you care, please install the documentation package and mail me (see mail address in README) your thoughts and suggestions.

Marco d'Itri: Other people's ethics and tastes

In the last years I noticed a growing trend of people pushing for "new" rules about what is appropriate or not for single developers or for the project as a whole. In too many cases even just considering these ideas to be an obvious fact... I prefer to not give specific examples because these would divert the attention from the main topic and would be affected by my own biases. At this point I believe it is useful to remember that all ethical issues which are not explicitly covered by the Social Contract are just the developers' own opinions. It may even be a good idea, but other developers are not and should not be compelled to agree with it no matter how good or important you believe it is. You are entitled to having your own ethics and even ranting about it on Planet Debian, but I am entitled to not caring at all without this making me a worse Debian Developer. Let's try to be grown ups and not be excessively annoyed by other people's choices. This is why I want to convey this simple message to the people who keep preaching about what is proper for me or for Debian: please fuck you. If I want to receive lectures about what is right or wrong then I surely know where I can find a priest. For some reason, now I see fit to mention that I have an Amazon wishlist...

13 November 2010

Gregor Herrmann: RC bugs 2010/43 - 2010/45

if I'm not mistaken, more & more people are trying to hunt down RC bugs nice! here are my contributions during the last weeks: some remarks:

Anand Kumria: Hold the phone

So, I've had a Nokia 5800 for just on 18 months now. As I've discovered in the past few days, the device has 87Mb of internal memory. At the moment, after checking the device memory profile, 64Mb of that is "in use" by 'other' files. Nothing on the device, nor the OVI suite, can tell me what though. That means that various functions of the device are not working / working incorrectly. This morning, the phone started beeping telling me that 'it had run out of memory in order to receive messages'. So - if you have my alternative contact numbers; use them for now. I'm actually writing software possibly because I can see some of the source code to rectify this. Aside from this, and the fact that it runs Symbian, it was actually not a bad effort for a first-generation touch screen phone. I am waiting for a MeeGo device to become available (or be announced even). Otherwise I'll probably go for a Nexus Two or Nexus S or whatever it is called.

Josselin Mouette: cowbuilder and eatmydata

If you use pbuilder, you probably already use cowbuilder too, in order to save on chroot instantiation time. You also probably use ccache in order to save on compilation time. If you do that, the longest time taken by your build is, by far, the time needed to install the build-dependencies, because dpkg likes to fsync() every file it writes. It s a good thing it does that on your main system, but in a disposable chroot you really, really don t care what happens to it if the system crashes. Thanks to Mike, I discovered eatmydata, and tried it with cowbuilder. If you want to try it out, add this to your pbuilderrc file:
EXTRAPACKAGES="eatmydata"
if [ -z "$LD_PRELOAD" ]; then
  LD_PRELOAD=/usr/lib/libeatmydata/libeatmydata.so
else
  LD_PRELOAD="$LD_PRELOAD":/usr/lib/libeatmydata/libeatmydata.so
fi
export LD_PRELOAD
You will also need to install eatmydata in your chroot, unless you want to regenerate it from scratch. And now you can enjoy your super-fast builds.

Julien Blache: pommed v1.35: October 2010 MacBook Air

I ve just release pommed v1.35, adding support for the October 2010 MacBook Air machines. Kernel support for these machines has been submitted during the 2.6.37-rc cycle, so it will appear in 2.6.37 or 2.6.38 depending on maintainers, merge window and patch readiness. The machines have new keyboard assemblies (WellSpring IV and IVa) requiring new quirks in the HID layer, new trackpads, need sound & applesmc configurations of their own and the backlight module needs to know about them. So, make sure your kernel has all of that, otherwise your machine will be hard to use and pommed will not work at all. Update: #603395 filed against linux-2.6 with all the needed patches attached. It looks like we ll have all of this in Squeeze, thanks to our kernel team.

Ross Burton: Code Dump

I finally got around to clearing out my ~/Programming and publishing a number of the silly toy projects I've built up over the years that might be useful to someone, somewhere. A brief overview of what I've basically thrown over the wall to GitHub:
flickrest
A Python/Twisted library for the Flickr API. This was written for use in Postr, although I suspect now that I don't maintain Postr any more they have forked. Maybe now this is in Git we can merge any changes.
evo-known-contact
A small tool I wrote for someone years ago that takes an RFC2822-formatted email on stdin, extracts the sender, and sets the exit code depending on whether that email address is in the address book.
feednotify
Display notifications when a RSS feed is updated.
Zebu
A tool to manage Debian chroots using cowbuilder.
Tumblrss
Screen-scrape your Tumblr dashboard and generate a RSS feed. This has bitrotted but was very useful.
gupnp-scrobbler
Listen to announcements over UPnP of music being played and submit the tracks to Last.fm.
ephy-gupnp
Dynamically generate bookmarks from UPnP devices that expose a web interface. Probably doesn't work with recent Epiphany releases because I've switched to Chrome.
ephydeli
An action to add the current page to Delicious.com. Probably doesn't work with recent Epiphany releases because I've switched to Chrome and Pinboard.
eds-tools
Some tools I wrote when working on EDS such as a dummy addressbook backend and command-line access to the libebook API.
cdscrobbler
Submit the current CD (or an arbitrary MusicBrainz album ID) to Last.fm as if you'd just finished playing it.
Out of all of these hacks I only actively use flickrest and Zebu now, so I wouldn't be surprised if there is some serious bitrot in the others. Hopefully something here is useful to someone, somewhere though!

12 November 2010

Steve McIntyre: Using pulseaudio in a chroot

(Mainly for my own information, so I can find this again later!) I'm running Debian Squeeze on my Lenovo Thinkpad X200 laptop, using the amd64 version so that I can make the most of the 64-bit CPU. However, I also need a range of 32-bit apps too for now, typically proprietary rubbish like the Flash plug-in for Firefox^WIceweasel. So I set up a 32-bit chroot with a small Debian installation in there too. (Roll on multi-arch!) That's been working ok for a while, except that I couldn't get working audio in my browser. I didn't really pay much attention to that until recently: I wanted to watch some videos on YouTube and the sound mattered! After some digging, it became clear that Iceweasel inside the chroot just wasn't talking to the currently-running pulseaudio server outside the chroot. I had installed all the required libs in the chroot too, but still no joy. After some searching (thanks to the folks on the Archlinux wiki for this!) I've now been able to configure my chroot correctly. 2 bits needed: 1. Configure alsa in the chroot to use pulse by default by creating/editing /etc/asound.conf:
pcm.pulse  
    type pulse
 
ctl.pulse  
    type pulse
 
pcm.!default  
    type pulse
 
ctl.!default  
    type pulse
 
2. The dbus machine ID in the chroot needs to be the same as that of the main host, which it wasn't for me. That caused audio apps to report "connection refused" when I tested them. The machine ID is stored in /var/lib/dbus/machine-id. Either copy that file from the host system into the chroot, or add /var/lib/dbus as a bind-mount along with the usual suspects like /home and /tmp. Job done, I can watch movie trailers etc. with sound in my browser. Yay! :-)

Julien Viard de Galbert: Triage X Bugs of the Week 1 (TXBW1)

Here is my report for the first week, (actualy I m a little bit late, but friday loked like a better day for such reports) That s it about 880 bugs more to go ! The X Strike Force (still) needs you ! You can have a look at the X Strike Force Bug Closing Procedure and check XSF unstable bugs sorted by date.

Rog rio Brito: Packaging fonts for a Debian-based system

Seeing now that the situation regarding Free fonts is much better than in the past, I have started packaging some that are of high enough quality so that we can have it available on our systems (be it Debian or any of the good derivatives). In particular, I spent some time during the past few days packaging some that, I think, deserve to be mentioned: Well, that's it for now. Stay tuned for more to come.

Pietro Abate: dose3 distcheck

A while ago I wrote about the new distcheck tool upcoming in dose3. I've recently updated the proposal on the debian wiki to reflect recent changes in the yaml data structure. The idea was to remove redundant information, to make it easier to read and at the same time include enough details to make it easy to use from a script. I'll write down a small example to explain the format. A package can be broken because of a missing package or because of a conflict. For a missing package we'll have a stanza like this :
package: libgnuradio-dev
version: 3.2.2.dfsg-1
architecture: all
source: gnuradio (= 3.2.2.dfsg-1)
status: broken
reasons:
-
missing:
pkg:
package: libgruel0
version: 3.2.2.dfsg-1+b1
architecture: amd64
missingdep: libboost-thread1.40.0 (>= 1.40.0-1)
paths:
-
depchain:
-
package: libgnuradio-dev
version: 3.2.2.dfsg-1
architecture: all
depends: libgnuradio (= 3.2.2.dfsg-1)
-
package: libgnuradio
version: 3.2.2.dfsg-1
architecture: all
depends: libgnuradio-core0
-
package: libgnuradio-core0
version: 3.2.2.dfsg-1+b1
architecture: amd64
depends: libgruel0 (= 3.2.2.dfsg-1+b1)
The first part gives details about the package libgnuradio-dev, specifying its status, source and architecture. The second part is the reason of the problem. In this case it is a missing package that is essential to install libgnuradio-dev. missindep is the dependency that cannot be satisfied is the package libgruel0 , in this case: libboost-thread1.40.0 (>= 1.40.0-1). The paths component gives all possible depchains from the root package libgnuradio-dev to libgruel0 . Notice that we do not include the last node in the dependency chain to avoid a useless repetition. Of course there might be more then on path to reach libgruel0. Distcheck will unroll all of them. Because of the structure of debian dependencies usually there are not so many paths. The other possible cause of a problem is a conflict. Consider the following :
package: a
version: 1
status: broken
reasons:
-
conflict:
pkg1:
package: e
version: 1
pkg2:
package: f
version: 1
depchain1:
-
depchain:
-
package: a
version: 1
depends: b
-
package: b
version: 1
depends: e
depchain2:
-
depchain:
-
package: a
version: 1
depends: d
-
package: d
version: 1
depends: f
This is the general case of a deep conflict. I use an artificial example here instead of a concrete one since this case is not very common and I was not able to find one. To put everything in context, this is the example I've used (it's in cudf format, but I think you get the gist of it):
package: a
version: 1
depends: b, d

package: b
version: 1
depends: e

package: d
version: 1
depends: f

package: f
version: 1
conflicts: e

package: e
version: 1
conflicts: f
The first part of the distcheck report is as before with details about the broken package. Since this is a conflict, and all conflicts are binary, we give the two packages involved in the conflict first. Packages f and e are in conflict, but they are not direct dependency of package a . For this reason, we output the two paths that from a lead to f or e. All dependency chains for each conflict are together. Again, since there might be more than one way from a to reach the conflicting packages, we can have more then one depchain. Another important upcoming change is distcheck (to be implemented soon) it the ability to check if a package is in conflict with an Essential package. In the past edos-debcheck always check the installability of a package in the empty universe. This assumption is actually not true for debian as all essential packages should always be installed. For this reason, now distcheck will check the installability problem not in an empty universe, but in a universe with all essential packages installed. This check is not going to be fool proof though. Because of the semantic of essential packages, despite is not possible to remove a package toutcourt, an essential package can be replaced by a non essential package via the replace mechanism. For example, poking with this feature I noticed that the package upstart in sid replace sysinit and it is in conflict with it. This is perfectly fine as it gives a mechanism to upgrade and replace essential components of the system. At the same time this does not fit in the edos-debcheck philosophy of checking packages for installation problems in the empty universe (or in a universe with all essential packages installed). At the moment we are still thinking how to address this problem (the solution will be in the long term to add the replace semantic in distcheck), but for the moment we will just provide an option to check packages w.r.t essential packages conscious the this can lead to false positives. This work is of course done in collaboration with the mancoosi team in paris. Dose3 is still not ready for prime time. We are preparing debian packages and we plan to upload them in experimental in the near feature.

Alexander Reichle-Schmehl: Release Critical Bug report for Week 45

The bug webinterface of the Universal Debian Database currently knows about the following release critical bugs:
In Total:679
Affecting Squeeze:261
Squeeze only:56
Remaining to be fixed in Squeeze:205
Of these 205 bugs, the following tags are set:
Pending in Squeeze:17
Patched in Squeeze:41
Duplicates in Squeeze:23
Can be fixed in a security Update:12
Contrib or non-free in Squeeze:6
Otherwise fixed in Squeeze:21
Ignoring all the above (multiple tags possible), 126 bugs need to be fixed by Debian Contributors to get Debian 6.0 Squeeze released. However, with the view of the Release Managers, 165 need to be dealt with for the release to happen. Please see Interpreting the release critical bug statistics for an explanation of the different numbers.

Russell Coker: Play Machine Online Again

My SE Linux Play Machine is online again. It s been online for the last month and much of the month before due to Xen issues. Nothing really tricky to solve, but I was busy with other things. Sorry for any inconvenience.

Michal &#268;iha&#345;: Call for Wammu translations

I'm about to release new Wammu version in one or two weeks, so it's best time to look at the translations and improve them. There is not much new messages since last release, but only few translations were complete back then, so virtually any language (Czech and German are the only ones complete right now) needs improvements. To translate you can simply use web interface: https://l10n.cihar.com/projects/wammu/ If you want more information about translating, please visit our website: http://wammu.eu/contribute/translate/

Filed under: Wammu 0 comments Flattr this!

Dirk Eddelbuettel: RcppArmadillo 0.2.9

The new version 0.2.9 of RcppArmadillo has been uploaded to CRAN. The only change is an update of the included Armadillo template library to version 0.9.92 which Conrad released this week. RcppArmadillo makes it easy to write highly efficient and highly readable C++ code for linear algebra (based on Armadillo) in R extensions (using Rcpp for the interface). The short NEWS file extract follows, also containing Conrad's entry for 0.9.92::
0.2.9   2010-11-11
    o   Upgraded to Armadillo 0.9.92 "Wall Street Gangster":
         * Fixes for compilation issues under the Intel C++ compiler
         * Added matrix norms
More information is on the RcppArmadillo page. Questions, comments etc should go to the rcpp-devel mailing list off the R-Forge page.

Next.

Previous.