Welcome to iraf.net Saturday, January 20 2018 @ 06:51 AM GMT

 Forum Index > Help Desk > Systems New Topic Post Reply
 Debian/Ubuntu package on the horizon
 12/09/2017 09:43AM (Read 363 times)  
Regular Member

Status: offline

Registered: 05/01/2014
Posts: 92
Dear all,

I prepared a Debian (Ubuntu) package, which I plan to upload in the next weeks. The source code repository can be found here:


The package is based on my merge-all branch of the IRAF github repository, with additionally the Remove-VO patches applied. Changes to the original 2.16.1 sources (and upstreams master branch) include:

1. Fixes to build and run IRAF on non-historic platforms

The original code produces errornous executables when build on Linux versions later than 2012, due to some funny hacks in the IRAF code. It also did not build from scratch, but required an already compiled IRAF version. This (and a number of other bugs, including the 13 year old crash on 32-bit systems) is fixed with the Debian package (and in the merge-all branch)

2. All known non-free code removed

Although IRAF 2.16.1 was claimed to be "free software", it containes source code that is not freely distributable; namely code copied from the book "Numerical Recipes in Fortran". This code is replaced with free equivalents in the Debian package.

3. VO package and vocl removed

The VO package, and the vocl shell heavily depend on a number of Java jars, where the creation from sources is undocumented. The package also uses outdated VO standards. A discussion with Mike Fitzpatrick resulted in his plan to move the VO functionality into an external package. Therefore, no attempt was put into getting these problems fixed, and the VO stuff was jut out.

The VOTable functionality, however, remains available.

4. Directory structure slightly adjusted

The IRAF root (iraf$) will be in /usr/lib/iraf/

After a discussion on a Debian mailing list, the architecture dependent subdirectories were removed, so there is no "bin.linux" or "bin.linux64", but just a "bin". They conflict with the Multi-arch approach of Debian and Ubuntu, and are generally not needed, even with 32-bit-only packages on 64-bit platforms.

Also, there is a common login script located in /etc/iraf/login.cl.

5. The "cl"/"ecl" scripts are rewritten as "/usr/bin/irafcl"

Both cl and ecl conflict with commonly used executables os the Common Lisp compiler. These conflicts are not allowed in Debian.

I took the opportunity to rewrite this script from scratch, so that it can now also be used to run own cl scripts with the "-f" option. It also removes the need for "mkiraf" to initialize the IRAF use.

6. The package is split into four sub-packages
  • iraf: Kernel and core components of the system
  • iraf-dev: Development environment (xc, mkpkg & friends)
  • iraf-noao: NOAO subpackages for reduction and analysis of optical data
  • iraf-nono-dev: Development files for the NOAO package

The split was done to allow installations that are stripped down to the needs on small systems, like Raspberry Pi.


For your testing convenience, I have created packages for Ubuntu 16.04 and put them into the following repository:


To test this on Ubuntu 16.04, do the following (untested, I don't have Ubuntu myself):

SH Formatted Code
$ sudo add-apt-repository ppa:olebole/astro-xenial
$ sudo apt-get update
$ sudo apt-get install iraf iraf-dev iraf-noao iraf-noao-dev xterm
$ irafcl -x

and you should get the IRAF prompt in an xterm window (xgterm is not ready yet).

Please keep in mind, that they are prereleases; so expect (and report!) problems. Please also discuss here all aspects of the packages, especially the ones that you don't like and that should be changed.

Best regards


Profile Email Website
 01/01/2018 11:22AM  
Regular Member

Status: offline

Registered: 05/01/2014
Posts: 92
Hi all,

as a New Years gift, the IRAF package was accepted into Debian and so will become part of the next Debian 10 (Buster) and the upcoming Ubuntu 18.04 LTS (Bionic Beaver). Additionally to the Intel 32 and 64 bit architectures on Linux, the ARM processor is supported now in 32 bit (f.e. Raspberry Pi), so you can expect that apt install iraf works with Raspbian in future. GNU Hurd is also supported (was part of the portability verification process).

The next step in porting is the ARM 64 bit architecture. For this, we would need someone with assembler language experience on arm64 (to port zsvjmp.s). If you want to help, please contact me.

As graphics display, currently xterm is used. Packaging Pyraf is complete, but the package is not accepted into our distribution (expected in the next days or so). The status xgterm (and ximtool) is still unclear. The problems with xgterm are:
  • The source of the HTML rendering is not free code (and must be removed in the Debian package). This however covers mainly the "gui" help option.
  • The code is based on Tcl version 7, which is from todays point of view is outdated and buggy. This is already solved in a private fork.
  • The code is based on a 25-year-old xterm, which is also outdated and buggy; probably even with security problems. This is hard to solve, since the changes to the original xterm are undocumented; this requires a lot of reverse engeneering, and digging in old xterm versions.
  • The code claims to be 32-bit only. It builds fine and runs on 64 bit, but more tests are needed. Same is true for ximtool, BTW.
  • The code is tainted with lots of unused, outdated stuff that makes the understanding of the code difficult.
  • There is no central repository for x11iraf.
I will contact the xterm maintainer (Thomas Dickey) to see if we can find a proper solution here. Until then, Pyraf (once it is accepted), or the original xterm are the way to go with IRAF.

Best regards


    Profile Email Website
    Content generated in: 0.12 seconds
    New Topic Post Reply

    Normal Topic Normal Topic
    Sticky Topic Sticky Topic
    Locked Topic Locked Topic
    New Post New Post
    Sticky Topic W/ New Post Sticky Topic W/ New Post
    Locked Topic W/ New Post Locked Topic W/ New Post
    View Anonymous Posts 
    Anonymous users can post 
    Filtered HTML Allowed 
    Censored Content 
    dog allergies remedies cialis 20 mg chilblain remedies

    Privacy Policy
    Terms of Use

    User Functions