A little while ago I discovered pg 0.1.6 had some issues with more recent GIT versions, such as GIT 1.4.1 due to some changes in command line parameter handling.
Consequently pg 0.1.7 is now available. Here is the shortlog of changes:
* When backing up into a new directory GIT 1.3.1 won’t copy
* Corrected diff-index usage for GIT 1.4.1.
* Add raw diff support to pg-files.
* Add –base=foo option to pg-new.
I’ve made quite a few changes to pg since the last listed release of v0.1.1, I just haven’t published it on my website.
(more…)
I’m finally making the first public release of pg (aka Patchy GIT).
pg is a shell script wrapper around GIT to help the user manage a set of patches to files. pg is somewhat like quilt or StGIT, but it does have a slightly different feature set. For one thing pg may not have everything you want. Yet. On the other hand pg does things differently then StGIT. 
(more…)
The RPI Computer Science department network uses Kerberos to protect its print spoolers. This allows students and faculty to print from any computer on the network and yet the department can verify the individual is allowed to print to that printer - and more importantly - track usage to prevent printer abuse.
MacOS 10.3 and 10.4 uses CUPS - and CUPS doesn’t support connecting to a remote LPR daemon that requires Kerberos authentication. MacOS 10.3 and 10.4 both support printing to an SMB print spooler, but for unknown reasons 10.4 can’t actually print over SMB.
Due to the architecture of CUPS and MacOS X it is rather difficult for a CUPS backend to gain access to the user’s Kerberos tickets. So I developed this solution. 
Installation is rather technical - if you aren’t comfortable opening a shell and using a command line don’t attempt to install this software.
Otherwise, here you go: cups2lprng-relay-1.0.tar.bz2
How it works
At login a Perl script is started and run in the background as a
daemon.
The daemon creates a UNIX domain socket in /tmp which only the
user can access.
The CUPS backend (cups2lprng) is run as root by the CUPS printing
daemon. When the print job is received by the CUPS backend the
backend connects to the UNIX domain socket of the user who CUPS
claims submitted the print job. The print job is then copied over
the domain socket.
When the daemon receives a connection it starts up an LPRng process
to print the incoming print job.
Kerberos Tickets/Mach-O Chains
Other solutions have tried to run LPRng directly from within the
CUPS backend process. This has proved to be impossible with
Keberos tickets as the tickets are held in memory by the kernel
and are unavailable to the CUPS backend.
We get around the problem by running the daemon as the part of the
user login/desktop. The daemon will have access to the user’s
tickets.
I have seen a solution from NCSU which has a printer plugin that
copies the user’s Kerberos ticket to a temp file, then passes that
temp file to the CUPS backend. This exposes the ticket on disk
for a short period of time - a risk. This solution avoids that
risk.
I haven’t used my Irix based O2 in years, so I haven’t even tried to maintain irix-dtrrts and don’t have any copies available either.
Originally I wrote irix-dtrrts for Irix 6.2 so my O2 could communicate with an X10 Firecracker which I received as part of a bundle through a promotional offer. At the time Irix couldn’t control the DTR and RTS lines of an RS-232 port as were need to signal the Firecracker, so I wrote a small in-kernel device driver for Irix 6.2 to perform the DTR and RTS signalling as required by bottlerocket, the command line program used on UNIX systems to control Firecrackers.
I seriously doubt that irx-dtrrts would work on Irix 6.5 or later. I certainly haven’t tried. 