35
I Use This!
Activity Not Available

News

Analyzed about 2 months ago. based on code collected about 2 months ago.
Posted about 16 years ago
I’ve been using nouveau 2D on my laptop for ages, and given how we don’t package the blob, maybe it’s time I write down how to install the nouveau driver. Note that while nouveau works wonderfully on all but one of the cards I’ve tried it on, it’s ... [More] still considered experimental. Also keep in mind that the Gallium 3D work is completely unsupported, so do not bug the nouveau devs about it. You can install everything except the nouveau kernel module using paludis, from exhereses, since we don’t have any kernel handling in Exherbo yet. There was some discussion of requirements a while ago, but nothing has materialized so far. First install x11-dri/libdrm with video_drivers: nouveau enabled. Second, install the kernel module: # Ensure that CONFIG_DRM is disabled in your kernel # Grab the libdrm sources: git clone git://anongit.freedesktop.org/git/mesa/drm cd drm/linux-core # Adjust LINUXDIR to the path to the kernel that you’re installing the nouveau module for make LINUXDIR=/usr/src/linux nouveau.o # Or use importare, for bonus points… sudo make LINUXDIR=/usr/src/linux install Third, install the 2D driver, x11-drivers/xf86-video-nouveau. Fourth, load the drm & nouveau modules automatically, and ensure that the binary nvidia module isn’t loaded. Enable the driver in xorg.conf. If you want to try 3D, build x11-dri/mesa with video_drivers: nouveau enabled. If you did everything right, glxinfo will show the following (and much more…): OpenGL vendor string: Tungsten Graphics, Inc. and nouveau OpenGL renderer string: Gallium 0.2 on NV4B OpenGL version string: 1.5 Mesa 7.5-devel Or, you can just enable the XRender backend in KWin, and wait for the Gallium 3D API to stabilize… [Less]
Posted about 16 years ago
In one of my recent blog posts a user commented that it would be great if we added our documentation to a git repository as that would make it much easier to contribute.  In fact all of our website has always been in git but it hasn't always been ... [More] public and we haven't been very good at describing the setup so I'll try to describe our current setup now.Our setupOur website is spread over two different repositories.The first repository is called www.git and contains what be considered the "main" website - that is our frontpage, the list of developers and links to various resources and the available documentation. The www repository isn't particularly interesting and doesn't get a lot of updates.The second repository is docs.git which all the real documentation available through the website such as Exheres-for-smarties, our FAQ and installation guide. This repository gets frequent commits as we update Exheres-for-smarties to reflect changes in the exheres-0 EAPI and correct or clarify existing documentation. This is the repository most patches should be made against.You can browse through both repositories using gitweb or clone the repositories using git clone git://git.exherbo.org/docs.git and git clone git://git.exherbo.org/www.git. Looking through the contents you should notice two things:1. We use Markdown for all our documentation. Markdown is a very easy format to describe paragraphs, headers, lists and so on in a format very close to normal text files.2. HTML generation is driven by Makefiles. These makefiles are run from a git hook and automatically generates the HTML code used on our website every time one of us pushes new content to the repositories. We only have one webserver at the moment so there's no syncing between nodes or any other complexities involved in this process.The Makefiles is also worth looking at if you don't have much experience with make as they use a couple tricks to generate the needed rules based on wildcards.Contributing documentationIf you want to help fix current documentation (typos, badly worded text and so on) you should follow the same instructions as if you were contributing a package. There's a few differences of course as you can ignore all the exheres specific stuff but the git configuration should follow that guide and we're going to want a git format-patch that we can apply directly to our repositories.For larger contributions you'll likely want to talk to me first (kloeri on irc.freenode.net or [email protected]) to make sure that we want to add your document(s) to the website and that we agree on the contents of it before spending a lot of time on writing. We're quite open to contributions but we also have fairly specific ideas on the direction we want for Exherbo now and the near future so it's important that we coordinate larger updates to the documentation and/or website.That said, we could use an update for Contributing to cover documentation as well - please let me know if you're interested in helping with this and I'll try to coordinate it.Update:I've just fixed the www.git Makefile to use maruku like docs.git always have. So you should check formatting using the dev-ruby/maruku package. [Less]
Posted about 16 years ago
We've had several requests for disk images for kvm, vmware and virtualbox over the past few months. This request was repeated at FOSDEM so I finally took some time out to make it happen and I hope that you'll enjoy it.The images allow you to easily ... [More] test Exherbo without touching your current system. In case you're using some other virtualization product you'll probably be able to use the kvm images as those are raw disk images.Keep in mind though that we don't provide any official support if you try Exherbo so you're expected to resolve problems yourself. [Less]
Posted about 16 years ago
In one of my recent blog posts I asked for volunteers to help with our documentation needs. Jonathan Dahan kindly offered his help and wrote a short FAQ, a document on some of our features as well as a basic installation guide.You can find all the ... [More] new documentation here.I'm still looking for help with documentation, be it new documentation or updates to existing documentation so please contact me if you have any ideas in this regard. [Less]
Posted about 16 years ago
YAML, like XML (but don’t say that around YAML fans, because they will insist that YAML is nothing like XML), is a faddish structured text format that, by virtue of its generality and abstractness, ends up being harder to work with even with a parser ... [More] already written than an appropriately designed one-off flat text format. Gems is Ruby’s way of dealing with distributions with lousy package managers and operating systems where there are no package managers, at the expense of sanity for the minority who could handle it better themselves. To be fair, they are open to this getting fixed; unfortunately, thanks to the immense suckiness of YAML, this is not straightforward. The metadata for every Gem hosted on RubyForge is available in a really huge YAML file, whose format, rather surprisingly, is properly documented. There’s a standard tool for hosting things this way too, so presumably other repositories could easily do the same thing. This isn’t particularly nice, but it’s a huge improvement over CPAN’s lack of anything consistently useful… Well, it would be a huge improvement, except the YAML file isn’t YAML. Let’s run it through libyaml’s example-reformatter: # Snip zillions of lines of output extlib-0.9.3: !ruby/object:Gem::Specification name: extlib version: !ruby/object:Gem::Version Scanner error: while scanning for the next token at line 343989, column 18 found character that cannot start any token at line 343989, column 18 Oops. Oh well. Let’s run it through yaml-cpp, nominee for the “biggest screw-up of a build system, even taking into account the cmake handicap” award: Error at line 343989, col 18: unknown token Mmm. So what’s going on there? 343974 extra-1.0: !ruby/object:Gem::Specification 343975 name: extra 343976 version: !ruby/object:Gem::Version 343977 version: "1.0" 343978 platform: ruby 343979 authors: 343980 - Matthew Harris 343981 autorequire: extra 343982 bindir: bin 343983 cert_chain: [] 343984 343985 date: 2006-05-10 11:00:00 -04:00 343986 default_executable: 343987 dependencies: [] 343988 343989 description: `ruby-extra' is a package full of simple/fun/useful methods that are added to the core classes and modules of Ruby. It is quite similar to Facets but is still minimal. 343990 email: [email protected] 343991 executables: [] 343992 343993 extensions: [] 343994 343995 extra_rdoc_files: [] 343996 343997 files: [] 343998 343999 has_rdoc: true 344000 homepage: http://ruby-extra.rubyforge.org 344001 post_install_message: 344002 rdoc_options: [] 344003 344004 require_paths: 344005 - lib 344006 required_ruby_version: !ruby/object:Gem::Requirement 344007 requirements: 344008 - - ">" 344009 - !ruby/object:Gem::Version 344010 version: 0.0.0 344011 version: 344012 required_rubygems_version: 344013 requirements: [] 344014 344015 rubyforge_project: ruby-extra 344016 rubygems_version: 1.3.1 344017 signing_key: 344018 specification_version: 1 344019 summary: Adds useful methods to built-in/core Ruby classes and modules. 344020 test_files: [] Looks like that backtick might be causing problems. According to the specification: The “@” (#40, at) and “`” (#60, grave accent) are reserved for future use. So libyaml and yaml-cpp are quite correct in barfing. Wonderful. Next step: what generates that file, and how can we get it fixed? Turns out the file is created by serialising a load of Gem::Specification objects. The serialisation is done by a library called Syck. Syck correctly escapes characters outside the safely printable range, but doesn’t care about @ or `. Patch time! But things are never that simple. Syck’s most recent release was in 2005. Even getting at the source is somewhat tricky. According to Syck’s homepage, the source is in CVS. I’ve deliberately purged all knowledge of CVS from my brain, but it looks like the most recent commit was in September 2005. According to this news item from November 2005, Syck is now in SVN instead. The link given 404s. Hunting around finds this, and from there this. After waiting for three and a half weeks for a git fetch (because Github is slooooooooooow), it seems that there’s at least some recent activity here. But this isn’t the Syck used by Ruby. Ruby SVN includes its own copy of Syck. A quick look at the svn log shows that: Various fixes in the Syck on Github aren’t in Ruby’s copy. Various fixes in Ruby’s copy, including at least one with security implications, aren’t fixed in the Syck on Github. Neither has fixed the problem we care about. So at this point I’m more or less giving up. The Gems YAML file isn’t YAML at all, and can only be parsed by Syck, which is at best badly maintained in at least two different places, with no coordination between the two. Brilliant. Posted in programming, ruby, Uncategorized Tagged: gems, ruby, syck, yaml [Less]
Posted about 16 years ago
Paludis 0.36.0 has been released: system packages are now treated as ‘used’ for –uninstall. Fetch related errors that can be caught up-front are now tested at –pretend time. Support for [.key=value] dependency specifications. Support for ... [More] configurable output managers. These are undocumented in this release and configuration formats may change without backwards compatibility; documentation and stability will be provided once we’ve ironed out any kinks. With the default configuration, message logs for all packages and build logs for failed packages are kept in /var/log/paludis/. SLOT and EAPI now show up as metadata keys, and are searchable. Posted in paludis releases Tagged: paludis [Less]
Posted about 16 years ago
taginfo is a useful audio tag reader that can be used in shell scripts. The bad thing is it can’t set tags so until now i had to use audiotag to set the tags in my shell scripts. Today I’ve written a simple tool called envtag while experimenting ... [More] with taglib’s c bindings. It’s a lot like taginfo and adds a -s option to set the tags from environment variables. The readme is here if you are interested. [Less]
Posted about 16 years ago
After some initial work, here’s how my sandbox replacement sydbox looks: Looks cool, don’t you think? Right now, it only works fine on amd64. There are some issues to fix on x86. I wish i had access to a non-hardened x86 box…
Posted about 16 years ago
I have been away from Gentoo for about 2 months now. Life is complicated and i want to devote my limited time to sydbox. That’s why i left gentoo/python for now. This is not a goodbye, just a break.
Posted about 16 years ago
Hello world!