Golang packaging: Difference between revisions

From wikinotes
No edit summary
 
(25 intermediate revisions by the same user not shown)
Line 1: Line 1:
How to install executables,<br>
manage project requirements,<br>
and publish your project to the go index (or create a private module).
= Locations =
= Locations =
<blockquote>
<blockquote>
Line 8: Line 12:
</blockquote><!-- Locations -->
</blockquote><!-- Locations -->


= Os Packages =
 
= OS Package Management =
<blockquote>
<blockquote>
== Install Executable ==
Installing Packages
<blockquote>
<syntaxhighlight lang="bash">
Starting in golang-1.18, <code>go install</code> is used to install executables.
# golang < 1.18
go get -u example.com/x/foo
 
# golang >= 1.18
go install example.com/x/foo@latest
</syntaxhighlight>


<syntaxhighlight lang="go">
Uninstalling Packages
go install github.com/appliedgocode/goman@latest  # install latest goman executable
<syntaxhighlight lang="bash">
# there doesn't seem to be a managed way of doing this
rm ${GOBIN:=~/go/bin}/tool-to-delete
</syntaxhighlight>
</syntaxhighlight>
</blockquote><!-- Install Executable -->
</blockquote><!-- OS Package Management -->
</blockquote><!-- Os Packages -->


= Project Requirements =
= Creating/Hosting Packages =
<blockquote>
<blockquote>
== Module Requirements ==
In order to hosting packages for OS-install, you simply need to expose the src using the module path.<br>
<blockquote>
It will be compiled for the platform automatically.
See [[go.mod file]] .
 
</blockquote><!-- Module Requirements -->
* See [[golang modules]] for creating modules, managing their requirements, and publishing to the public package index
* See [[golang module path]] for instructions on private package hosting
</blockquote><!-- Project Requirements -->
</blockquote><!-- Project Requirements -->

Latest revision as of 03:52, 20 June 2022

How to install executables,
manage project requirements,
and publish your project to the go index (or create a private module).

Locations

~/go/bin default $GOBIN path, where go executables are installed


OS Package Management

Installing Packages

# golang < 1.18
go get -u example.com/x/foo

# golang >= 1.18
go install example.com/x/foo@latest

Uninstalling Packages

# there doesn't seem to be a managed way of doing this
rm ${GOBIN:=~/go/bin}/tool-to-delete

Creating/Hosting Packages

In order to hosting packages for OS-install, you simply need to expose the src using the module path.
It will be compiled for the platform automatically.

  • See golang modules for creating modules, managing their requirements, and publishing to the public package index
  • See golang module path for instructions on private package hosting