User:Renich/Go Packaging Guidelines

From FedoraProject

< User:Renich
Revision as of 06:20, 4 February 2011 by Renich (Talk | contribs)

Jump to: navigation, search

Contents

Description

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.

It, also, includes a plethora of packages and related projects.

Go Packaging

Naming

Since go is a compiler and comes with many packages (libraries); distributed independently. Packaging guidelines should be applied only to those projects that expand go's functionality. Independent standalone packages should be named applying the NamingGuidelines.

Building

Go doesn't support stripping yet. It should be avoided for the time being.

The tags, according to The Packaging Howto, should be declaring these three globals:

%global _enable_debug_package 0
%global debug_package %{nil}
%global __os_install_post /usr/lib/rpm/brp-compress %{nil}

File Placement

Documentation

Go Packages and Projects

Naming

Building

File Placement

Documentation

Tips for Packagers

Reference

Websites

Oficial website: http://golang.org/

Projects: http://godashboard.appspot.com/project

Packages: http://godashboard.appspot.com/package

Communication

Mailing list: http://groups.google.com/group/golang-nuts

IRC: irc://irc.freenode.net/go-nuts

Twitter: http://twitter.com/go_nuts

Blog: http://blog.golang.org/