From 646a5c1cbfd95873950a87b5f75d52073a967023 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Mon, 28 May 2018 19:12:29 +0000 Subject: Mon May 28 19:12:29 UTC 2018 a/pkgtools-15.0-noarch-13.txz: Rebuilt. installpkg: default line length for --terselength is the number of columns. removepkg: added --terse mode. upgradepkg: default line length for --terselength is the number of columns. upgradepkg: accept -option in addition to --option. ap/vim-8.1.0026-x86_64-1.txz: Upgraded. d/bison-3.0.5-x86_64-1.txz: Upgraded. e/emacs-26.1-x86_64-1.txz: Upgraded. kde/kopete-4.14.3-x86_64-8.txz: Rebuilt. Recompiled against libidn-1.35. n/conntrack-tools-1.4.5-x86_64-1.txz: Upgraded. n/libnetfilter_conntrack-1.0.7-x86_64-1.txz: Upgraded. n/libnftnl-1.1.0-x86_64-1.txz: Upgraded. n/links-2.16-x86_64-2.txz: Rebuilt. Rebuilt to enable X driver for -g mode. n/lynx-2.8.9dev.19-x86_64-1.txz: Upgraded. n/nftables-0.8.5-x86_64-1.txz: Upgraded. n/p11-kit-0.23.11-x86_64-1.txz: Upgraded. n/ulogd-2.0.7-x86_64-1.txz: Upgraded. n/whois-5.3.1-x86_64-1.txz: Upgraded. xap/network-manager-applet-1.8.12-x86_64-1.txz: Upgraded. xap/vim-gvim-8.1.0026-x86_64-1.txz: Upgraded. --- source/d/slacktrack/slacktrack-project/docs/FAQ | 234 ++++++++++++++++++++++++ 1 file changed, 234 insertions(+) create mode 100644 source/d/slacktrack/slacktrack-project/docs/FAQ (limited to 'source/d/slacktrack/slacktrack-project/docs/FAQ') diff --git a/source/d/slacktrack/slacktrack-project/docs/FAQ b/source/d/slacktrack/slacktrack-project/docs/FAQ new file mode 100644 index 000000000..98ea7d7cd --- /dev/null +++ b/source/d/slacktrack/slacktrack-project/docs/FAQ @@ -0,0 +1,234 @@ +################################################################ +# Document: FAQ +# Purpose : Frequently asked questions +# Author..: Stuart Winter +################################################################ +# It's small at the moment but if I get any repeated +# or potentially repeated questions then they'll be added +# here. +################################################################ + + +Questions +--------- + +1. My build script places files into /home, but these are not + included in the package created by slacktrack. Why? + +2. Do I really have to remove the existing package before + building a new version with slacktrack ? + +3. I want to build a package of DVD libraries and players + but the players depend on the libraries being installed + first. How can I build such a package with slacktrack? + +4. I find that when building packages with slacktrack, a number of + files are appearing in the package that do not belong there. Why? + +5. What does slacktrack's --touch-filesystem-first option do? + why would I need it? + +6. I can't compile Perl CPAN modules via perl -MCPAN -eshell + Why ? + +7. I'm using Slackware v13 (or greater) and I want to create + package files using one of the other compression methods. + How can I do that? + +8. After completing a build using slacktrack, I see + "You have mail in /var/mail/root" + but I have no new email. + +Answers +------- + +Q1. My build script places files into /home, but these are not + included in the package created by slacktrack. Why? + +A1. slacktrack (by design and thus default) excludes /home + from being included within the package. The reason for this + that typically no package shipped should ever contain + data within /home. + +Q2. Do I really have to remove the existing package before + building a new version with slacktrack ? + +A. No (see my zlib example), but in the majority of cases, + I'd advise that you do. + + The reason that my example trackbuild scripts remove the + existing package first (or bomb out) is because some + package installations (makefiles) will not install a + new file onto the filesystem if it's identical to the + one in the source archive. This means that slacktrack + will not notice any change in the before and after picture + of the filesystem; thus your resulting package may + be missing some files. + + The way to work around this is: + 1. removepkg the package prior to building; + 2. Use the --touch-filesystem-first option; + But this option is not recommended since it destroys the + time stamp information on your system. + This option should only be used by experts using a disposable + OS installation. + Please see FAQ question 5. + + It's worth noting that Slackware's 'removepkg' program + won't always remove all files (especially config files + which are packaged as /etc/file.new and are renamed to + /etc/file by install/doinst.sh). + + It shouldn't be too much of an issue though. If it's a + brand new piece of software that you are building from + scratch then installwatch will pick up all new files. + If you're rebuilding a Slackware package using a + .build script from the source tree then it's worth + browsing the package's contents ( # cat /var/log/packages/lftp-* + for example ), then running 'removepkg' and looking at its + output. If there are any remaining config files then either + move them to a safe place or delete them before + building your package with slacktrack. + + In general though you shouldn't have any problems. + + +Q3. I want to build a package of DVD libraries and players + but the players depend on the libraries being installed + first. How can I build such a package with slacktrack? + +A. There are two ways. + 1. You either write build scripts for each individual + library and create packages for each. Once the packages + have been built, you install them prior to building + the player. + You then unarchive all packages into a temporary + directory and run makepkg over it. + 2. Use slacktrack and build them all one after another as + you no doubt have originally attempted. + + I have included example build scripts for a DVD library + package within slacktrack's source archive. + + +Q4. I find that when building packages with slacktrack, a number of + files are appearing in the package that do not belong there. Why? + +A. The way that slacktrack works is that it: + [a] takes a snapshot of the files and directories on the file system; + [b] runs the build script + [c] makes another snapshot of the files & dirs on the file system; + [d] compares the two snapshots and determines the differences + [e] the differences between the two snapshots constitute the package + contents + + The problem with this approach is that other running programs can + make modifications to files & dirs on the file system during the + build/compilation process. slacktrack will consider these modifications + to be part of the package -- slacktrack does not directly track what the + build process does: it *only* compares the differences between the + file system snapshots. + + Major culprits for this are: + cups + crond (running cron jobs) + Window Managers and X + + When using slacktrack you are advised to reduce the number of + processes to the minimum, and try to ensure that there are no processes + running which will modify the file system during the build process. + + If you cannot do this then you there are a number of work arounds: + [a] Using the -x (--exclude) operator. + With this operator you can specify a list of + paths to exclude from the file system snapshots, thus excluding them + from the resulting package. + [b] Use the -R (--run-after) operator. + With this operator you can specify a command that will be run after + slacktrack has compiled the package contents. + You may wish to run 'mc' (Midnight Commander) or perhaps just a 'bash' + shell; this will enable you to inspect and modify the contents of the + package prior to it being turned into a package file. + +Q5. What does slacktrack's --touch-filesystem-first option do? + why would I need it? + + This option touches all files this pre-set location on the host's + filesystem: + /opt /bin /boot /dev /etc /install /lib /sbin /usr /var + + It *excludes* by default '/lib/udev/devices' since this contains + live device data that doesn't take kindly to being touched. + You may see errors from 'touch' about certain binaries, including + /sbin/vol_id because this is a symlink into /lib/udev/devices. + + This will touch every file within those directories, destoying all the + timestamp information. + This is intended to be used on a throwaway development installation + that's reinstalled daily or more often. Builds will often leave + residue strewn about, so don't use this on your "good" machine and + think you're managing it properly. :-) + + The reason behind this is that if you run slacktrack and your build + partially fails, then it will leave some data on the filesystem. + You then fix the problem and re-try: this time the build may succeed. + However, if the original data on the filesystem from the first + part-failed build has *not* changed (ie if it was some static data that + was copied with cp -a (preserved time stamp & ownership)) between + the first part-failed build and second successful build, slacktrack + will miss this data from the final package. + + This option updates the file stamps contained within standard package + directories, therefore allowing slacktrack to detect changes + (even if the data contains an *old* time stamp from 1982, it will still + detect the difference). + +***** This is an expert option: Please don't use this option unless you do + not care about your operating system installation ***** + + +Q6. I can't compile Perl CPAN modules via perl -MCPAN -eshell + Why ? + +A. If you get this message: + Unable to get Terminal Size. The TIOCGWINSZ ioctl didn't work. + The COLUMNS and LINES environment variables didn't work. + The resize program didn't work. + + the answer is to tell slacktrack to turn off logging. + eg: + # slacktrack -Qnp foo-1.0-i486-2.tgz ./foo.build + +Q7. I'm using Slackware v13 (or greater) and I want to create + package files using one of the other compression methods. + How can I do that? + +A. It is 'makepkg' from the 'pkgtools' package which handles + the compression, based upon the extension of the package + file name supplied to it. + + The compression methods & file names are: + + .tgz - Gzip + .tbz - Bzip2 + .tlz - LZMA + .txz - XZ + + + Examples: + + # slacktrack -Qp foo-1.0-i486-1.tgz ./foo.build + # slacktrack -Qp foo-1.0-i486-1.tbz ./foo.build + # slacktrack -Qp foo-1.0-i486-1.tlz ./foo.build + # slacktrack -Qp foo-1.0-i486-1.txz ./foo.build + + +Q8. After completing a build using slacktrack, I see + "You have mail in /var/mail/root" + but I have no new email. + +A. This is because you used the '--touch-filesystem-first' or + '--touch-filesystem-faster' option at build time. + This option has touched all of the files on the file system, which + refreshes their date stamp. The mail notification system works only on + the date stamp of the mail spools, hence it triggers the message. -- cgit v1.2.3