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
Then go to compute instances https://console.cloud.google.com/compute/instances
You can select us-east1 as the region.
on your linux client box :
cat ~/.ssh/id_rsa.pub
Then you edit the ssh keys and add that in :
Click on add item.
Then you can ssh into the machine, you can click on the ssh button.
That will open an ssh console
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
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]
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
The suggestion is to make the system be able to be built on the free tier of google
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit