Small changes to RBuild syntax by meh. in design
November 06, 2011

So yeah, been a while since I last posted or worked on Distrø, but I started working on it again.

As first thing I fixed a bit the RBuild syntax and the database models to suck a bit less.

The only difference now in writing rbuilds is that you don’t have to use Package.define but just write it as you would.

Old syntax:

Package.define('package') {
	tags 'foo', 'bar'


New syntax:

name 'package'
tags 'foo', 'bar'


Way better, isn’t it?

packø can build packages for Arch Linux's pacman by meh. in random
June 20, 2011

Yep, it’s still under testing/development, but it works, you can build packages with packø and then install them through pacman.

In the last few days I improved a lot the packaging modules, which means soon you’ll be able to also create .deb and .rpm packages.

The dependency renaming can be done through distro transforms, transforms are a new feature in packø that lets you execute external code on the RBuild::Package, in this case renaming the packages to work with a distro’s package system (to be compatible with dependency name and such).

This feature, and the opposite (install deb/rpm/pkg with packø) is one of the feature I wanted since I stared writing packø. Installation still needs to be written, but at least this is a beginning.

To create a package for Arch Linux just pass the -e pkg options to packo build package and it will create a package that works with pacman, if you also want to fix dependencies and such, clone the transforms repo and add -t /path/to/the/arch/transform.rm to the build command.

Introducing the rc.conf by meh. in design
June 06, 2011

One of the most important parts in a distribution is its configurability and its ease of configuration.

In this subject Arch Linux is, in my opinion, one of the best. The way they unified all core configurations into the single rc.conf file is really elegant and simple, really son of the KISS way.

Distrø aims to take the good parts out of everything, and in this way create something good.

Being as usual tied to Ruby, the configuration couldn’t be anything but YAML, this is what I came out with, HIGHLY inspired by Arch’s rc.conf.

# /etc/rc.conf - Main Configuration for Distrø Linux

  # available languages can be listed with the `locale -a` command
  locale: en_US.UTF-8

  # set to "UTC" or "local", any other value will result in the hwclock untouched
  hwclock: local

  # timezones are found in /usr/share/zoneinfo
  timezone: Europe/Rome

  # keymaps are found in /usr/share/keymaps
  keymap: it

  # hostname of machine, should also be put in /etc/hosts
  hostname: distro

  # list of networks
    # example for an automatic (dhcp) wired network
    # automatic:
    #   interface: eth0
    #   ip:        dhcp

    # example of a wireless network with static ip and routing
    # wireless:
    #   interface: wlan0
    #   ip:
    #   gateway:
    #   essid:     wireless
    #   protection:
    #     type:       WPA2
    #     passphrase: 1234

    raid:  false # enables RAID
    btrfs: false # enables btrfs
    lvm:   false # enables LVM2

  # prefix with a - to disable it
  # prefix with a @ to start it up in the background
  daemons: [syslog-ng, crond]

If you have any ideas related to this, don’t hesitate to comment or come join us on IRC.

Loading tweets...