summaryrefslogtreecommitdiff
path: root/community/go/go.install
diff options
context:
space:
mode:
Diffstat (limited to 'community/go/go.install')
-rw-r--r--community/go/go.install32
1 files changed, 32 insertions, 0 deletions
diff --git a/community/go/go.install b/community/go/go.install
new file mode 100644
index 000000000..9a87b9d11
--- /dev/null
+++ b/community/go/go.install
@@ -0,0 +1,32 @@
+post_upgrade() {
+ # Backup any previous /usr/lib/go/bin directory
+ if [ -e /usr/lib/go/bin ]; then
+ mv /usr/lib/go/bin /usr/lib/go/bin.pacnew
+ fi
+
+ # Point /usr/lib/go/bin to /usr/bin
+ #
+ # This is to make go get code.google.com/p/go-tour/gotour and
+ # then running the gotour executable work out of the box.
+ #
+ # Also, /usr/bin is the place for system-wide executables,
+ # not /usr/lib/go/bin. Users should use different paths by
+ # setting the appropriate environment variables.
+ #
+ ln -sf /usr/bin /usr/lib/go/bin
+}
+
+post_install() {
+ post_upgrade
+}
+
+pre_remove() {
+ if [ -c /usr/lib/go/bin ]; then
+ rmdir --ignore-fail-on-non-empty /usr/lib/go/bin
+ fi
+ if [ -L /usr/lib/go/bin ]; then
+ rm /usr/lib/go/bin
+ fi
+}
+
+# vim:set ts=2 sw=2 et: