2005-02-17
makensis on Ubuntu
On July 08 2004 I made a native Linux build of the makensis command from the Nullsoft Scriptable Install System (NSIS). NSIS is a popular programming tool which allows you to create installers (i.e. setup.exe) for Windows software by writing simple scripts. Since my computers run Linux I build Windows software using a GCC cross-compiler based on MinGW. So, I needed NSIS to run on Linux and create a Windows setup.exe. It turned out that NSIS can be run on Linux and I documented the process I used to build a Linux version of makensis.
Lately I have been migrating my computers from Fedora Core to Ubuntu Linux. So I have repackaged makensis as a Debian package for Ubuntu Linux along with a GPG signature. (Incidentally, does anyone know how to sign a Debian package so it can be verified? Never works and installing debsign-verify prevents everything from installing.)
Lintian complains about some things because of the way I had to package it. This version of makensis acts like a Windows program. As such, it wants its executable name to be makensis.exe and requires all of its config files to be in the same directory as makensis.exe. So, I wrote a /usr/bin/makensis shell script and placed the real files into /usr/lib/makensis.
I'm not sure if there's a way to make Lintian happy without modifying the makensis code. Then again, maybe those problems are solved in a newer version. I don't really want to update to a newer version right now because makensis often changes its script language between versions.
To make the package a little more user friendly I followed some of Lintian's advice. I created a makensis(1) man page by running
Lately I have been migrating my computers from Fedora Core to Ubuntu Linux. So I have repackaged makensis as a Debian package for Ubuntu Linux along with a GPG signature. (Incidentally, does anyone know how to sign a Debian package so it can be verified? Never works and installing debsign-verify prevents everything from installing.)
Lintian complains about some things because of the way I had to package it. This version of makensis acts like a Windows program. As such, it wants its executable name to be makensis.exe and requires all of its config files to be in the same directory as makensis.exe. So, I wrote a /usr/bin/makensis shell script and placed the real files into /usr/lib/makensis.
I'm not sure if there's a way to make Lintian happy without modifying the makensis code. Then again, maybe those problems are solved in a newer version. I don't really want to update to a newer version right now because makensis often changes its script language between versions.
To make the package a little more user friendly I followed some of Lintian's advice. I created a makensis(1) man page by running
halibut --man=makensis.1 usage.but
in the Docs/src directory. I tweaked the output from halibut according to the Man Page HOWTO. And I copied the HTML documentation into /usr/share/doc/nsis.Labels: linux