summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/README.source47
-rw-r--r--debian/changelog259
-rw-r--r--debian/clean1
-rw-r--r--debian/control172
-rw-r--r--debian/copyright56
-rw-r--r--debian/gccgo-go.links2
-rw-r--r--debian/gccgo-go.manpages1
-rw-r--r--debian/gitlab-ci.yml28
-rwxr-xr-xdebian/golang-go.links4
-rw-r--r--debian/golang-go.manpages1
-rwxr-xr-xdebian/golang-go.preinst22
-rwxr-xr-xdebian/golang-src.links2
-rwxr-xr-xdebian/helpers/getver.pl14
-rwxr-xr-xdebian/rules10
-rw-r--r--debian/source/format1
-rw-r--r--debian/source/lintian-overrides2
16 files changed, 622 insertions, 0 deletions
diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000..844e6ad
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,47 @@
+Keeping man pages up-to-date between Go releases
+================================================
+
+A new Go release naturally comes with updated (and new) documentation,
+and it is important to keep at least existing man pages up-to-date so as
+not to present outdated or even incorrect information to the end users.
+
+To get an overview of the changes with Git:
+
+ git diff upstream/1.18..upstream/1.19 src/cmd/go/alldocs.go
+
+(optionally, add "-w" flag to ignore whitespaces when necessary.)
+
+I also use something like the following quick-and-dirty commands to
+manually check for changes in existing man pages (non-comprehensive):
+
+ oldver=1.18
+ newver=1.19
+ for manpage in man/go-*.?; do
+ topic=$(echo $manpage | sed 's/^man\/go-//; s/\.[1-8]$//')
+ echo -e "\n$manpage ======================================\n"
+ for ver in $oldver $newver; do
+ /usr/lib/go-$ver/bin/go help $topic &> /tmp/$ver-go-$topic
+ done
+ colordiff -u /tmp/$oldver-go-$topic /tmp/$newver-go-$topic
+ done | less -R
+
+I then inspect the output, copy-and-paste the changes, and replace
+single quotes to \(oq or \(cq, prepend a backslash before a hyphen, etc.
+where necessary.
+
+Note that many "go help" commands and topics were added over the years
+and are missing man pages, such as:
+
+ * go help generate
+ * go help mod download
+ * go help buildconstraints
+ * ...
+
+However, given how labour-intensive this process is, and not knowing how to
+automate such man page updates, I am personally avoiding the creation of
+any more new man pages due to lack of time and energy.
+
+That said, if you are interested, please feel free to contribute! :-)
+Thank you!
+
+ -- Anthony Fok <foka@debian.org> Sat, 06 Aug 2022 12:50:00 -0600
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..b6850c5
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,259 @@
+golang-defaults (2:1.19~1) unstable; urgency=medium
+
+ * Update to Go 1.19 (src:golang-1.19)
+ * Update existing man pages to Go 1.19
+ * Add debian/README.source on keeping the man pages updated
+ * Bump Standards-Version to 4.6.1 (no change)
+
+ -- Anthony Fok <foka@debian.org> Sat, 06 Aug 2022 13:09:49 -0600
+
+golang-defaults (2:1.18~3) unstable; urgency=medium
+
+ * Have gccgo-go depend on g++-12 too, as go-12 "go env CXX" refers
+ specifically to "${DEB_BUILD_GNU_TYPE}-g++-12", but g++-12 does not
+ get installed when the default g++ is still version 11.
+
+ -- Anthony Fok <foka@debian.org> Tue, 22 Mar 2022 06:45:47 -0600
+
+golang-defaults (2:1.18~2) unstable; urgency=medium
+
+ * Bump gccgo to 12: gccgo-12 implements go1.18.
+ Thanks to Shengjing Zhu for letting me know!
+
+ -- Anthony Fok <foka@debian.org> Mon, 21 Mar 2022 10:07:36 -0600
+
+golang-defaults (2:1.18~1) unstable; urgency=medium
+
+ [ Jelmer Vernooij: deb-scrub-obsolete ]
+ * Remove constraints unnecessary since buster
+ - golang-go: Drop versioned constraint on golang-doc and golang-go.tools
+ in Replaces and Breaks.
+
+ [ Anthony Fok ]
+ * Update to Go 1.18 (src:golang-1.18)
+ * Update man pages to Go 1.18
+ * Reorder fields in debian/control
+ as would be generated in the next dh-make-golang release after 0.6.0-1
+
+ -- Anthony Fok <foka@debian.org> Mon, 21 Mar 2022 00:03:54 -0600
+
+golang-defaults (2:1.17~1) unstable; urgency=medium
+
+ * Update to Go 1.17.
+ * Update man pages to Go 1.17
+ * Convert golang-src "Architecture: all" and marked "Multi-Arch: foreign"
+ as recommended by the Multiarch hinter on Debian Package Tracker
+ * Mark Multi-Arch for golang-go and golang-doc
+ to resolve Lintian dependency-is-not-multi-archified warnings
+
+ -- Anthony Fok <foka@debian.org> Fri, 15 Oct 2021 07:34:04 -0600
+
+golang-defaults (2:1.16~1) unstable; urgency=medium
+
+ [ Jenkins ]
+ * Remove constraints unnecessary since stretch
+ * golang-go: Drop versioned constraint on golang-golang-x-tools in Replaces.
+ * golang-go: Drop versioned constraint on golang-golang-x-tools in Breaks.
+ * Remove 1 maintscript entries from 1 files.
+ Changes-By: deb-scrub-obsolete
+
+ [ Anthony Fok ]
+ * Update to Go 1.16 (Closes: #993356)
+ * Change Section from devel to golang
+ * Change Maintainer from "Go Compiler Team" to "Debian Go Compiler Team"
+ * Bump Standards-Version to 4.6.0 (no change)
+ * Bump gccgo to 11: gccgo-11 implements Go 1.16 (Yay!)
+ * Updated most man pages to Go 1.16
+ - go-get(1) now documents the module-aware mode;
+ the original GOPATH mode doc has been moved to go-gopath-get(1)
+ - go-remote(7), go-testflag(7) and go-testfunc(7) are not yet updated
+
+ -- Anthony Fok <foka@debian.org> Mon, 06 Sep 2021 09:40:53 -0600
+
+golang-defaults (2:1.15~1) unstable; urgency=medium
+
+ * Update to Go 1.15.
+
+ -- Michael Hudson-Doyle <mwhudson@debian.org> Thu, 17 Sep 2020 08:08:57 +1200
+
+golang-defaults (2:1.14~2) unstable; urgency=medium
+
+ * Team upload.
+ * Bump gccgo to 10
+ gccgo-10 implements go1.14
+ * Fix mips64 typo, should be mips64el.
+ Thanks Helmut Grohne for spotting this in #960842
+ * Bump debhelper-compat to 13
+ * Bump Standards-Version to 4.5.0 (no changes)
+ * Add Rules-Requires-Root
+
+ -- Shengjing Zhu <zhsj@debian.org> Wed, 20 May 2020 19:48:35 +0800
+
+golang-defaults (2:1.14~1) unstable; urgency=medium
+
+ * Update to Go 1.14 (src:golang-1.14). Closes: #952831
+ * Add riscv64 to architectures of golang-go, golang-src, and golang.
+ Thanks to Aurelien Jarno <aurel32@debian.org> (Closes: #953303)
+
+ -- Dr. Tobias Quathamer <toddy@debian.org> Sat, 07 Mar 2020 13:47:33 +0100
+
+golang-defaults (2:1.13~1) unstable; urgency=medium
+
+ * Update to Go 1.13 (src:golang-1.13)
+
+ -- Dr. Tobias Quathamer <toddy@debian.org> Fri, 04 Oct 2019 13:23:03 +0200
+
+golang-defaults (2:1.12~1) unstable; urgency=medium
+
+ [ Louis-Philippe Véronneau ]
+ * d/control: Suggest installing git (Closes: #933003)
+
+ [ Anthony Fok ]
+ * Add myself to the list of Uploaders
+ * Apply "cme fix dpkg" fixes:
+ - Update debhelper dependency to "Build-Depends: debhelper-compat (= 12)"
+ - Bump Standards-Version to 4.4.0 (no change)
+ * Have gccgo-go depend on gccgo-9
+ * Update to Go 1.12 (src:golang-1.12) (Closes: #924623)
+
+ -- Anthony Fok <foka@debian.org> Sat, 03 Aug 2019 04:27:09 -0600
+
+golang-defaults (2:1.11~1) unstable; urgency=medium
+
+ * Update to Go 1.11 (src:golang-1.11)
+
+ -- Dr. Tobias Quathamer <toddy@debian.org> Sat, 29 Dec 2018 14:55:11 +0100
+
+golang-defaults (2:1.10~6) unstable; urgency=medium
+
+ [ Michael Hudson-Doyle ]
+ * d/control: Update Vcs-* to point at salsa.
+ * d/helpers/getver.pl: small improvements, thanks Guillem Jover.
+ (Closes: #909604)
+
+ [ Dr. Tobias Quathamer ]
+ * Switch team address to tracker.d.o
+ * Add myself as uploader
+ * Update Standards-Version to 4.3.0
+ - Use HTTPS URL for d/copyright
+ * Use debhelper v11
+
+ -- Dr. Tobias Quathamer <toddy@debian.org> Thu, 27 Dec 2018 00:20:37 +0100
+
+golang-defaults (2:1.10~5) unstable; urgency=medium
+
+ * Remove ppc64 from golang architectures as upstream's minimum ISA
+ requirement now exceeds Debian's.
+
+ -- Michael Hudson-Doyle <mwhudson@debian.org> Thu, 01 Mar 2018 10:51:58 +1300
+
+golang-defaults (2:1.10~4) unstable; urgency=medium
+
+ * Enable golang and golang-src on s390x too.
+
+ -- Michael Hudson-Doyle <mwhudson@debian.org> Wed, 28 Feb 2018 22:08:37 +1300
+
+golang-defaults (2:1.10~3) unstable; urgency=medium
+
+ * Have gccgo-go depend on gccgo-8.
+
+ -- Michael Hudson-Doyle <mwhudson@debian.org> Wed, 28 Feb 2018 22:01:45 +1300
+
+golang-defaults (2:1.10~2) unstable; urgency=medium
+
+ * Enable golang-go on s390x (Thanks cbmuser)
+
+ -- Michael Stapelberg <stapelberg@debian.org> Wed, 28 Feb 2018 09:40:49 +0100
+
+golang-defaults (2:1.10~1) unstable; urgency=medium
+
+ [ Michael Hudson-Doyle ]
+ * Use my @debian.org address in Uploaders.
+
+ [ Michael Stapelberg ]
+ * Update to Go 1.10 (src:golang-1.10)
+
+ -- Michael Stapelberg <stapelberg@debian.org> Sat, 17 Feb 2018 13:06:01 +0100
+
+golang-defaults (2:1.9~2) unstable; urgency=medium
+
+ * Add mips, mips64el and mipsel to golang-go Architectures.
+ (Closes: #834002, #841645)
+
+ -- Michael Hudson-Doyle <mwhudson@debian.org> Mon, 11 Dec 2017 09:15:36 +1300
+
+golang-defaults (2:1.9~1) unstable; urgency=medium
+
+ [ Martina Ferrari ]
+ * Add myself to Uploaders.
+
+ [ Michael Stapelberg ]
+ * Update to Go 1.9 (src:golang-1.9)
+
+ -- Michael Stapelberg <stapelberg@debian.org> Fri, 15 Sep 2017 07:53:10 +0200
+
+golang-defaults (2:1.8~3) unstable; urgency=medium
+
+ * Upload to unstable.
+
+ -- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Fri, 23 Jun 2017 10:12:10 +1200
+
+golang-defaults (2:1.8~2) experimental; urgency=medium
+
+ * Have gccgo-go depend on gccgo-7. (Closes: #862422)
+
+ -- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Mon, 15 May 2017 09:33:17 +1200
+
+golang-defaults (2:1.8~1) experimental; urgency=medium
+
+ * Update to Go 1.8 (src:golang-1.8)
+
+ -- Michael Stapelberg <stapelberg@debian.org> Wed, 15 Mar 2017 09:17:16 +0100
+
+golang-defaults (2:1.7~5) unstable; urgency=medium
+
+ * Add man pages to "gccgo-go" as well (given that it's the mirror of
+ "golang-go"), quieting lintian
+
+ -- Tianon Gravi <tianon@debian.org> Tue, 27 Dec 2016 10:38:42 -0800
+
+golang-defaults (2:1.7~4) unstable; urgency=medium
+
+ * Add old "golang-doc" to Breaks/Replaces (Closes: #836991)
+
+ -- Tianon Gravi <tianon@debian.org> Tue, 06 Dec 2016 23:21:37 -0800
+
+golang-defaults (2:1.7~3) unstable; urgency=medium
+
+ * Define a gccgo-go package that can be used to test building with gccgo on
+ any architecture. (Closes: 842254)
+
+ -- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Tue, 22 Nov 2016 09:44:29 -0800
+
+golang-defaults (2:1.7~2) unstable; urgency=medium
+
+ * Remove "s390x" again (Closes: #844258)
+ - Go upstream supports z196 and above, Debian still supports z10. If we
+ and/or upstream get a patch to support z10, we can add this back. :)
+ - see also https://github.com/golang/go/issues/16637
+
+ -- Tianon Gravi <tianon@debian.org> Fri, 18 Nov 2016 16:56:22 -0800
+
+golang-defaults (2:1.7~1) unstable; urgency=medium
+
+ [ Tianon Gravi ]
+ * Add missing Vcs-Browser and Vcs-Git
+ * Update to Go 1.7 (src:golang-1.7)
+ * Add "s390x" to Architectures
+
+ [ Michael Hudson-Doyle ]
+ * Add d/golang-go.maintscript to properly handle transition of /usr/lib/go
+ from directory to symlink. (Closes: 832160)
+
+ -- Tianon Gravi <tianon@debian.org> Tue, 23 Aug 2016 14:15:24 -0700
+
+golang-defaults (2:1.6.1+1) unstable; urgency=medium
+
+ * Initial release. (Closes: #818415, #822746)
+
+ -- Michael Hudson-Doyle <michael.hudson@ubuntu.com> Wed, 01 Jun 2016 10:05:10 -0700
diff --git a/debian/clean b/debian/clean
new file mode 100644
index 0000000..c2427f5
--- /dev/null
+++ b/debian/clean
@@ -0,0 +1 @@
+debian/golang-any.links
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..bee3f27
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,172 @@
+Source: golang-defaults
+Section: golang
+Priority: optional
+Maintainer: Debian Go Compiler Team <team+go-compiler@tracker.debian.org>
+Uploaders: Michael Stapelberg <stapelberg@debian.org>,
+ Paul Tagliamonte <paultag@debian.org>,
+ Tianon Gravi <tianon@debian.org>,
+ Michael Hudson-Doyle <mwhudson@debian.org>,
+ Martina Ferrari <tina@debian.org>,
+ Dr. Tobias Quathamer <toddy@debian.org>,
+ Anthony Fok <foka@debian.org>
+Rules-Requires-Root: no
+Build-Depends: debhelper-compat (= 13),
+ dh-exec
+Standards-Version: 4.6.1
+Vcs-Browser: https://salsa.debian.org/go-team/compiler/golang-defaults
+Vcs-Git: https://salsa.debian.org/go-team/compiler/golang-defaults.git
+Homepage: https://golang.org
+
+Package: golang-go
+Architecture: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el riscv64 s390x
+Multi-Arch: same
+Depends: golang-${golang:GOVER}-go,
+ golang-src (>= ${source:Version}),
+ ${misc:Depends}
+Suggests: git
+Breaks: gccgo-5 (<< 5.3.1-12~),
+ gccgo-6 (<< 6-20160319-1~),
+ golang-go-darwin-386,
+ golang-go-darwin-amd64,
+ golang-go-freebsd-386,
+ golang-go-freebsd-amd64,
+ golang-go-freebsd-arm,
+ golang-go-linux-386,
+ golang-go-linux-amd64,
+ golang-go-linux-arm,
+ golang-go-netbsd-386,
+ golang-go-netbsd-amd64,
+ golang-go-windows-386,
+ golang-go-windows-amd64
+Conflicts: gccgo-go
+Replaces: golang-go-darwin-386,
+ golang-go-darwin-amd64,
+ golang-go-freebsd-386,
+ golang-go-freebsd-amd64,
+ golang-go-freebsd-arm,
+ golang-go-linux-386,
+ golang-go-linux-amd64,
+ golang-go-linux-arm,
+ golang-go-netbsd-386,
+ golang-go-netbsd-amd64,
+ golang-go-windows-386,
+ golang-go-windows-amd64
+Description: Go programming language compiler, linker, compiled stdlib
+ The Go programming language is an open source project to make programmers more
+ productive. Go is expressive, concise, clean, and efficient. Its concurrency
+ mechanisms make it easy to write programs that get the most out of multicore
+ and networked machines, while its novel type system enables flexible and
+ modular program construction. Go compiles quickly to machine code yet has the
+ convenience of garbage collection and the power of run-time reflection. It's a
+ fast, statically typed, compiled language that feels like a dynamically typed,
+ interpreted language.
+ .
+ This is a dependency package that depends on the default Go toolchain and
+ compiled standard library. It is only built on architectures that have a
+ native toolchain ("gc compiler"). Packages that want to build with whichever
+ of gc or gccgo is available should depend on golang-any.
+
+Package: golang-any
+Architecture: any
+Multi-Arch: same
+Depends: golang-go (>= ${source:Version}) | gccgo-go (>= ${source:Version}),
+ ${misc:Depends}
+Description: Go programming language -- gccgo on "non-Go" platforms
+ The Go programming language is an open source project to make programmers more
+ productive. Go is expressive, concise, clean, and efficient. Its concurrency
+ mechanisms make it easy to write programs that get the most out of multicore
+ and networked machines, while its novel type system enables flexible and
+ modular program construction. Go compiles quickly to machine code yet has the
+ convenience of garbage collection and the power of run-time reflection. It's a
+ fast, statically typed, compiled language that feels like a dynamically typed,
+ interpreted language.
+ .
+ This is a dependency package that depends on the default Go toolchain and
+ compiled standard library or gccgo on architectures that do not have a native
+ toolchain ("gc compiler") port. Because the gccgo and Go releases are not on
+ the same schedule, it is not guaranteed that the version of the Go language
+ provided by the version of gccgo that this package depends upon will match the
+ version of this package.
+
+Package: gccgo-go
+Architecture: any
+Multi-Arch: same
+Depends: g++-12,
+ gccgo-12,
+ ${misc:Depends}
+Conflicts: golang-go
+Description: Go programming language -- gccgo
+ The Go programming language is an open source project to make programmers more
+ productive. Go is expressive, concise, clean, and efficient. Its concurrency
+ mechanisms make it easy to write programs that get the most out of multicore
+ and networked machines, while its novel type system enables flexible and
+ modular program construction. Go compiles quickly to machine code yet has the
+ convenience of garbage collection and the power of run-time reflection. It's a
+ fast, statically typed, compiled language that feels like a dynamically typed,
+ interpreted language.
+ .
+ Installing this package will install the gccgo implementation as /usr/bin/go.
+ It conflicts with golang-go.
+
+Package: golang-src
+Architecture: all
+Multi-Arch: foreign
+Depends: golang-${golang:GOVER}-src,
+ ${misc:Depends}
+Description: Go programming language - source files
+ The Go programming language is an open source project to make programmers more
+ productive. Go is expressive, concise, clean, and efficient. Its concurrency
+ mechanisms make it easy to write programs that get the most out of multicore
+ and networked machines, while its novel type system enables flexible and
+ modular program construction. Go compiles quickly to machine code yet has the
+ convenience of garbage collection and the power of run-time reflection. It's a
+ fast, statically typed, compiled language that feels like a dynamically typed,
+ interpreted language.
+ .
+ This is a dependency package that depends on the default Go standard library
+ source code, which is needed for the go build process.
+
+Package: golang-doc
+Architecture: all
+Multi-Arch: foreign
+Section: doc
+Depends: golang-${golang:GOVER}-doc,
+ golang-go (>= ${source:Version}),
+ ${misc:Depends}
+Description: Go programming language - documentation
+ The Go programming language is an open source project to make
+ programmers more productive. Go is expressive, concise, clean, and
+ efficient. Its concurrency mechanisms make it easy to write programs
+ that get the most out of multicore and networked machines, while its
+ novel type system enables flexible and modular program construction.
+ Go compiles quickly to machine code yet has the convenience of
+ garbage collection and the power of run-time reflection. It's a fast,
+ statically typed, compiled language that feels like a dynamically
+ typed, interpreted language.
+ .
+ This is a dependency package that depends on the default Go documentation. You
+ can view the formatted documentation by installing the golang-golang-x-tools
+ package, running "godoc --http=:6060", and then visiting
+ http://localhost:6060/doc/install.html.
+
+Package: golang
+Architecture: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el riscv64 s390x
+Multi-Arch: same
+Depends: golang-${golang:GOVER},
+ golang-doc (>= ${source:Version}),
+ golang-go (>= ${source:Version}),
+ golang-src (>= ${source:Version}),
+ ${misc:Depends}
+Description: Go programming language compiler - metapackage
+ The Go programming language is an open source project to make
+ programmers more productive. Go is expressive, concise, clean, and
+ efficient. Its concurrency mechanisms make it easy to write programs
+ that get the most out of multicore and networked machines, while its
+ novel type system enables flexible and modular program construction.
+ Go compiles quickly to machine code yet has the convenience of
+ garbage collection and the power of run-time reflection. It's a
+ fast, statically typed, compiled language that feels like a
+ dynamically typed, interpreted language.
+ .
+ This package is a metapackage that, when installed, guarantees
+ that (most of) a full Go development environment is installed.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..22da1d6
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,56 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Comment: This package is entirely derived from the debian/* files in
+ the golang packaging, so the copyright information has been copied
+ from there.
+
+Files: *
+Copyright: 2010 Ivan Wong <ivanwyc@gmail.com>
+ 2010 Ondřej Surý <ondrej@debian.org>
+ 2012 Michael Stapelberg <stapelberg@debian.org>
+ 2014 Canonical Ltd
+ 2014 Tianon Gravi <tianon@debian.org>
+License: Go
+
+License: Go
+ Copyright © 2009 The Go Authors. All rights reserved.
+ .
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ .
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following disclaimer
+ in the documentation and/or other materials provided with the
+ distribution.
+ * Neither the name of Google Inc. nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ .
+ Subject to the terms and conditions of this License, Google hereby
+ grants to You a perpetual, worldwide, non-exclusive, no-charge,
+ royalty-free, irrevocable (except as stated in this section) patent
+ license to make, have made, use, offer to sell, sell, import, and
+ otherwise transfer this implementation of Go, where such license
+ applies only to those patent claims licensable by Google that are
+ necessarily infringed by use of this implementation of Go. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that this
+ implementation of Go or a Contribution incorporated within this
+ implementation of Go constitutes direct or contributory patent
+ infringement, then any patent licenses granted to You under this
+ License for this implementation of Go shall terminate as of the date
+ such litigation is filed.
diff --git a/debian/gccgo-go.links b/debian/gccgo-go.links
new file mode 100644
index 0000000..9370164
--- /dev/null
+++ b/debian/gccgo-go.links
@@ -0,0 +1,2 @@
+usr/bin/go-12 usr/bin/go
+usr/bin/gofmt-12 usr/bin/gofmt
diff --git a/debian/gccgo-go.manpages b/debian/gccgo-go.manpages
new file mode 100644
index 0000000..85c5e00
--- /dev/null
+++ b/debian/gccgo-go.manpages
@@ -0,0 +1 @@
+man/*
diff --git a/debian/gitlab-ci.yml b/debian/gitlab-ci.yml
new file mode 100644
index 0000000..5c8c31b
--- /dev/null
+++ b/debian/gitlab-ci.yml
@@ -0,0 +1,28 @@
+
+# auto-generated, DO NOT MODIFY.
+# The authoritative copy of this file lives at:
+# https://salsa.debian.org/go-team/ci/blob/master/cmd/ci/gitlabciyml.go
+
+# TODO: publish under debian-go-team/ci
+image: stapelberg/ci2
+
+test_the_archive:
+ artifacts:
+ paths:
+ - before-applying-commit.json
+ - after-applying-commit.json
+ script:
+ # Create an overlay to discard writes to /srv/gopath/src after the build:
+ - "rm -rf /cache/overlay/{upper,work}"
+ - "mkdir -p /cache/overlay/{upper,work}"
+ - "mount -t overlay overlay -o lowerdir=/srv/gopath/src,upperdir=/cache/overlay/upper,workdir=/cache/overlay/work /srv/gopath/src"
+ - "export GOPATH=/srv/gopath"
+ - "export GOCACHE=/cache/go"
+ # Build the world as-is:
+ - "ci-build -exemptions=/var/lib/ci-build/exemptions.json > before-applying-commit.json"
+ # Copy this package into the overlay:
+ - "GBP_CONF_FILES=:debian/gbp.conf gbp buildpackage --git-no-pristine-tar --git-ignore-branch --git-ignore-new --git-export-dir=/tmp/export --git-no-overlay --git-tarball-dir=/nonexistant --git-cleaner=/bin/true --git-builder='dpkg-buildpackage -S -d --no-sign'"
+ - "pgt-gopath -dsc /tmp/export/*.dsc"
+ # Rebuild the world:
+ - "ci-build -exemptions=/var/lib/ci-build/exemptions.json > after-applying-commit.json"
+ - "ci-diff before-applying-commit.json after-applying-commit.json"
diff --git a/debian/golang-go.links b/debian/golang-go.links
new file mode 100755
index 0000000..79b7747
--- /dev/null
+++ b/debian/golang-go.links
@@ -0,0 +1,4 @@
+#!/usr/bin/dh-exec
+usr/lib/go-${GOVER} usr/lib/go
+usr/lib/go-${GOVER}/bin/go usr/bin/go
+usr/lib/go-${GOVER}/bin/gofmt usr/bin/gofmt
diff --git a/debian/golang-go.manpages b/debian/golang-go.manpages
new file mode 100644
index 0000000..85c5e00
--- /dev/null
+++ b/debian/golang-go.manpages
@@ -0,0 +1 @@
+man/*
diff --git a/debian/golang-go.preinst b/debian/golang-go.preinst
new file mode 100755
index 0000000..b089334
--- /dev/null
+++ b/debian/golang-go.preinst
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+set -e
+
+case "$1" in
+ upgrade)
+ # When golang-go was not a dependency package, it used alternatives to
+ # manage /usr/bin/go, and unfortunately did not remove the alternative on
+ # prerm upgrade (just uninstall|deconfigure). So remove it here.
+ update-alternatives --remove go /usr/lib/go/bin/go
+ ;;
+ install)
+ ;;
+ *)
+ echo "preinst called with unknown argument \`$1'" >&2
+ exit 0
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/golang-src.links b/debian/golang-src.links
new file mode 100755
index 0000000..16fbbcc
--- /dev/null
+++ b/debian/golang-src.links
@@ -0,0 +1,2 @@
+#!/usr/bin/dh-exec
+usr/share/go-${GOVER} usr/share/go
diff --git a/debian/helpers/getver.pl b/debian/helpers/getver.pl
new file mode 100755
index 0000000..27a87b4
--- /dev/null
+++ b/debian/helpers/getver.pl
@@ -0,0 +1,14 @@
+#!/usr/bin/perl
+
+# Extract upstream version from version in changelog.
+
+use warnings;
+use strict;
+
+use Dpkg::Changelog::Parse;
+
+my $fields = changelog_parse();
+my $v = $fields->{Version}->version();
+$v =~ /^([0-9]+\.[0-9]+).*/ or die 'INVALID VERSION! (needs X.Y)';
+
+printf("%s\n", $1);
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..53e0bc5
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,10 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+export GOVER := $(shell debian/helpers/getver.pl)
+
+%:
+ dh $@
+
+override_dh_gencontrol:
+ dh_gencontrol -- -Vgolang:GOVER=$(GOVER)
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..9f67427
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (native) \ No newline at end of file
diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides
new file mode 100644
index 0000000..bcf07fd
--- /dev/null
+++ b/debian/source/lintian-overrides
@@ -0,0 +1,2 @@
+# Thanks for the concern, lintian, but this is OK :-)
+golang-defaults: dh-exec-subst-unknown-variable