Commit graph

884 commits

Author SHA1 Message Date
slakmagik
68c8b94414 rename sbopkg.conf.new; tweak SlackBuild
If we keep the Id keyword in sbopkg's config file, users having their
'sbopkg.conf' Id'ed as 'sbopkg.conf.new' can cause confusion, as seen on
LQ. So call it 'sbopkg.conf' in revision control and append '.new' when
creating the package.
2011-03-10 04:17:43 +00:00
slakmagik
c4836b950a modify repository selection
This is a cluster of changes that fell out from adding the new repo
  file earlier.

  * select_repository(): changed the function to create a larger box
    with a different title and text and reordered menu items, both
    vertically (via the previously changed repos.d files) and
    horizontally (via reordering the item text). Also fixed a bug
    discovered while testing, which involves changing the repo even when
    directory creation is aborted. Now we store OLD_* vars and restore
    them and re-run set_repo_vars() on abort.

  * utilities_menu(): equivalent reordering.

  * dir_init(): changed to produce hopefully better output rather than
    wrongly implying that a directory that does exist doesn't. Also some
    ad hackery for git. I'm tempted to throw the whole function out -
    some programs might ask about mucking with a users $HOME but most
    don't ask to create necessary system files.

  * main: modified how we acquire REPO_NAME and REPO_BRANCH when
    CUSTOMVER is set.

  * NEWS: caught up with this and other recent changes.
2011-03-10 04:17:36 +00:00
slakmagik
5ee8266b57 add 60-SBo-current.repo; revise repo/renames files
Adding ponce's branch/fork thing of SBo for -current - it's supported as
far as including this to make it easier for people to use but no
further. Also got rid of most of the comments in the other files - there
are no user-serviceable parts inside and the filenames and descriptions
describe the files well enough, so this just keeps the key line. We'll
be linking the README in the repos.d directory so we can just say 'read
the README', especially as I recently changed the filename of the
README.
2011-03-10 04:17:28 +00:00
slakmagik
7905937465 add SBOPKG_DEBUG
Set this to anything and avoid the stupid sucking side effects of
redirecting stderr.

Also abbreviated a comment right above what I added - it's not first run
but every run and the end of functions pretty much implies the start of
main.
2011-03-10 04:17:22 +00:00
slakmagik
d91fc3842a rename(number) the local and sb64 repo files
/etc/sbopkg/repos.d/50-sb64.repo -> /etc/sbopkg/repos.d/70-sb64.repo
/etc/sbopkg/repos.d/60-local.repo -> /etc/sbopkg/repos.d/50-local.repo

This places the unsupported repo after the local repo and makes ?0 room
for Ponce's (also unsupported) repo.
2011-03-10 04:17:15 +00:00
slakmagik
cf9de08744 whitespace: split lines >78 cols
Some more of this snuck back in or never got split in the first place -
this is just whitespace/escaped newline stuff except I did create a
local VER variable in get_source_names() to shorten a line with several
references to VERSION.
2011-03-10 04:17:09 +00:00
slakmagik
8b3d568e11 revise most of doc/*
- KNOWN_ISSUES: rephrase the dialog navigation section in a way that
    should be more suitable for the forthcoming (when it's ready)
    Slackware release which will have an updated dialog. Rephrase the
    certcheck section to discuss the prompt behavior and to point out
    how the 'openssl-certs' package can help with, but not eliminate,
    the issue.

  - NEWS: add an item summarizing these document revisions and add the
    branch ChangeLog sections.

    When we started what became 0.30.0, we created an 0.27.0 stable
    branch and the changes in that branch were only included in that
    branch's ChangeLog.txt. Ditto the 0.33.1 security branch. But all
    releases should be documented in the NEWS file, so now they are.

  - README: add a block that describes all the other doc/ files, add a
    note about GPG checking, change the name of the HELP section to
    GETTING HELP.

    Some of the doc files are mentioned in the CONTRIBUTING section but
    a comprehensive list with descriptions in the GETTING HELP section
    is more, um, helpful.

  - README-*: tweak the wording, mostly to reflect the last commit's
    name change, and reorder some text to put the emphasis on the files
    rather than the directory. Also make a couple of other tweaks.

  - THANKS: add a note about making corrections and slightly reorder the
    text around that change for better flow and emphasis.
2011-03-08 03:38:19 +00:00
slakmagik
b642be5cf3 rename the *.d files, stripping the .d
The .d is treated as an extension which triggers unwanted syntax
highlighting in vim - there are multiple ways around this but the .d
extension isn't necessary (queuefiles are also kept in a directory but
it isn't 'README-queuefiles.d' and the READMEs discuss files and formats
as much as directories) and removing it is the simplest, most effective,
most general change.
2011-03-08 03:37:59 +00:00
slakmagik
eab30f62f4 fix anchoring bug in selection_state()
If foo and foobar were in a list and foobar was deselected, it would get
switched back on because foo would equally address foobar. So
s/$LINE/^$LINE /
2011-03-07 11:44:16 +00:00
slakmagik
bdcb49f2a3 allow -Rp combo to page through all READMEs
This modifies list_packages() to call view_readmes() if VIEW_READMES is
set (and that variable was changed from PREVIEW_READMES). And it
documents it in the manual, help output, and NEWS.
2011-03-07 01:27:10 +00:00
slakmagik
d79029a5c2 document gist of changes from r866-current 2011-03-07 01:27:02 +00:00
slakmagik
105e182449 modify view_queue() to use selection_state()
Traded a block of code for the function call and removed references to
the now unused WORKINGQUEUE.
2011-03-07 01:26:56 +00:00
slakmagik
511ef6f26f make remove_files() actually invert sel., etc.
- remove_files(): this had an 'Invert all' button which didn't
    entirely work, as it simply toggled all on/off rather than
    reflecting selection state (it was more 'Select/Deselect All'). By
    changing the order of the buttons and using selection_state(), it
    now can now 'Invert Sel'ections. The button order had to be juggled
    because dialog only outputs a list on 0/3. So now it asks to delete
    and defaults to Cancel with '--defaultno' rather than asking to keep
    and defaulting to OK. Also cleaned up the dialog invocation in
    general and cleaned up the sed/redirect creation of
    $FILES_CHECKLIST. Also changed the 'ERROR' title for not finding
    anything to 'NOTICE' since it's not an error to, e.g., not have any
    obsolete sources.
  - reverse_choices(): deleted since it was no longer used.
  - remove_obsolete_sources(), browse_categories(): similar sed cleanups
    as above.
  - selection_state(): clarified comments, remembered to add LINE as a
    local var, and anchored a regex whose $ got lost.
2011-03-07 01:26:50 +00:00
slakmagik
9677e0ebf9 modify list_packages() to preserve state, etc.
This creates selection_state() (so that the user's selections can be
preserved when the menu is regenerated in the loop) and breaks out
mk_pkg_lists() (so that, when packages are removed, they are also
removed from the menu). Before, this simply broke out of the loop but
that forced the user to re-enter the menu if they wanted to do anything
else with it.
2011-03-07 01:26:43 +00:00
slakmagik
2adf86f041 make list_packages() loop
Wrap list_packages()'s main dialog widget in a while loop so the user
can return to deletion selection after reading readmes. Also correct the
text in the widget (s/uninstall/remove./).
2011-03-07 01:26:32 +00:00
slakmagik
c3eb9de996 create nvabt2n(); revise list_packages()
PKG_LIST is now no longer used directly but makes for easier
manipulation into both PKG_CHECKLIST for the dialog menu and README_LIST
(created via nvabt2n()) as input for view_readmes(). Added the extra
button that calls view_readmes() with README_LIST.

While I was here, changed the package removal confirmation dialog to use
'--separate-output' and dumped the tr that was removing the quotes
dialog otherwise puts in.
2011-03-07 01:26:27 +00:00
slakmagik
31b07d91cc generalize view_readmes()
view_readmes() now takes two arguments for header text and input,
doesn't bother displaying 'DISABLED' packages if not displaying from a
queue, and has a fuzzier dialog title.
2011-03-07 01:26:21 +00:00
slakmagik
6389034312 rename view_queue_readmes() to view_readmes() 2011-03-07 01:26:15 +00:00
slakmagik
8155da8773 change VARNAMES to VAR_NAMES
Also drop the overly-specific 'SBO' from SBOPKGLIST as it's actually
whatever $REPO is.
2011-03-07 01:26:09 +00:00
slakmagik
bb87b804fa rename get_sbo_packages() to list_packages() 2011-03-07 01:26:03 +00:00
slakmagik
6ad3f472d7 updated French man pages
Thanks to Marie-Claude Collilieux.
2011-03-03 20:35:29 +00:00
slakmagik
b09d37c2f6 fix documentation bug regarding ~/.sbopkg.conf
Document the fact that (since 0.25.0) settings in the system
configuration file can be overridden with a private configuration file.
Thanks to Bill Kirkpatrick on sbopkg-users for raising this issue.

Also catch up on the NEWS file while adding this item.
2011-03-02 23:49:09 +00:00
slakmagik
07a8ec3d84 fix download failure
When an http url 301ed to an https and the certificate check failed,
sbopkg's certcheck code was not being triggered, causing the download to
fail. Thanks to vbatts for raising this issue.
2011-02-19 21:32:29 +00:00
slakmagik
72a0269454 updated French man pages in trunk
Thanks to Marie-Claude Collilieux.
2011-02-12 03:06:23 +00:00
slakmagik
da4a9ea2f8 update copyrights
Thanks to dive for reminding me. :)
2011-02-08 22:16:34 +00:00
slakmagik
5e6a72963e tag and release 0.34.1 2011-02-05 04:34:55 +00:00
slakmagik
f81a42eb13 minor changes to sbopkg's SlackBuild 2011-02-05 04:19:36 +00:00
slakmagik
6b5df12c1c two sbopkg(8) tweaks
Changed a line which made it almost sound like sbopkg might randomly
replace the config file, making it clear it's under user control.

Modified (mostly removed) the paragraph (similar to one in the README
that was also recently modified/removed) about sbopkg not really
supporting build chains. It isn't *guaranteed*, but doesn't need to
sound like some random fluke.
2011-02-05 03:19:23 +00:00
slakmagik
497e34feaf two tweaks noticed in testing
Exported TMPDIR from sbopkg.conf.

Worded the error message on mktemp failure to hopefully be more helpful
by suggesting a likely cause of failure.
2011-02-05 03:19:19 +00:00
slakmagik
0cd0d3ae7f updated NEWS/THANKS to reflect r853 2011-02-05 03:19:14 +00:00
slakmagik
482aed1f9b revise documentation
Major reformatting and some textual modifications of
src/usr/doc/sbopkg-*/* including breaking out the credits from the
script into a detailed THANKS file, renaming and reformatting
ChangeLog.txt into NEWS, renaming the sample queuefiles from *.sqf to
*.sqf.sample, and making lesser modifications to all the other docs.
2011-02-05 03:18:48 +00:00
slakmagik
fa831cdd97 renamed ChangeLog.txt to NEWS 2011-02-05 03:18:40 +00:00
slakmagik
ecdc8e9e73 add Spanish translations of the manuals
Much thanks to Pablo Castano Fernandez for doing these translations.
2011-01-25 00:08:01 +00:00
slakmagik
c2590f6aca make assigning to TMPDIR in sbopkg.conf work
Move the assignment to SBOPKGTMP (via mktemp and its TMPDIR) to after
sourcing the config file. Thanks to Ken Roberts for reporting the issue
and providing a preliminary fix.

Also modify config_check() to check for obsolete variables as it does
for required variables. Also modify cleanup() to only try to remove
SBOPKGTMP if it exists.
2011-01-21 07:45:37 +00:00
slakmagik
74306e5424 rectify a documentation omission from r838
Remove documentation for removed config file option SBOPKGTMP and
document its replacement, TMPDIR. Add TMPDIR (and comments) to the
config file.

Thanks to dive for raising this issue.
2011-01-21 07:45:29 +00:00
slakmagik
50a005bc3e address the old bash/dir_init() part of issue 55
r845 addresses part of a problem with sbopkg code and bash 3x array
handling but not all of it. When creating an array with the += operator,
if the array creation code was triggered, the item doing so should have
been assigned to index 0 and, instead, an empty string was being
assigned to 0 and the item was being assigned to index 1, resulting in a
blank line being output before the proper item. Thanks to greinze for
pointing this out. Explicitly declaring the variable an array seems to
solve this.
2011-01-21 05:48:07 +00:00
slakmagik
5c2ae15a42 addressed issue 49 (TAG not passed to SlackBuild)
Modified build_package() to export whatever we're using for REPO_TAG as
TAG.
2010-12-02 00:49:41 +00:00
slakmagik
d51de9267c addressed issue 50 (-o does nothing)
Applied patch by Mauro which modified get_source_names() to only attempt
to ls SRCNAME if SRCNAME is not empty so that it doesn't list the entire
cache directory and break get_obsolete_sources(). This was triggered by
django, whose DOWNLOAD was given as
"http://www.djangoproject.com/download/1.2.3/tarball/"

Signed-off-by: slakmagik <slakmagik@gmail.com>
2010-12-02 00:49:34 +00:00
slakmagik
f17e5ae404 addressed issue 48 (MKDIR_PROMPT ignored)
r819 mostly replaced directory_checks() and ck_dir() with dir_init() but
forgot about the MKDIR_PROMPT variable used in ck_dir(). So again wrapped
the prompting in a conditional based on that setting and moved the
action outside the conditional.
2010-12-02 00:49:26 +00:00
slakmagik
dac7bd21c9 tag and release 0.34.0 2010-11-12 04:07:45 +00:00
slakmagik
23fc2049ca corrected a problem in dir_init() w/older bashes
Changed an implicit array reference to DI_OUTPUT to an explicit one.
Also made a potential error message declare its origin.
2010-11-12 03:15:55 +00:00
slakmagik
c066f66f9c added several package renames 2010-11-06 02:44:35 +00:00
slakmagik
5fb9fd2a2e corrected typo in English man page
Forgot this in the last commit. :( Thanks to Marie-Claude Collilieux for
spotting this.
2010-07-29 01:48:36 +00:00
slakmagik
8cc3142bc6 updated French man pages in trunk
Thanks to Marie-Claude Collilieux (also noted in the ChangeLog).
2010-07-29 01:38:16 +00:00
slakmagik
0862608534 added two package renames to both branches
Also added a rename to the bugfix branch which had been added to trunk after
the branch point - now the two files are in sync (just in case we do another
0.33.x release).
2010-07-28 04:15:52 +00:00
slakmagik
ed6bfaac16 updated French man pages
Thanks to Marie-Claude Collilieux.
2010-07-24 22:59:20 +00:00
chess.griffin
59a35dd5fa update the current-* files in /tools so sbopkg.org site will display correct version and download links 2010-07-20 19:30:59 +00:00
slakmagik
badc768e12 address security hole; overhaul tempfile handling
This revision corrects a security issue introduced in r762 and a trap
lost in r819. The basic idea is to revert the unsafe operator from r762
and then replace sbopkg's static SBOPKGTMP directory with a more secure,
volatile one created by mktemp and to use it and a new batch of traps to
simplify creation and cleanup of tmp dirs and files.

Tmp/trap/cleanup changes:

* /etc/sbopkg/sbopkg.conf.new: removed old SBOPKGTMP variable.
* config_check(): ditto. Also removed everything about unexpected files
  since the new SBOPKGTMP should take care of that.
* dir_init(): removed SBOPKGTMP variable and its use. Dumped the
  ALLOW_MULTI/mcookie part, since the new SBOPKGTMP should take care of
  that.
* script-wide: removed all calls to cleanup(), except for the new call
  from the traps.
* check_for_updates(): reverted the redirection operator
* build_package(): now uses the volatile SBOPKGTMP directly if/when we
  CLEANUP, rather than a volatile subdir in a static SBOPKGTMP.
* cleanup(): changed all the specific deletions of the contents of the
  old SBOPKGTMP to a general deletion of the entire new SBOPKGTMP.
  Dumped the ALLOW_MULTI stuff since it can't be triggered now (rm -r of
  a mktemp vs. a rmdir of an mcookie).
* control_c(): made a comment more specific; made the function a lot
  quieter; removed the cleanup/exit parts now trapped.
* main: added traps; assigned to SBOPKGTMP internally with a mktemp
  invocation that respects TMPDIR and moved up all SBOPKGTMP variables
  that had to wait on sourcing the config file since they no longer have
  to wait for that.

Unrelated changes that I tripped over along the way:

* pid_check(): combine PIDFILE declaration and assignment and shorten
  comment.
* info_item(): changed use of filenames to use of variables.
* sync_repo(): made an error condition exit 1 rather than 0.
* get_source(): changed PIDLIST to SBOPKG_PIDLIST like it is elsewhere.
* pick_file(): establish a RETURN trap to clean out files which are now
  referred to by variables rather than semi-random deletions of files
  referred to by filenames.
* process_queue(): now moves the built package from the tmpdir before
  installing rather than after so people's PACKAGE LOCATION lines aren't
  screwed up in their package db.
* main: combined a command and exit status check into the one 'if'. Also
  changed some more filenames to vars and removed two that didn't need
  to be declared there. (They can be local to their functions since r831
  or so.)
2010-07-20 02:05:28 +00:00
slakmagik
871eef1e2c made sbopkg's use of SRCDIR more transparent 2010-07-09 04:18:29 +00:00
slakmagik
e5318d9d8e allowed user to retry a failed https download
Added check_cert_prompt() which is called from get_source() which
prompts the user to append '--no-check-certificate' to WGETFLAGS if it
is not already present, and tries again. Previously, this was handled by
changing WGETFLAGS manually (which is still possible) but this handles
it interactively on a case by case basis and may help new users who
aren't aware that modifying WGETFLAGS would be a solution. Thanks to
Chess and Mauro for review and suggestions.
2010-07-09 04:18:13 +00:00