newsGNU fdisk - News: GNU Fdisk rewritten from scratch!

Latest News
GNU Fdisk 2.0.0a1 released! posted by it_kristian_81, Sun 04 Dec 2011 11:25:34 PM UTC
GNU Fdisk rewritten from scratch! posted by it_kristian_81, Mon 10 Oct 2011 09:19:13 PM UTC
GNU Fdisk 1.3.0a released posted by it_kristian_81, Sun 18 Sep 2011 06:30:18 PM UTC
GNU Fdisk 1.2.5 released posted by it_kristian_81, Sun 15 May 2011 05:29:12 PM UTC
GNU Fdisk 1.2.4 released posted by it_kristian_81, Sun 10 Jan 2010 02:30:45 PM UTC

GNU Fdisk rewritten from scratch!

Item posted by Christian <it_kristian_81> on Mon 10 Oct 2011 09:19:13 PM UTC.

We are happy to announce the release of GNU fdisk 2.0.0 alpha.


In this new release we have made many improvements to fdisk.
The source code was rewritten from scratch with a new modular design that allows you to easily write new user interfaces and device backends.

The most important feature of this new implementation is that user interfaces are implemented using Guile.
GNU fdisk includes a Scheme interpreter (using libguile), and exports a set of symbols to manage devices, disklabels and partitions.

We can implement a new interface and use gnufdisk's functionality with it. With the help of FFI we can also implement interfaces in GTK, DirectFB, ncurses etc.
And the most important point is that we must only communicate with the user, everything else is handled in the core.

The core is written in C and is composed of 5 libraries and one executable:

  • libgnufdisk-common A generic library;


  • libgnufdisk-debug A library for managing information/warning messages;

  • libgnufdisk-exception A library to raise and handle exceptions;

  • libgnufdisk-device A library that provides a common interface to devices, and manages the loading of modules.

  • libgnufdisk-devicemanager A library that manages devices and errors, communicating through the user interface.

  • libgnufdisk-userinterface A library that includes a scheme interpreter and forward requests to `gnufdisk-devicemanager'.

  • gnufdisk Executable that invokes the selected user interface.

The management operations are in separate modules. Modules are loaded dynamically when a device is created in software.

Each user interface can handle more than one device (using Guile variables), each one associated with a different module. The core is completely reentrant and there are no conflicts between devices (even in multi-threaded mode).

Unfortunately we do not have a module that manages the operations. We will start working on it now and will release it as soon as possible.
We do not have a user interface, but you can start gnufdisk in shell mode using command:

        gnufdisk shell ARGUMENT...

This is the most powerful way to use gnufdisk.


Gzipped tarballs are available from:

and its mirror sites. SHA1 sums may be found there as well.

The web site of GNU fdisk is at:


With this new release we need much help. We want to complete the package providing basic user interfaces (fdisk, cfdisk) and a module for managing operations.

We need help for documentation. We started a draft, but there is much to be done.

We need people who try to install the package and notify us of any problems.

Leslie P. Polzer <>
Christian Brunello <>

GNU fdisk Maintainer's


Back to the top

Powered by Savane 3.13-ee12.
Corresponding source code