How to use ABF to build rpm's

being interested in the use of ABF, I did some testing, I will attempt to share with you.

First you must know if you have an account already set up, the easiest way is to go here

if there is no “your_nick_personnal” folder, you are not registered

Either way you have to be registered, so do it here
or sign in if you have account

for demonstration my nick is jtsn, after validate you will receive a mail to validate your account.
it’s all you are now rgistered (you can verify you have a personnal repository.

Now you should have this

to be continued …


the second thing to do, is to have an account at github because at the beginning you will not work on original rpm mandriva but with a copy in your github account.
signup and confirm with the mail you will receive.

Now you have this :

as you can see, you have a button let’s get started

please press it and you know what are a fork, commit, pull request etc …

it is absolutely necessary for the future. It’s in english but it’s documented and with google … :slight_smile:

to be continued (maybe tomorow)


If you follow the tuto now you have something like this

Now back to ABF, 2 cases are, either Fedya joined to the group openmandriva or as in my example you’re not part of the group (make the request on the mailing list to be part of it)

when you are logging, click on your nickname (top right) and choose settings and builds settings

checks the case as shown. Now go to task monitoring

inquire as shown. then click 55099 (dos2unix by Fedya)

to be continued


after clicking on d08d6 you are now on github into the OpenMandrivaAssociation account

take some time to understand the content :smile:

the most important now is to fork the project, In the right corner there is a button “fork”, click on it

you have now a fork of the OpenMandrivaAssociation/dos2unix in your github account

to be continued (later)


in your account github “dos2unix” you see two files:

  • abf.yml

  • dos2unix.spec

these 2 files are essential and mandatory.
Before continuing there is a notion essential to understand is that the sources of the program (the contents of the archive dos2unix.tgz) are not in ghithub.
Only the building configuration files are stored in ghitub.
the source are stored into the site OpenMandriva Association File Store

All the users registered can upload files in file store. For each upload files, “file store” produces a unique product number (in fact it’s SHA1), which allows to avoid duplication and to easily find a file.

This is where comes in, abf.yml file. if you open it, in gihub you can read:

dos2unix-7.3.tar.gz: 3cc653ab32344446345e77b736d4578c80ef4d5c
Now with the indicated number do a search on “store file”

As you can see this is the progamme source for dos2unix


the second file (mandatory) is dos2unix.spec, open it in your ghitub. This is this file that will allow to build, step by step, the rpm. It’s just in fact a script with variables and commands which run defined macros.
But it is also the most complicated, not to understand but to build . Unfortunately I do not have the sufficient level to talk about the various options that may contain :innocent: (If someone wants to do it, he is free to explain the mystery of macros).

the rest is easy to understand.
as we just want to make an easy build we change anything. :slight_smile:

now we are ready to build (almost) :wink:

to be continued


Now go into our account ABF and …


to have this (with your nick :smile: ) note the owner (myself)



Push new build button

be carrefull here, click on red cross at “extra repositories”
choose your platform cooker and main and your architecture

say a prayer and press start build

build started

we are not alone !

finally we are not so bad :laughing:


Thank you to @luca, that helped me to understand some aspects of ABF


thanks to you :wink:


Hi @jojodu34, really a great guide. Maybe can be placed somewhere on the wiki.

I followed all steps, using null package instead of dos2unix, but at the end with the following screen

hi @mandian ,
your screenshot is abf during reload the buildlist. But your build is not good there is an error maybe a bad configuration of your build. I tried and null build without error. Your build configuration must be something like that for the project

and for the buid

hope that help you

built , not published

Thank you for your answer.

I did as you say except I set Visibility ‘Private’. Now I tried again and all works fine.

However ‘Build Lists’ gives the same screen for all user with Qupzilla. I used it because I had some problem with Firefox and I discovered that Disconnect plug-in makes ABF interface unusable.

so you can build null or not , I don’t see your build ( maybe because it’s private) ?

It is here, isn’t it?

Access violation to this page.

I can’t see because it’s private I think

but here I can see you have build null
congratulation :slight_smile:

Now it should be public, I hope.

Another question: I’d like to update meld form openmandriva repo but I can find only meld form joel repo

Is there a way to remove a published package (null in my case) from my personal repo?