[Slackbuilds-users] Testing + some useful shell scripts
David Woodfall
dave at dawoodfall.net
Sat Nov 16 17:11:22 UTC 2013
On (15/11/13 08:53), Dave Woodfall <dave at dawoodfall.net> put forth the proposition:
>On (14/11/13 08:17), Dave Woodfall <dave at dawoodfall.net> put forth the proposition:
>>I found that with so many items in CHECKLIST it would be useful to put
>>together some kind of system, with the help of shell scripts where
>>possible. Doing it this way will require a certain amount of disk space
>>available. I tend to work in a chroot on a partition with ~ 100G free
>>and can keep all the libraries and other deps installed for a while.
>>
>>I hope the following is useful. This is how I've been testing. I tend to
>>set MAKEFLAGS=-j10 since I have four cores to play with.
>>
>>The scripts depend on directory structure to work out the category
>>being tested.
>>
>>I make a top level dir, 'slackbuilds.org', and place the scripts in it.
>>They will be called from subdirectories named after the category being
>>tested - audio, desktop etc.
>>
>>I wget the CHECKLIST file to the top dir.
>>
>>I then create the subdirectory for the category being tested - I'll use
>>audio for this example.
>>
>>I cd into audio and copy/paste the audio section from the
>>CHECKLIST file into a file named after the category with the
>>extension .lst - ie: audio.lst
>>
>>The first script mksqf.sh converts that into a sbopkg queue by stripping
>>out the slashes and category name, so I call the script from within the
>>audio subdir: ../mksqf.sh
>>
>>That will create the sbopkg queue to be copied to /var/lib/sbopkg/queues
>>
>>
>>Sbopkg is fired up, given a sync, the queue loaded and run. Now
>>comes the boring part ;-)
>>
>>I note down all the ones that fail and the reason, if known. If it's a
>>problem with deps it can usually be found from the output. After noted,
>>I press y and move on to the next.
>>
>>At the end there will hopefully have a list of fails. I go through
>>each one in sbopkg and note down the deps (copy/pasting to/from
>>dialog is done
>>with shist + mouse).
>>
>>At the end of this I have a list of deps, in reverse order.
>>
>>This can be reversed using 'tac' into an sqf: 'tac deps > audio-deps.sqf'
>>
>>It may need adjusting manually somewhat. I copy to sbopkg's queue dir and
>>load up in sbopkg. Then it's a case of running through it the same as I
>>did with the first list and making notes.
>>
>>It may need fixing up a bit and run through a few times to get all deps
>>built.
>>
>>After all the deps are built that possibly will build, it's time to fire up
>>the original audio.sqf queue again and see if the packages that failed the
>>first time will now install.
>>
>>
>>Next, I unset MAKEFLAGS and see if any of the remaining ones will build.
>>
>>
>>When it looks like nothing else will compile I can get a list of built
>>and failed using builds.sh: ../builds.sh. This checks the audio.sqf
>>against the installed packages, and will create built-audio and
>>failed-audio.
>>
>>I run the last file ../deps.sh and it will check the original 'dep' file
>>against the installed list in /var/log/packages and create a deps-audio file.
>>
>>
>>I use these three files + the notes to send to the mailing list
>>
>>I hope this is of use and I hope that it helps speed the process up a bit.
>>I'm sure other people have their own methods so feel free to share in the
>>thread.
>>
>>
>>mksqf.sh
>>http://www.r0t.co.uk/paste/p/qb9klg41.html
>>
>>builds.sh
>>http://www.r0t.co.uk/paste/p/ZNPRaN87.html
>>
>>deps.sh
>>http://www.r0t.co.uk/paste/p/3ILxIQ77.html
>
>A slightly different way of doing it and new scripts:
>
>getdeps.sh:
>Recursively read apps from the .lst file and create two files:
>
>A queue file for ALL the apps AND dependencies and copies it to the
>sbopkg queue directory.
>
>A $CATEGORY.deps file which lists only the dendencies for info.
>
>
>After loading and running in sbopkg as before we can check for which
>installed correctly:
>
>built.sh:
>Checks installed and creates $CATEGORY.built and $CATEGORY.failed
>files for info.
>
>built-deps.sh:
>Checks installed deps anc creates $CATEGORY-deps.built and
>$Category-deps.failed
>
>That should give enough info to add notes on why things failed.
Built-deps.sh updated and a bug fixed that cause the output to have
wrong category
D.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: built-deps.sh
Type: application/x-sh
Size: 1368 bytes
Desc: not available
URL: <http://lists.slackbuilds.org/pipermail/slackbuilds-users/attachments/20131116/44aff018/attachment-0001.sh>
More information about the SlackBuilds-users
mailing list