summaryrefslogtreecommitdiffstats
path: root/source/d/slacktrack/slacktrack-project/docs/RELEASE_NOTES
diff options
context:
space:
mode:
Diffstat (limited to 'source/d/slacktrack/slacktrack-project/docs/RELEASE_NOTES')
-rw-r--r--source/d/slacktrack/slacktrack-project/docs/RELEASE_NOTES137
1 files changed, 137 insertions, 0 deletions
diff --git a/source/d/slacktrack/slacktrack-project/docs/RELEASE_NOTES b/source/d/slacktrack/slacktrack-project/docs/RELEASE_NOTES
new file mode 100644
index 000000000..02876d898
--- /dev/null
+++ b/source/d/slacktrack/slacktrack-project/docs/RELEASE_NOTES
@@ -0,0 +1,137 @@
+slacktrack version 2.00
+Release notes: 17th September 2008
+===================================
+
+Highlights:
+-----------
+
+slacktrack no longer uses 'installwatch' to track the installation
+process -- what was previously called 'altertrack' has been turned
+into 'slacktrack'.
+
+slacktrack's method of tracking package installations is to
+have the package installed directly onto the host's filesystem.
+
+This is for a number of reasons:
+
+ 1. installwatch is ill maintained and was failing to work correctly
+ with new versions of glibc and GNU 'coreutils'.
+
+ 2. installwatch could not track statically compiled binaries,
+ meaning that if a statically compiled binary was used to
+ manipulate the filesystem in any way, these manipulations would
+ not be reflected in your package contents.
+
+ 3. With virtualisation -- QEMU, VMWare, SUN's VirtualBox -- being so
+ readily available, and allowing filesystem 'snapshots', it's
+ easier and easier to spin up a development operating system and
+ build and install directly onto the root filesystem, thus getting
+ a complete package.
+
+Upgrading your build scripts from slacktrack version 1.x
+--------------------------------------------------------
+
+1. slacktrack internal variables
+ -----------------------------
+
+ $SLACKTRACKFAKEROOT
+
+ This variable points to the location of the package's
+ root filesystem (usually /var/tmp/<someplace>).
+ Using slacktrack 1.x, you could perform operations on the
+ package contents from your build script *during* the build
+ process.
+
+ In slacktrack 2.x, the package root directory is only populated
+ after the build script has finished.
+
+ However, the variable can still be used from a post-build
+ script.
+ You can use slacktrack's '-R' operator to specify a post-build
+ script. In the example below, the post build script is
+ called 'postbuildfixes.sh' and resides in the same directory
+ as the 'trackbuild' script.
+
+ ** Note: Ensure that your post-build script is chmod 755. **
+
+# Launch the build script:
+altertrack \
+ --notidy \
+ --showdeps \
+ -T $TMP \
+ -l $CWD/build.$ARCH.log \
+ -R $CWD/postbuildfixes.sh \
+ -b $PKGSTORE \
+ -zIKASmg \
+ -Ocp $PKGNAM-$PKGVERSION-$ARCH-$BUILD.tgz ./linuxdoc-tools.build
+
+ The contents of this post build script can be something such as:
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+#!/bin/bash
+
+# Once altertrack has determined what the contents of the package
+# should be, it copies them into $SLACKTRACKFAKEROOT
+# From here we can make modifications to the package's contents
+# immediately prior to the invocation of makepkg: altertrack will
+# do nothing else with the contents of the package after the execution
+# of this script.
+
+# If you modify anything here, be careful *not* to include the full
+# path name - only use relative paths (ie rm usr/bin/foo *not* rm /usr/bin/foo).
+
+# Enter the package's contents:
+cd $SLACKTRACKFAKEROOT
+
+# OpenSP creates this symlink; we delete it.
+if [ -L usr/share/doc ]; then
+ rm -f usr/share/doc
+fi
+
+# Incase you had CUPS running:
+rm -rf etc/cups etc/printcap
+# crond:
+rm -rf var/spool/cron
+rmdir var/spool
+
+# perllocal.pod files don't belong in packages.
+# SGMLSPL creates this:
+find . -name perllocal.pod -print0 | xargs -0 rm -f
+
+# Some doc dirs have attracted setuid.
+# We don't need setuid for anything in this package:
+chmod -R a-s .
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+
+2. Build script changes
+ --------------------
+
+ If your build scripts were more sophisticated and took advantage of
+ the way installwatch used a pseudo root filesystem, please be acutely
+ aware that your build script now runs on the host's live operating system;
+ so you need to be more careful. However, as suggested -- run only on development
+ installations.
+
+3. Additional files creeping into the packages
+ -------------------------------------------
+
+ Due to some daemons making changes to their config files whilst your build
+ is in flight, you may find some additional files have crept into your package
+ which you were not expecting.
+
+ You may wish to turn off the following daemons before starting a build:
+ CUPS
+ crond
+ sendmail
+ ypbind (NIS)
+ ypserv (NIS)
+
+ If you look at the example post build script above, you can see that it
+ removes some CUPS and crond residue.
+ Whilst it would be possible to remove these paths from slacktrack's scan
+ locations, some users may wish their package to place data in those directories;
+ so you need to make your own adjustments and checks for this.
+
+
+END.