Skip to Content.
Sympa Menu

sm-discuss - [SM-Discuss] Quill 0.2 released!

sm-discuss AT lists.ibiblio.org

Subject: Public SourceMage Discussion List

List archive

Chronological Thread  
  • From: Jaka Kranjc <lynx AT mages.ath.cx>
  • To: sm-discuss AT lists.ibiblio.org
  • Subject: [SM-Discuss] Quill 0.2 released!
  • Date: Fri, 26 Jan 2007 21:31:10 +0100

Developers and powerusers alike, quill has reached a new major milestone.

What is this quill?
An interactive spell generator and updater script. It's meant to eventually
become the be-all for spell manipulation. It has support for moving the
working copy of the spell around, so any lacking features can easily be
circumvented manually (the old way).

A lot has changed since 0.1; most notable additions are the new update mode,
perlcpan metadata fetching, other smaller features and some code cleanup.
Most of the stuff on the next list is new.

Current set of features:
* spell creation with different levels of complexity (see quill -h)
* full fledged update mode that checks new urls and downloads the sources
* freshmeat and/or cpan metadata fetching for quicker work
* copying the spell from and back to the grimoire
* copying the spell from and back to a local git grimoire (any scm actually)
* casting of the spell
* creating a tarball out of it for easy submission
* variable unexpansion, so later updates will be easy (think a-0.1 ->
$SPELL-$VERSION)
* substitution of parts of SOURCE_URL with known mirror variables (like above)
* pretty dumping of default_build and similar functions for custom spell files
* sudo support for the copying cases where root privileges are required

Update mode highlights:
* url checking that also tries substituting the suffixes on failure (bz2<->gz)
* some multiversion support
* automatic HISTORY updates
* simple and automatically style-conformant adding of arbitrary HISTORY
entries
* automatic removal of deprecated variables like UPDATED and MD5
* automatic removal of old signature files and PATCHLEVEL
* hash and gpg verification support on spell updates
* patchlevel handling

It makes updating spells very easy and I don't mean just version bumps. It
allows you to copy the spell to the grimoire to test it, to copy it to the
(git) repo to see the diff (or commit it), do custom modifications, copy it
back, test, hack, test ... HISTORY updates have never been so easy, forget
about your name, the date or styling, it will be handled automatically. ;)

It is also useful for users that don't want to wait for updates or who want
to
submit them as patches or submit whole spells. Making them through quill is
easier and avoids some common mistakes.

The working copy is always there, so if you ^C out and restart, you are given
a choice not to overwrite it and just continue. This also means that if you
git reset the update or flash your grimoire with scribe, you can always just
copy the spell back again, even if quill isn't running anymore.

I've been succesfully using it for grimoire work for the past few weeks, from
automated simple bumps to eased complex matters. I don't see a reason why you
shouldn't give it a try too. :)

If you already have an older version installed first run:
quill -r
to reconfigure it, otherwise you will miss out on some of the functionality.

Example usage (update mode):
########################################
$ quill -fu kdeutils
Welcome to SourceMage GNU/Linux quill - a spell creator and updater script.
-----------------------------------------------------------------------------
This makes an immediately useable spell from some minor data or
updates an exsisting one..
-----------------------------------------------------------------------------
The spell will be put into a grimoire/section you define(if you choose to)
and a tar.bz2 file will be created in /home/navaden/.sourcemage/spells.
-----------------------------------------------------------------------------
All lists should be space delimited(dependencies and optional dependencies)
-----------------------------------------------------------------------------
% Total % Received % Xferd Average Speed Time Time Time
Current
Dload Upload Total Spent Left Speed
0 25 0 25 0 0 43 0 --:--:-- --:--:-- --:--:-- 0
Error: project not found.
Do you want to copy the spell from someplace?
(0) The grimoire
(1) QUILL_GIT_DIR

Which one do you want? [0]

Done.

What do you want to do?
(0) Update the spell to a newer version
(1) Add arbitrary HISTORY entries
(2) Increment/add PATCHLEVEL or SECURITY_PATCH
(3) Copy it here from the grimoire or QUILL_GIT_DIR
(4) Copy it under QUILL_GIT_DIR
(5) Copy it back to the grimoire
(6) Try it out
(7) Quit

Which one do you want? [7] 0


Current relevant version(s): 3.5.5
Do you want to update 3.5.5? [y]

Please enter the new version:
3.5.6
Checking source urls (this may take a while) ...
SOURCE_URL[0] is ok!

Summoning ...
Enter the root password, please.
Password:
Downloading source file kdeutils-3.5.6.tar.bz2
--14:08:19--
ftp://csociety-ftp.ecn.purdue.edu/pub/kde/stable/3.5.6/src/kdeutils-3.5.6.tar.bz2
=> `kdeutils-3.5.6.tar.bz2'
Resolving csociety-ftp.ecn.purdue.edu... 128.46.156.117
Connecting to csociety-ftp.ecn.purdue.edu|128.46.156.117|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done. ==> PWD ... done.
==> TYPE I ... done. ==> CWD /pub/kde/stable/3.5.6/src ... done.
==> PASV ... done. ==> RETR kdeutils-3.5.6.tar.bz2 ... done.
Length: 2,989,659 (2.9M) (unauthoritative)

100%[===================================================>] 2,989,659
96.10K/s ETA 00:00

14:09:11 (59.45 KB/s) - `kdeutils-3.5.6.tar.bz2' saved [2989659]


Updating HISTORY ...
Done.

Do you want to add SECURITY_PATCH? [n]


Do you want to review the update or add custom modifications? [y] n

Done with updating the spell!


What do you want to do?
(0) Update the spell to a newer version
(1) Add arbitrary HISTORY entries
(2) Increment/add PATCHLEVEL or SECURITY_PATCH
(3) Copy it here from the grimoire or QUILL_GIT_DIR
(4) Copy it under QUILL_GIT_DIR
(5) Copy it back to the grimoire
(6) Try it out
(7) Quit

Which one do you want? [7] 4
Copying spell into /home/navaden/sorcery/git/kde-core/kdeutils ...
Copying succeded.

What do you want to do?
(0) Update the spell to a newer version
(1) Add arbitrary HISTORY entries
(2) Increment/add PATCHLEVEL or SECURITY_PATCH
(3) Copy it here from the grimoire or QUILL_GIT_DIR
(4) Copy it under QUILL_GIT_DIR
(5) Copy it back to the grimoire
(6) Try it out
(7) Quit

Which one do you want? [7] 5
Copying spell into /var/lib/sorcery/codex/test/kde-core/kdeutils ...
Password:
Copying succeded.

What do you want to do?
(0) Update the spell to a newer version
(1) Add arbitrary HISTORY entries
(2) Increment/add PATCHLEVEL or SECURITY_PATCH
(3) Copy it here from the grimoire or QUILL_GIT_DIR
(4) Copy it under QUILL_GIT_DIR
(5) Copy it back to the grimoire
(6) Try it out
(7) Quit

Which one do you want? [7] 6
Do you want to cast -r? (possibly needed for multiversion spells) [n]

Enter the root password, please.
Password:
su: incorrect password

What do you want to do?
(0) Update the spell to a newer version
(1) Add arbitrary HISTORY entries
(2) Increment/add PATCHLEVEL or SECURITY_PATCH
(3) Copy it here from the grimoire or QUILL_GIT_DIR
(4) Copy it under QUILL_GIT_DIR
(5) Copy it back to the grimoire
(6) Try it out
(7) Quit

Which one do you want? [7]
$ quill -h
quill 0.2
Copyright (C) 2006 Source Mage
This is free software. You may redistribute copies of it under the terms of
the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
There is NO WARRANTY, to the extent permitted by law.

USAGE: quill [OPTIONS]

OPTIONS:
--fmxml, -f <SPELL> get spell data from Freshmeat if possible
--perlcpan, -c <SPELL> get spell data from Perl-CPAN if possible
--update, -u <SPELL> update exsisting spell
--apprentice, -a apprentice mode (default)
--mage, -m mage mode (advanced)
--wizard, -w wizard mode (expert)(DOES NOTHING FOR NOW)
--help, -h display this help
--version, -v display version
--reconfigure, -r reconfigure settings
--purge, -p [spells|tmp] purge internal quill files, defaults to both
dirs

EXAMPLES:
Create a spell; try to get some information from Freshmeat and ask about
some
additional spell files:
quill -f wormux -m

Update a spell; try to get some information from Perl-CPAN:
quill -c wormux -u wormux

The same can be done with shorter forms (fu, uf, cu and uc are supported):
quill -cu wormux

########################################

The new mode replaces the old broken upspell and update_spell scripts from
guru-tools, which I will remove now [0].

[0] http://bugs.sourcemage.org/show_bug.cgi?id=7287

--
We cannot command nature except by obeying her. --Sir Francis Bacon
Have a sourcerous day! www.sourcemage.org

Attachment: pgpDU4IHemr6O.pgp
Description: PGP signature




Archive powered by MHonArc 2.6.24.

Top of Page