Getting started with MISO on google cloud from a debian linux client for free

in utopian-io •  7 years ago  (edited)

The suggestion is to make the system be able to be built on the free tier of google, currently it fails on out of memory.

This post is based on work done by https://twitter.com/dmjio and I thank him for his support.

First of all, you can get $300 for signing up to google cloud to begin with but after that you have limited services for free. https://cloud.google.com/free/

In google cloud compute instances you have a free tier for f1-micro shared vms running debian for free.
First you want to setup your budget of zero
under https://console.cloud.google.com/billing
image

Then go to compute instances https://console.cloud.google.com/compute/instances
You can select us-east1 as the region.
image

on your linux client box :
cat ~/.ssh/id_rsa.pub

Then you edit the ssh keys and add that in :
image
Click on add item.

Then you can ssh into the machine, you can click on the ssh button.
image

That will open an ssh console
image

If you want to get your ip address you can curl ifconfig.io
jamesmikedupont@instance-1:~$ curl ifconfig.io

And then ssh to that address from your real ssh client

First get a prereq :
sudo apt-get install bzip2 git build-essential

Then install nix :
curl https://nixos.org/nix/install | sh

Then you can source that one time in your shell
. ~/.nix-profile/etc/profile.d/nix.sh

Now clone the repo :
git clone https://github.com/dmjio/miso

cd miso/sample-app
nix-build

This will take a long time, get some fresh coffee and have a lunch.

After that it fails and runs out of memory

Build with /nix/store/vigz250nbs474p2f8fzhbxpb260941ds-ghcjs-0.2.0.
unpacking sources
unpacking source archive /nix/store/jhjpph8vf8kf9rjicm02n5j5ar48v0yg-ghcjs-boot-8c54993-patched/boot/cabal/Cabal
source root is Cabal
patching sources
Run jailbreak-cabal to lift version restrictions on build inputs.
compileBuildDriverPhase
setupCompileFlags: -package-db=/tmp/nix-build-Cabal-1.22.8.0.drv-0/package.conf.d -build-runner -j1
[ 1 of 79] Compiling Distribution.PackageDescription.Utils ( Distribution/PackageDescription/Utils.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/PackageDescription/Utils.js_o )
[ 2 of 79] Compiling Distribution.Simple.CCompiler ( Distribution/Simple/CCompiler.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/CCompiler.js_o )
[ 3 of 79] Compiling Distribution.Simple.PreProcess.Unlit ( Distribution/Simple/PreProcess/Unlit.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/PreProcess/Unlit.js_o )
[ 4 of 79] Compiling Distribution.TestSuite ( Distribution/TestSuite.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/TestSuite.js_o )
[ 5 of 79] Compiling Distribution.Compat.CreatePipe ( Distribution/Compat/CreatePipe.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/CreatePipe.js_o )
[ 6 of 79] Compiling Distribution.GetOpt ( Distribution/GetOpt.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/GetOpt.js_o )
[ 7 of 79] Compiling Distribution.Compat.Binary ( Distribution/Compat/Binary.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/Binary.js_o )
[ 8 of 79] Compiling Distribution.Compat.ReadP ( Distribution/Compat/ReadP.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/ReadP.js_o )
[ 9 of 79] Compiling Distribution.ReadE ( Distribution/ReadE.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/ReadE.js_o )
[10 of 79] Compiling Distribution.Compat.Exception ( Distribution/Compat/Exception.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/Exception.js_o )
[11 of 79] Compiling Distribution.Compat.TempFile ( Distribution/Compat/TempFile.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/TempFile.js_o )
[12 of 79] Compiling Distribution.Compat.CopyFile ( Distribution/Compat/CopyFile.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/CopyFile.js_o )
[13 of 79] Compiling Distribution.Compat.Environment ( Distribution/Compat/Environment.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compat/Environment.js_o )
[14 of 79] Compiling Distribution.Text ( Distribution/Text.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Text.js_o )
[15 of 79] Compiling Distribution.ModuleName ( Distribution/ModuleName.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/ModuleName.js_o )
[16 of 79] Compiling Distribution.Verbosity ( Distribution/Verbosity.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Verbosity.js_o )
[17 of 79] Compiling Distribution.System ( Distribution/System.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/System.js_o )
[18 of 79] Compiling Language.Haskell.Extension ( Language/Haskell/Extension.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Language/Haskell/Extension.js_o )
[19 of 79] Compiling Distribution.Version ( Distribution/Version.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Version.js_o )
[20 of 79] Compiling Distribution.License ( Distribution/License.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/License.js_o )
[21 of 79] Compiling Distribution.Compiler ( Distribution/Compiler.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Compiler.js_o )
[22 of 79] Compiling Distribution.Simple.Compiler ( Distribution/Simple/Compiler.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Compiler.js_o )
[23 of 79] Compiling Distribution.Simple.GHC.ImplInfo ( Distribution/Simple/GHC/ImplInfo.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/GHC/ImplInfo.js_o )
[24 of 79] Compiling Distribution.Package ( Distribution/Package.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Package.js_o )
[25 of 79] Compiling Distribution.PackageDescription ( Distribution/PackageDescription.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/PackageDescription.js_o )
[26 of 79] Compiling Distribution.Simple.Utils ( Distribution/Simple/Utils.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Utils.js_o )
[27 of 79] Compiling Distribution.PackageDescription.Configuration ( Distribution/PackageDescription/Configuration.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/PackageDescription/Configuration.js_o )
[28 of 79] Compiling Distribution.Utils.NubList ( Distribution/Utils/NubList.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Utils/NubList.js_o )
[29 of 79] Compiling Distribution.Simple.Program.Find ( Distribution/Simple/Program/Find.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Find.js_o )
[30 of 79] Compiling Distribution.Simple.Program.Types ( Distribution/Simple/Program/Types.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Types.js_o )
[31 of 79] Compiling Distribution.Simple.Program.Run ( Distribution/Simple/Program/Run.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Run.js_o )
[32 of 79] Compiling Distribution.Simple.Program.Script ( Distribution/Simple/Program/Script.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Script.js_o )
[33 of 79] Compiling Distribution.Simple.Program.Ld ( Distribution/Simple/Program/Ld.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Ld.js_o )
[34 of 79] Compiling Distribution.Simple.Program.Builtin ( Distribution/Simple/Program/Builtin.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Builtin.js_o )
[35 of 79] Compiling Distribution.Simple.Program.Db ( Distribution/Simple/Program/Db.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Db.js_o )
[36 of 79] Compiling Distribution.Simple.Program ( Distribution/Simple/Program.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program.js_o )
[37 of 79] Compiling Distribution.Simple.Program.Hpc ( Distribution/Simple/Program/Hpc.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Hpc.js_o )
[38 of 79] Compiling Distribution.Simple.Program.Strip ( Distribution/Simple/Program/Strip.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Strip.js_o )
[39 of 79] Compiling Distribution.Simple.InstallDirs ( Distribution/Simple/InstallDirs.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/InstallDirs.js_o )
[40 of 79] Compiling Distribution.ParseUtils ( Distribution/ParseUtils.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/ParseUtils.js_o )
[41 of 79] Compiling Distribution.PackageDescription.Parse ( Distribution/PackageDescription/Parse.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/PackageDescription/Parse.js_o )
[42 of 79] Compiling Distribution.Simple.Command ( Distribution/Simple/Command.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Command.js_o )
[43 of 79] Compiling Distribution.Simple.Setup ( Distribution/Simple/Setup.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Setup.js_o )
[44 of 79] Compiling Distribution.Simple.Program.GHC ( Distribution/Simple/Program/GHC.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/GHC.js_o )
[45 of 79] Compiling Distribution.InstalledPackageInfo ( Distribution/InstalledPackageInfo.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/InstalledPackageInfo.js_o )
[46 of 79] Compiling Distribution.Simple.PackageIndex ( Distribution/Simple/PackageIndex.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/PackageIndex.js_o )
[47 of 79] Compiling Distribution.Simple.LocalBuildInfo ( Distribution/Simple/LocalBuildInfo.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/LocalBuildInfo.js_o )
[48 of 79] Compiling Distribution.Simple.BuildPaths ( Distribution/Simple/BuildPaths.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/BuildPaths.js_o )
[49 of 79] Compiling Distribution.Simple.Hpc ( Distribution/Simple/Hpc.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Hpc.js_o )
[50 of 79] Compiling Distribution.Simple.Program.Ar ( Distribution/Simple/Program/Ar.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/Ar.js_o )
[51 of 79] Compiling Distribution.Simple.JHC ( Distribution/Simple/JHC.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/JHC.js_o )
[52 of 79] Compiling Distribution.Simple.UHC ( Distribution/Simple/UHC.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/UHC.js_o )
[53 of 79] Compiling Distribution.Simple.HaskellSuite ( Distribution/Simple/HaskellSuite.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/HaskellSuite.js_o )
[54 of 79] Compiling Distribution.Simple.Build.Macros ( Distribution/Simple/Build/Macros.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Build/Macros.js_o )
[55 of 79] Compiling Distribution.Simple.Build.PathsModule ( Distribution/Simple/Build/PathsModule.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Build/PathsModule.js_o )
[56 of 79] Compiling Distribution.Simple.BuildTarget ( Distribution/Simple/BuildTarget.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/BuildTarget.js_o )
[57 of 79] Compiling Distribution.Simple.Program.HcPkg ( Distribution/Simple/Program/HcPkg.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Program/HcPkg.js_o )
[58 of 79] Compiling Distribution.Simple.LHC ( Distribution/Simple/LHC.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/LHC.js_o )
[59 of 79] Compiling Distribution.Simple.Test.Log ( Distribution/Simple/Test/Log.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Test/Log.js_o )
[60 of 79] Compiling Distribution.Simple.Test.LibV09 ( Distribution/Simple/Test/LibV09.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Test/LibV09.js_o )
[61 of 79] Compiling Distribution.Simple.PreProcess ( Distribution/Simple/PreProcess.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/PreProcess.js_o )
[62 of 79] Compiling Distribution.Simple.UserHooks ( Distribution/Simple/UserHooks.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/UserHooks.js_o )
[63 of 79] Compiling Distribution.Simple.Bench ( Distribution/Simple/Bench.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Bench.js_o )
[64 of 79] Compiling Distribution.Simple.Test.ExeV10 ( Distribution/Simple/Test/ExeV10.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Test/ExeV10.js_o )
[65 of 79] Compiling Distribution.Simple.Test ( Distribution/Simple/Test.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Test.js_o )
[66 of 79] Compiling Distribution.Simple.GHC.Internal ( Distribution/Simple/GHC/Internal.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/GHC/Internal.js_o )
[67 of 79] Compiling Distribution.Simple.GHCJS ( Distribution/Simple/GHCJS.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/GHCJS.js_o )
[68 of 79] Compiling Distribution.Simple.GHC.IPI642 ( Distribution/Simple/GHC/IPI642.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/GHC/IPI642.js_o )
[69 of 79] Compiling Distribution.Simple.GHC.IPI641 ( Distribution/Simple/GHC/IPI641.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/GHC/IPI641.js_o )
[70 of 79] Compiling Distribution.Simple.GHC ( Distribution/Simple/GHC.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/GHC.js_o )
[71 of 79] Compiling Distribution.Simple.Register ( Distribution/Simple/Register.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Register.js_o )
[72 of 79] Compiling Distribution.Simple.Build ( Distribution/Simple/Build.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Build.js_o )
[73 of 79] Compiling Distribution.Simple.Install ( Distribution/Simple/Install.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Install.js_o )
[74 of 79] Compiling Distribution.Simple.Haddock ( Distribution/Simple/Haddock.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Haddock.js_o )
[75 of 79] Compiling Distribution.PackageDescription.Check ( Distribution/PackageDescription/Check.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/PackageDescription/Check.js_o )
[76 of 79] Compiling Distribution.Simple.SrcDist ( Distribution/Simple/SrcDist.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/SrcDist.js_o )
[77 of 79] Compiling Distribution.Simple.Configure ( Distribution/Simple/Configure.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple/Configure.js_o )
[78 of 79] Compiling Distribution.Simple ( Distribution/Simple.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Distribution/Simple.js_o )
[79 of 79] Compiling Main             ( Setup.hs, /tmp/nix-build-Cabal-1.22.8.0.drv-0/Main.js_o )
Linking Setup.jsexe (Distribution.Compat.Binary,Distribution.Compat.CopyFile,Distribution.Compat.CreatePipe,Distribution.Compat.Environment,Distribution.Compat.Exception,Distribution.Compat.ReadP,Distribution.Compat.TempFile,Distribution.Compiler,Distribution.GetOpt,Distribution.InstalledPackageInfo,Distribution.License,Distribution.ModuleName,Distribution.Package,Distribution.PackageDescription,Distribution.PackageDescription.Check,Distribution.PackageDescription.Configuration,Distribution.PackageDescription.Parse,Distribution.PackageDescription.Utils,Distribution.ParseUtils,Distribution.ReadE,Distribution.Simple,Distribution.Simple.Bench,Distribution.Simple.Build,Distribution.Simple.Build.Macros,Distribution.Simple.Build.PathsModule,Distribution.Simple.BuildPaths,Distribution.Simple.BuildTarget,Distribution.Simple.CCompiler,Distribution.Simple.Command,Distribution.Simple.Compiler,Distribution.Simple.Configure,Distribution.Simple.GHC,Distribution.Simple.GHC.IPI641,Distribution.Simple.GHC.IPI642,Distribution.Simple.GHC.ImplInfo,Distribution.Simple.GHC.Internal,Distribution.Simple.GHCJS,Distribution.Simple.Haddock,Distribution.Simple.HaskellSuite,Distribution.Simple.Hpc,Distribution.Simple.Install,Distribution.Simple.InstallDirs,Distribution.Simple.JHC,Distribution.Simple.LHC,Distribution.Simple.LocalBuildInfo,Distribution.Simple.PackageIndex,Distribution.Simple.PreProcess,Distribution.Simple.PreProcess.Unlit,Distribution.Simple.Program,Distribution.Simple.Program.Ar,Distribution.Simple.Program.Builtin,Distribution.Simple.Program.Db,Distribution.Simple.Program.Find,Distribution.Simple.Program.GHC,Distribution.Simple.Program.HcPkg,Distribution.Simple.Program.Hpc,Distribution.Simple.Program.Ld,Distribution.Simple.Program.Run,Distribution.Simple.Program.Script,Distribution.Simple.Program.Strip,Distribution.Simple.Program.Types,Distribution.Simple.Register,Distribution.Simple.Setup,Distribution.Simple.SrcDist,Distribution.Simple.Test,Distribution.Simple.Test.ExeV10,Distribution.Simple.Test.LibV09,Distribution.Simple.Test.Log,Distribution.Simple.UHC,Distribution.Simple.UserHooks,Distribution.Simple.Utils,Distribution.System,Distribution.TestSuite,Distribution.Text,Distribution.Utils.NubList,Distribution.Verbosity,Distribution.Version,Language.Haskell.Extension,Main)
ghcjs-0.2.0-7.10.3.bin: out of memory (requested 2097152 bytes)
builder for ‘/nix/store/mnfp6a4a4qk07bzqaczx4qbh4jrxqkn9-Cabal-1.22.8.0.drv’ failed with exit code 1
fetching path ‘/nix/store/w2gh2pjx0njpk18b9vpdv6g17fdmg17l-qtlocation-5.9.1-dev’...
cannot build derivation ‘/nix/store/x1873c44hdgq59f2y2lq56bnmclq5kkf-hscolour-1.24.2.drv’: 1 dependencies couldn't be built
killing process 12392
cannot build derivation ‘/nix/store/xshx44z2b9hqwmd6jmr4lzfkmimh8700-Cabal-1.22.8.0.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/nix/store/9c9418ibcpq3jd88yg4h5whf70pryf08-miso-0.10.0.0.drv’: 1 dependencies couldn't be built
cannot build derivation ‘/nix/store/9djvn4z746r9zf34ncn98ig17xf5n6xp-app-0.1.0.0.drv’: 1 dependencies couldn't be built
error: build of ‘/nix/store/9djvn4z746r9zf34ncn98ig17xf5n6xp-app-0.1.0.0.drv’ failed



Posted on Utopian.io - Rewarding Open Source Contributors

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Your contribution can not be approved. You did not give any valid suggestion in this contribution which is the reason why it can not be approved. We appreciate your effort though but believe you can improve in your next contribution. Thank you.
You can contact us on Discord.
[utopian-moderator]

The suggestion is to make the system be able to be built on the free tier of google