publishing pam-hooks
authorStefano Zacchiroli <>
Tue, 22 Jan 2008 22:23:03 +0000 (23:23 +0100)
committerStefano Zacchiroli <>
Tue, 22 Jan 2008 22:23:03 +0000 (23:23 +0100)
hacking/software/pam-hooks.mdwn [new file with mode: 0644]
hacking/software/pam-hooks/changelog [new file with mode: 0644]
hacking/software/pam-hooks/libpam-hooks_0.0.1-1_i386.deb [new file with mode: 0644]
hacking/software/pam-hooks/pam-hooks_0.0.1-1.diff.gz [new file with mode: 0644]
hacking/software/pam-hooks/pam-hooks_0.0.1-1.dsc [new file with mode: 0644]
hacking/software/pam-hooks/pam-hooks_0.0.1.orig.tar.gz [new file with mode: 0644]

index e0fee5b..4014c88 100644 (file)
@@ -79,6 +79,8 @@ debugger](
 [[1st blog post](]
 * **flickr download** - batch downloader for [flickr]( photos
 [[1st blog post](]
+* **pam-hooks** - PAM module that support execution of login/logout hooks [
 * others are described in the [["hacks"_section_of_my_blog|tags/hack]]
 # dead software projects
diff --git a/hacking/software/pam-hooks.mdwn b/hacking/software/pam-hooks.mdwn
new file mode 100644 (file)
index 0000000..ef9ebc0
--- /dev/null
@@ -0,0 +1,43 @@
+# pam-hooks - PAM module for login/logout hooks
+**pam-hooks** is a tiny teeny [PAM](
+module enabling the execution of hook scripts when a PAM session is opened or
+closed. The typical use case (actually, my use case) is the need of doing some
+per-user set-up when a user logs via a PAM-aware login mechanism (e.g.
+[GDM]( in my case) and/or the need of doing
+some per-user clean-up when the user logs out.
+In order to use pam-hooks you need to add a line like the following at the end
+of the PAM configuration file of the service you want the hooks to be attached
+to (e.g. `/etc/pam.d/gdm`):
+    session required /some/where/pam-hook param1 ... paramN
+The script `/some/where/pam-hook` will be invoked both when the corresponding
+PAM session will be opened and when it will be closed. The script will be
+executed using [`system()`]( (so beware of what you do!),
+and passed the following arguments in the following order:
+* all the *positional parameters* appended to the PAM configuration line (will
+be `param1 ... paramN` in the sample line above)
+* a single *tag* argument which will be one of `"open"` (passed when the session
+is being opened), `"close"` (passed when the session is being closed)
+* a single *username* argument, corresponding to the user which is being
+opening/closing the session
+## Download
+pam-hooks is freely distributed under the [GNU General Public
+License](; it is available here for
+* [[changelog]], aka **news**
+* version **0.0.1**:
+  * tarball (sources): [[.tar.gz|pam-hooks_0.0.1.orig.tar.gz]]
+  * unofficial [Debian]( packages for lenny/sid, i386:
+  [[.deb|libpam-hooks_0.0.1-1_i386.deb]], [[.dsc|pam-hooks_0.0.1-1.dsc]],
+  [[.orig.tar.gz|pam-hooks_0.0.1.orig.tar.gz]],
+  [[.diff.gz|pam-hooks_0.0.1-1.diff.gz]]  
+  <small>(I'm willing to upload pam-hooks to the Debian archive if there is
+  interest, just email me about it.)</small>
diff --git a/hacking/software/pam-hooks/changelog b/hacking/software/pam-hooks/changelog
new file mode 100644 (file)
index 0000000..b7c600d
--- /dev/null
@@ -0,0 +1,5 @@
+pam-hooks (0.0.1-1) unstable; urgency=low
+  * First public release.
+ -- Stefano Zacchiroli <>  Tue, 22 Jan 2008 22:29:37 +0100
diff --git a/hacking/software/pam-hooks/libpam-hooks_0.0.1-1_i386.deb b/hacking/software/pam-hooks/libpam-hooks_0.0.1-1_i386.deb
new file mode 100644 (file)
index 0000000..aa2f6d2
Binary files /dev/null and b/hacking/software/pam-hooks/libpam-hooks_0.0.1-1_i386.deb differ
diff --git a/hacking/software/pam-hooks/pam-hooks_0.0.1-1.diff.gz b/hacking/software/pam-hooks/pam-hooks_0.0.1-1.diff.gz
new file mode 100644 (file)
index 0000000..0783a88
Binary files /dev/null and b/hacking/software/pam-hooks/pam-hooks_0.0.1-1.diff.gz differ
diff --git a/hacking/software/pam-hooks/pam-hooks_0.0.1-1.dsc b/hacking/software/pam-hooks/pam-hooks_0.0.1-1.dsc
new file mode 100644 (file)
index 0000000..74ebeb9
--- /dev/null
@@ -0,0 +1,11 @@
+Format: 1.0
+Source: pam-hooks
+Binary: libpam-hooks
+Architecture: any
+Version: 0.0.1-1
+Maintainer: Stefano Zacchiroli <>
+Standards-Version: 3.7.3
+Build-Depends: cdbs, debhelper (>= 5.0.0), libpam-dev
+ 89fc4e1376acc11e7ccf1e9d609a37fe 14921 pam-hooks_0.0.1.orig.tar.gz
+ ff5ccc9c4c3321bf8fb03da47f88427d 991 pam-hooks_0.0.1-1.diff.gz
diff --git a/hacking/software/pam-hooks/pam-hooks_0.0.1.orig.tar.gz b/hacking/software/pam-hooks/pam-hooks_0.0.1.orig.tar.gz
new file mode 100644 (file)
index 0000000..aee853a
Binary files /dev/null and b/hacking/software/pam-hooks/pam-hooks_0.0.1.orig.tar.gz differ