You are not logged in.
I'm a ruby programmer. The code I have distributed so far has been Ruby libraries for use in Ruby programs, so I have distributed them as Ruby Gems, Ruby's own package manager.
I'm writing a program now though that is a tool that web programmers can use (a JavaScript integration test tool). Most web programmers are unfamiliar with Ruby, having to install ruby gems and type "gem install mylib" would be foreign to them, while pacman or apt-get or whatever their OS level package manager is, would be familiar, be easier for them, and generally make more sense.
So my question is: How should I write this tool to make it distributable with pacman and apt-get and similar package managers?
Last edited by augustl (2010-03-26 18:07:05)
Offline
Good question. I have no idea about ruby nor gems but I have quite a lot experience with packaging. So this is some kind of general advice:
* Summary first: Make it as easy as possible. Packagers are not dumb but usually have a lot of other things to do.
* Provide some kind of transparent development: release schedules, change logs, information about updates (rss, mailinglist etc.)
* Technically you should provide some kind of mechanism to copy/install all needed files to a destinated location.
* Provide details information about dependencies (e.g. which versions of ruby do I need and what else)
Offline
Technically you should provide some kind of mechanism to copy/install all needed files to a destinated location.
Rubygems itself has a "install.rb" which lets you run "sudo ruby install.rb" to install it. Afaik it takes some arguments similar to the ./configure of C projects, where you can choose the prefix that defaults to /usr/local and so on. Is that what you had in mind?
* Provide details information about dependencies (e.g. which versions of ruby do I need and what else)
Haven't thought about that. My tool will most likely depend on other ruby libraries, that are distributed as gems. Perhaps I could vendor them. That doesn't seem right, though, potentially having two copies of the same code goes against the purpose of having a package manager.
In general, an arch package could perhaps depend on ruby gems itself, and use it to install my tool. I.e. http://aur.archlinux.org/packages/ruby1 … l/PKGBUILD seems to do this.
Last edited by augustl (2010-03-26 18:25:30)
Offline
You can look at the package standards wiki pages. There's a proto file in abs for rubygem-based packages as well.
[git] | [AURpkgs] | [arch-games]
Offline
This would be the job of packagekit, though I don't know much else besides the name about it.
Offline