Skip to content

josephspurrier/golang-portable-windows

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

golang-portable-windows

Go Programming Language - Portable Environment for Windows

This project allows you to set up a full Go environment in 30 seconds so you can start building Go applications. There is no installation necessary, just extract to your desktop or a portable drive. You can build Go applications using the included portable LiteIDE, the easy-to-use batch scripts, or from plain command prompt. The Go binaries are included so you don't have to build the Go language itself.

The releases are now generated using this tool goappmation.

Download

The latest 32-bit and 64-bit stable release is here (2018-2-20). Previous releases were split into separate 32-bit and 64-bit downloads. It's easier to maintain a single version which allows you to compile either 32-bit or 64-bit by updating the BUILDBIT.txt file. Simply change the text to either 32 or 64 (default) and both LiteIDE and the batch scripts will build for that architecture. For LiteIDE, you also have to delete \liteide_config\locked.txt and then restart it.

The repository does not contain most of the binaries. Be sure to download the latest release which includes the binaries for Go, LiteIDE, Git, Mercurial, and Diff.

Overview

If you sat down at your friends computer, to get Go up and running:

  • Download the latest zip release
  • Extract to a folder
  • Double click LiteIDE.cmd

It's that simple.

Applications

Included is all the original files from go1.10.windows-xxx.zip, LiteIDE X33.2, msysGit, EasyMercurial, and DiffUtils. No changes have been made to any of the files, just extracted to separate folders. The only exception is msysGit which has these additional files from the full portable install: basename.txt, tr.exe, git-pull, git-sh-i18n, git-merge, and git-parse-remote.

Using LiteIDE

Just double click LiteIDE.cmd to start up a portable version of LiteIDE. The GOPATH will automatically be set using a local configuration file. If you move your project to another computer, run LiteIDE.cmd on the new computer to change all the paths inside liteide.ini to the new path. If you want to start from a fresh LiteIDE configuration, just delete \liteide_config\locked.txt and run LiteIDE.cmd.

Using Batch Scripts

If you don't want to use LiteIDE to build your Go applications, you can use the batch scripts in \workspace. All the scripts call __Global.cmd first to set the environment variables and paths. All the scripts are designed to work with the current file structure so no absolute paths are hard coded which makes the scripts very flexible. The "go run" command is not used in any of the scripts because it runs from a temporary location that requires you to add a firewall exception each time it is run - instead "go build" is used to build the app and then run normally. The only differences between the 32-bit and 64-bit releases are _BuildRaceDetector.cmd is removed in 32-bit and _Test.cmd, _TestBenchmark.cmd, and _TestCoverage.cmd do not have the -race flag in 32-bit. Go 32-bit does not support race detection.

__Command Prompt.cmd		- Opens a command prompt
__Global.cmd			- Called by all the scripts to set the environment variables and paths
_Build.cmd			- Builds all apps with a main() function in respective directories, sets Version and BuildDate inside app
_BuildRaceDetector.cmd		- Same as _Build.cmd, but includes -race flag which detects race conditions (size of .exe is greatly increased, not for Production)
_BuildRun.cmd			- Same as _Build.cmd, but runs the app as well
_Clean.cmd			- Removes object files from package source directories and corresponding binary
_Document.cmd			- Runs web server and opens a browser to a local version of the documentation for the application
_Embed.cmd			- Creates a syso file with version information (versioninfo.json) and an icon (icon.ico)
_Fix.cmd			- Finds lines of code that use old APIs and makes corrections
_FixDiff.cmd			- Finds lines of code that use old APIs and shows diffs to use newer APIs
_Format.cmd			- Formats lines of code correctly
_Generate.cmd			- Runs commands described by directives within existing files
_Get.cmd			- Downloads the packages named by the import paths
_GetInstall.cmd			- Downloads and installs the packages named by the import paths
_GetUpdate.cmd			- Downloads and force updates the packages named by the import paths
_Install.cmd			- Installs the packages in the /bin directory (will create automatically)
_Lint.cmd			- Installs Lint and then prints out style mistakes
_List.cmd			- Outputs all the packages
_Test.cmd			- Runs all package tests and outputs code coverage as well as any race conditions
_TestBenchmark.cmd		- Runs all package tests and outputs all benchmarks
_TestCoverage.cmd		- Same as _Test.cmd, but then opens a web browser to a local version of the code coverage map
_Vet.cmd			- Examines code and reports suspicious constructs

Text Files

The batch scripts use the .txt files (Packages.txt and GetPackages.txt) to determine which packages are built and tested. There are two rules when using the .txt files:

  • Only one package per line
  • Any lines that start with # are ignored

How to Use _Get.cmd

To download packages, write each package on a separate line in \workspace\GetPackages.txt and then run _Get.cmd.

Boilerplate Version and Build Date

One feature I find really useful is the ability to set uninitialized variables at build time using ldflags for build version and date.

The BuildDate variable is automatically set in \workspace\__Global.cmd to: YYYYMMDDHHMMSSMM

The Version variable is set in: \workspace\BuildVersion.txt

The LDFLAGS variable is set in \workspace\__Global.cmd and then used by the scripts:

  • _Build.cmd
  • _BuildRaceDetector.cmd
  • _BuildRun.cmd
  • _Install.cmd

All the boilerplate code is already included in \workspace\src\hello\hello.go.

Boilerplate Tests

A boilerplate test package is also included at \workspace\src\hello\hello_test.go.

GCC Support

If you import packages into your workspace that need to be compiled (like github.com/mattn/go-sqlite3), you may receive this error message:

exec: "gcc": executable file not found in %PATH%

To install gcc and the other executables, I recommend downloading Win-builds and installing the 32-bit version to C:\mingw32 or the 64-bit version to C:\mingw64. Win-builds doesn't actually install, it just extracts the necessary files to those directories so it's nice and clean. LiteIDE and the batch scripts are already configured to use these directories if they exist.

About

Go Programming Language - Portable Environment for Windows

Resources

License

Brancaleone Doria - Wikipedia Jump to content

Brancaleone Doria

From Wikipedia, the free encyclopedia
Marriage of Eleanor and Brancaleone
Brancaleone succeeded in conquering most of Sardinia, including the former free republic of Sassari, and extending Arborean control over the other provinces.

Brancaleone Doria was the husband of Eleanor of Arborea, regent of the Giudicato of Arborea on the island of Sardinia in the late 14th century. He was a scion of the influential Doria family of the Republic of Genoa, the son of the elder Brancaleone and a woman named Giacomina. On 16 March 1357, he became a vassal of Peter IV of Aragon, the nominal King of Sardinia, to legitimate the possessions of his father on the island.

When Hugh III of Arborea, Eleanor's brother, sought out a matrimonial alliance with Genoa, his choice for a brother-in-law fell on Brancaleone. The marriage took place in 1376, a political alliance only, for the Bas-Serra family of Eleanor was opposed to the royal pretensions of the House of Barcelona, to which Brancaleone was affiliated. Already at the time of his marriage, he had illegitimate children, Giannettino and Nicholas, by an anonymous woman.

When Hugh was assassinated in 1383, Eleanor and Brancaleone's young son Frederick succeeded to the Giudicato of Arborea. At that time, Brancaleone was in Catalonia to receive the honorific title of "Count of Monteleone and Baron of Lower Marmilla". As soon as Peter IV heard of the election of Frederick, he arrested Brancaleone and sent him to Cagliari to be imprisoned first in the tower of Pancrazio and then in that of Elefante. Arborea was governed in the meantime by Eleanor.

Frederick, later seized and imprisoned by Peter himself, died young and in captivity. He was succeeded by Brancaleone's second son, Marianus V. Brancaleone was finally liberated on 1 January 1390, by which time his loyalty to the Aragonese crown was broken.

On 1 April 1391, Brancaleone marched on Castel di Cagliari and, on 16 August, occupied Sassari and Osilo with his son Marianus. In September, he conquered the castles of Fava, Galtellì, Bonvehì, and Pedreso. Only Alghero and Longosardo remained in Aragonese hands. On 3 October, he entered Villa di Chiesa. In a letter written at Sanluri on 3 February 1392, he announced having repossessed all the territories lost to the Aragonese in 1388. On 16 March, a fleet under Martin of Aragon appeared off Capo San Marco, conducted from Sicily for the purpose of putting down Brancaleone's "rebellion". The attempt failed.

Following Marianus' death, Arborea passed to William III of Narbonne. Brancaleone retired to his estates at Monteleone. He disappears from the record mysteriously before the Battle of Sanluri in 1409.

References

[edit]
  • Luzzatto Guerrini, Teresa (1937). "I Doria". Novissima Enciclopedia Monografica Illustrata. Florence.{{cite book}}: CS1 maint: location missing publisher (link)
  • Fusero, Clemente (1973). I Doria. dall'Oglio.
  • Lingua, Paolo (2007). I Doria a Genova, una dinastia mancata. Genoa.{{cite book}}: CS1 maint: location missing publisher (link)

Stars

Watchers

Forks

Packages

No packages published