Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blink.jl does not build in Docker Julia images #289

Closed
NLaws opened this issue Feb 2, 2022 · 7 comments
Closed

Blink.jl does not build in Docker Julia images #289

NLaws opened this issue Feb 2, 2022 · 7 comments

Comments

@NLaws
Copy link

NLaws commented Feb 2, 2022

I have added PlotlyJS.jl to my package dependencies (which has Blink.jl as a dependency) and I am not able to get Blink.jl to build in a Docker container from Ubuntu 18 or 20/latest. The issue may be Docker and/or Actions specific, I'm not sure. Here is the trace back, which is on Actions for my package here:

  Installing known registries into `~/.julia`
       Added registry `General` to `~/.julia/registries/General`
   Installed Pidfile ───────────────────── v1.2.0
   Installed Calculus ──────────────────── v0.5.1
   Installed DBFTables ─────────────────── v1.0.0
   Installed Lazy ──────────────────────── v0.15.1
   Installed TableTraits ───────────────── v1.0.1
   Installed Mux ───────────────────────── v0.7.6
   Installed Tables ────────────────────── v1.6.1
   Installed IteratorInterfaceExtensions ─ v1.0.0
   Installed Setfield ──────────────────── v0.8.1
   Installed JuMP ──────────────────────── v0.21.10
   Installed Mustache ──────────────────── v1.0.12
   Installed LogExpFunctions ───────────── v0.3.6
   Installed WebSockets ────────────────── v1.5.9
   Installed DocStringExtensions ───────── v0.8.6
   Installed IrrationalConstants ───────── v0.1.1
   Installed SentinelArrays ────────────── v1.3.11
   Installed Parameters ────────────────── v0.12.3
   Installed Roots ─────────────────────── v1.3.14
   Installed JSON ──────────────────────── v0.21.2
   Installed SpecialFunctions ──────────── v1.8.1
   Installed ChainRulesCore ────────────── v1.11.6
   Installed CodecZlib ─────────────────── v0.7.0
   Installed URIParser ─────────────────── v0.4.1
   Installed Shapefile ─────────────────── v0.7.3
   Installed Preferences ───────────────── v1.2.3
   Installed JSONSchema ────────────────── v0.3.4
   Installed IniFile ───────────────────── v0.5.0
   Installed DataValueInterfaces ───────── v1.0.0
   Installed Blink ─────────────────────── v0.12.5
   Installed DiffResults ───────────────── v1.0.3
   Installed PlotlyJS ──────────────────── v0.18.8
   Installed JSExpr ────────────────────── v0.5.3
   Installed UnPack ────────────────────── v1.0.2
   Installed LaTeXStrings ──────────────── v1.3.0
   Installed URIs ──────────────────────── v1.3.0
   Installed MbedTLS ───────────────────── v1.0.3
   Installed StaticArrays ──────────────── v1.3.3
   Installed GeoInterface ──────────────── v0.5.7
   Installed InverseFunctions ──────────── v0.1.2
   Installed PooledArrays ──────────────── v1.4.0
   Installed MathOptInterface ──────────── v0.9.22
   Installed WeakRefStrings ────────────── v1.1.0
   Installed JLLWrappers ───────────────── v1.4.0
   Installed FunctionalCollections ─────── v0.5.0
   Installed ChangesOfVariables ────────── v0.1.2
   Installed ConstructionBase ──────────── v1.3.0
   Installed CommonSubexpressions ──────── v0.3.0
   Installed OrderedCollections ────────── v1.4.1
   Installed MacroTools ────────────────── v0.5.9
   Installed Bzip2_jll ─────────────────── v1.0.8+0
   Installed NaNMath ───────────────────── v0.3.6
   Installed Parsers ───────────────────── v1.1.2
   Installed DiffRules ─────────────────── v1.9.0
   Installed BenchmarkTools ────────────── v1.2.2
   Installed BinDeps ───────────────────── v1.0.2
   Installed CommonSolve ───────────────── v0.2.0
   Installed CodecBzip2 ────────────────── v0.7.2
   Installed AssetRegistry ─────────────── v0.1.0
   Installed Hiccup ────────────────────── v0.2.2
   Installed Widgets ───────────────────── v0.6.4
   Installed PolygonInbounds ───────────── v0.2.0
   Installed Compat ────────────────────── v3.41.0
   Installed MutableArithmetics ────────── v0.2.22
   Installed CSV ───────────────────────── v0.8.5
   Installed Observables ───────────────── v0.4.0
   Installed ForwardDiff ───────────────── v0.10.25
   Installed ColorTypes ────────────────── v0.11.0
   Installed OpenSpecFun_jll ───────────── v0.5.5+0
   Installed LinDistFlow ───────────────── v0.1.1
   Installed TranscodingStreams ────────── v0.9.6
   Installed PlotlyBase ────────────────── v0.8.18
   Installed Colors ────────────────────── v0.12.8
   Installed FixedPointNumbers ─────────── v0.8.4
   Installed Kaleido_jll ───────────────── v0.1.0+0
   Installed Requires ──────────────────── v1.3.0
   Installed HTTP ──────────────────────── v0.9.17
   Installed DataStructures ────────────── v0.18.11
   Installed RecipesBase ───────────────── v1.2.1
   Installed WebIO ─────────────────────── v0.8.16
   Installed DataAPI ───────────────────── v1.9.0
   Installed Reexport ──────────────────── v1.2.2
   Installed ColorSchemes ──────────────── v3.16.0
    Building WebIO ───→ `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/5fe32e4086d49f7ab9b087296742859f3ae6d62a/build.log`
    Building Blink ───→ `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/08d0b679fd7caa49e2bca9214b131289e19808c0/build.log`
ERROR: Error building `Blink`: 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   664  100   664    0     0   4229      0 --:--:-- --:--:-- --:--:--  4202

100 71.6M  100 71.6M    0     0   118M      0 --:--:-- --:--:-- --:--:--  118M
ERROR: LoadError: IOError: could not spawn `unzip -q electron-v4.0.4-linux-x64.zip -d atom`: no such file or directory (ENOENT)
Stacktrace:
  [1] _spawn_primitive(file::String, cmd::Cmd, stdio::Vector{Any})
    @ Base ./process.jl:99
  [2] #637
    @ ./process.jl:112 [inlined]
  [3] setup_stdios(f::Base.var"#637#638"{Cmd}, stdios::Vector{Any})
    @ Base ./process.jl:196
  [4] _spawn
    @ ./process.jl:111 [inlined]
  [5] run(::Cmd; wait::Bool)
    @ Base ./process.jl:439
  [6] run
    @ ./process.jl:438 [inlined]
  [7] (::Main.BuildBlink.var"#1#2")()
    @ Main.BuildBlink ~/.julia/packages/Blink/mwJC9/src/AtomShell/install.jl:66
  [8] cd(f::Main.BuildBlink.var"#1#2", dir::String)
    @ Base.Filesystem ./file.jl:106
  [9] install()
    @ Main.BuildBlink ~/.julia/packages/Blink/mwJC9/src/AtomShell/install.jl:27
 [10] top-level scope
    @ ~/.julia/packages/Blink/mwJC9/deps/build.jl:14
 [11] include(fname::String)
    @ Base.MainInclude ./client.jl:444
 [12] top-level scope
    @ none:5
in expression starting at /root/.julia/packages/Blink/mwJC9/deps/build.jl:1
Stacktrace:
  [1] pkgerror(msg::String)
    @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:55
  [2] (::Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec})()
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1049
  [3] withenv(::Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, ::Pair{String, String}, ::Vararg{Pair{String, B} where B, N} where N)
    @ Base ./env.jl:161
  [4] (::Pkg.Operations.var"#109#113"{String, Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.PackageSpec})()
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1547
  [5] with_temp_env(fn::Pkg.Operations.var"#109#113"{String, Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.PackageSpec}, temp_env::String)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1449
  [6] (::Pkg.Operations.var"#108#112"{Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String})(tmp::String)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1522
  [7] mktempdir(fn::Pkg.Operations.var"#108#112"{Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String}, parent::String; prefix::String)
    @ Base.Filesystem ./file.jl:729
  [8] mktempdir(fn::Function, parent::String) (repeats 2 times)
    @ Base.Filesystem ./file.jl:727
  [9] sandbox(fn::Function, ctx::Pkg.Types.Context, target::Pkg.Types.PackageSpec, target_path::String, sandbox_path::String, sandbox_project_override::Pkg.Types.Project)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1488
 [10] build_versions(ctx::Pkg.Types.Context, uuids::Vector{Base.UUID}; verbose::Bool)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1030
 [11] instantiate(ctx::Pkg.Types.Context; manifest::Nothing, update_registry::Bool, verbose::Bool, platform::Base.BinaryPlatforms.Platform, allow_build::Bool, allow_autoprecomp::Bool, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:1416
 [12] test(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; coverage::Bool, julia_args::Cmd, test_args::Cmd, test_fn::Nothing)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1628
 [13] test(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; coverage::Bool, test_fn::Nothing, julia_args::Cmd, test_args::Vector{String}, kwargs::Base.Iterators.Pairs{Symbol, Base.PipeEndpoint, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.PipeEndpoint}}})
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:343
 [14] test(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.PipeEndpoint, kwargs::Base.Iterators.Pairs{Symbol, Vector{String}, Tuple{Symbol}, NamedTuple{(:test_args,), Tuple{Vector{String}}}})
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:80
 [15] #test#63
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:76 [inlined]
 [16] #test#62
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:75 [inlined]
 [17] top-level scope
    @ none:1
Error: Process completed with exit code 1.

@NLaws NLaws changed the title Blink.jl does not build in Docker on Github Actions Blink.jl does not build in Docker julia:1.6.5 image Feb 2, 2022
@NLaws
Copy link
Author

NLaws commented Feb 2, 2022

I have isolated the issue to Docker. With the Dockerfile:

FROM julia:1.6.5
CMD ["bash"]

Building the file with:

docker build -t jul165 .

Then

docker run -it jul165 julia -e 'using Pkg; Pkg.add("Blink")'

yields:

  Installing known registries into `~/.julia`
       Added registry `General` to `~/.julia/registries/General`
   Resolving package versions...
   Installed Pidfile ───────────────────── v1.2.0
   Installed Lazy ──────────────────────── v0.15.1
   Installed Mux ───────────────────────── v0.7.6
   Installed Mustache ──────────────────── v1.0.12
   Installed TableTraits ───────────────── v1.0.1
   Installed Tables ────────────────────── v1.6.1
   Installed WebSockets ────────────────── v1.5.9
   Installed DataValueInterfaces ───────── v1.0.0
   Installed IteratorInterfaceExtensions ─ v1.0.0
   Installed Blink ─────────────────────── v0.12.5
   Installed IniFile ───────────────────── v0.5.0
   Installed JSExpr ────────────────────── v0.5.3
   Installed URIParser ─────────────────── v0.4.1
   Installed JSON ──────────────────────── v0.21.2
   Installed MbedTLS ───────────────────── v1.0.3
   Installed MacroTools ────────────────── v0.5.9
   Installed URIs ──────────────────────── v1.3.0
   Installed FunctionalCollections ─────── v0.5.0
   Installed Parsers ───────────────────── v2.2.1
   Installed OrderedCollections ────────── v1.4.1
   Installed Hiccup ────────────────────── v0.2.2
   Installed AssetRegistry ─────────────── v0.1.0
   Installed Widgets ───────────────────── v0.6.4
   Installed Observables ───────────────── v0.4.0
   Installed BinDeps ───────────────────── v1.0.2
   Installed ColorTypes ────────────────── v0.11.0
   Installed Requires ──────────────────── v1.3.0
   Installed HTTP ──────────────────────── v0.9.17
   Installed Colors ────────────────────── v0.12.8
   Installed DataAPI ───────────────────── v1.9.0
   Installed FixedPointNumbers ─────────── v0.8.4
   Installed Reexport ──────────────────── v1.2.2
   Installed WebIO ─────────────────────── v0.8.16
    Updating `~/.julia/environments/v1.6/Project.toml`
  [ad839575] + Blink v0.12.5
    Updating `~/.julia/environments/v1.6/Manifest.toml`
  [bf4720bc] + AssetRegistry v0.1.0
  [9e28174c] + BinDeps v1.0.2
  [ad839575] + Blink v0.12.5
  [3da002f7] + ColorTypes v0.11.0
  [5ae59095] + Colors v0.12.8
  [9a962f9c] + DataAPI v1.9.0
  [e2d170a0] + DataValueInterfaces v1.0.0
  [53c48c17] + FixedPointNumbers v0.8.4
  [de31a74c] + FunctionalCollections v0.5.0
  [cd3eb016] + HTTP v0.9.17
  [9fb69e20] + Hiccup v0.2.2
  [83e8ac13] + IniFile v0.5.0
  [82899510] + IteratorInterfaceExtensions v1.0.0
  [97c1335a] + JSExpr v0.5.3
  [682c06a0] + JSON v0.21.2
  [50d2b5c4] + Lazy v0.15.1
  [1914dd2f] + MacroTools v0.5.9
  [739be429] + MbedTLS v1.0.3
  [ffc61752] + Mustache v1.0.12
  [a975b10e] + Mux v0.7.6
  [510215fc] + Observables v0.4.0
  [bac558e1] + OrderedCollections v1.4.1
  [69de0a69] + Parsers v2.2.1
  [fa939f87] + Pidfile v1.2.0
  [189a3867] + Reexport v1.2.2
  [ae029012] + Requires v1.3.0
  [3783bdb8] + TableTraits v1.0.1
  [bd369af6] + Tables v1.6.1
  [30578b45] + URIParser v0.4.1
  [5c2747f8] + URIs v1.3.0
  [0f1e0344] + WebIO v0.8.16
  [104b5d7c] + WebSockets v1.5.9
  [cc8bc4a8] + Widgets v0.6.4
  [0dad84c5] + ArgTools
  [56f22d72] + Artifacts
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [8ba89e20] + Distributed
  [f43a241f] + Downloads
  [7b1f6079] + FileWatching
  [b77e0a4c] + InteractiveUtils
  [b27032c2] + LibCURL
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [37e2e46d] + LinearAlgebra
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [a63ad114] + Mmap
  [ca575930] + NetworkOptions
  [44cfe95a] + Pkg
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA
  [9e88b42a] + Serialization
  [6462fe0b] + Sockets
  [2f01184e] + SparseArrays
  [10745b16] + Statistics
  [fa267f1f] + TOML
  [a4e569a6] + Tar
  [8dfed614] + Test
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode
  [deac9b47] + LibCURL_jll
  [29816b5a] + LibSSH2_jll
  [c8ffd9c3] + MbedTLS_jll
  [14a3606d] + MozillaCACerts_jll
  [83775a58] + Zlib_jll
  [8e850ede] + nghttp2_jll
  [3f19e933] + p7zip_jll
    Building WebIO  `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/5fe32e4086d49f7ab9b087296742859f3ae6d62a/build.log`
    Building Blink  `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/08d0b679fd7caa49e2bca9214b131289e19808c0/build.log`
ERROR: Error building `Blink`: 
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   664  100   664    0     0   2813      0 --:--:-- --:--:-- --:--:--  2813
100 71.6M  100 71.6M    0     0  3446k      0  0:00:21  0:00:21 --:--:-- 2876k
ERROR: LoadError: IOError: could not spawn `unzip -q electron-v4.0.4-linux-x64.zip -d atom`: no such file or directory (ENOENT)
Stacktrace:
  [1] _spawn_primitive(file::String, cmd::Cmd, stdio::Vector{Any})
    @ Base ./process.jl:99
  [2] #637
    @ ./process.jl:112 [inlined]
  [3] setup_stdios(f::Base.var"#637#638"{Cmd}, stdios::Vector{Any})
    @ Base ./process.jl:196
  [4] _spawn
    @ ./process.jl:111 [inlined]
  [5] run(::Cmd; wait::Bool)
    @ Base ./process.jl:439
  [6] run
    @ ./process.jl:438 [inlined]
  [7] (::Main.BuildBlink.var"#1#2")()
    @ Main.BuildBlink ~/.julia/packages/Blink/mwJC9/src/AtomShell/install.jl:66
  [8] cd(f::Main.BuildBlink.var"#1#2", dir::String)
    @ Base.Filesystem ./file.jl:106
  [9] install()
    @ Main.BuildBlink ~/.julia/packages/Blink/mwJC9/src/AtomShell/install.jl:27
 [10] top-level scope
    @ ~/.julia/packages/Blink/mwJC9/deps/build.jl:14
 [11] include(fname::String)
    @ Base.MainInclude ./client.jl:444
 [12] top-level scope
    @ none:5
in expression starting at /root/.julia/packages/Blink/mwJC9/deps/build.jl:1
Stacktrace:
  [1] pkgerror(msg::String)
    @ Pkg.Types /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Types.jl:55
  [2] (::Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec})()
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1049
  [3] withenv(::Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, ::Pair{String, String}, ::Vararg{Pair{String, B} where B, N} where N)
    @ Base ./env.jl:161
  [4] (::Pkg.Operations.var"#109#113"{String, Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.PackageSpec})()
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1547
  [5] with_temp_env(fn::Pkg.Operations.var"#109#113"{String, Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.PackageSpec}, temp_env::String)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1449
  [6] (::Pkg.Operations.var"#108#112"{Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String})(tmp::String)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1522
  [7] mktempdir(fn::Pkg.Operations.var"#108#112"{Pkg.Operations.var"#82#87"{Bool, Pkg.Types.Context, String, Pkg.Types.PackageSpec}, Pkg.Types.Context, Pkg.Types.PackageSpec, String, Pkg.Types.Project, String}, parent::String; prefix::String)
    @ Base.Filesystem ./file.jl:729
  [8] mktempdir(fn::Function, parent::String) (repeats 2 times)
    @ Base.Filesystem ./file.jl:727
  [9] sandbox(fn::Function, ctx::Pkg.Types.Context, target::Pkg.Types.PackageSpec, target_path::String, sandbox_path::String, sandbox_project_override::Pkg.Types.Project)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1488
 [10] build_versions(ctx::Pkg.Types.Context, uuids::Vector{Base.UUID}; verbose::Bool)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1030
 [11] build_versions
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:957 [inlined]
 [12] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}, new_git::Vector{Base.UUID}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform)
    @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:1246
 [13] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, kwargs::Base.Iterators.Pairs{Symbol, Base.TTY, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.TTY}}})
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:204
 [14] add(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:80
 [15] add(pkgs::Vector{Pkg.Types.PackageSpec})
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:78
 [16] #add#23
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:76 [inlined]
 [17] add
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:76 [inlined]
 [18] #add#22
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:75 [inlined]
 [19] add(pkg::String)
    @ Pkg.API /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/API.jl:75
 [20] top-level scope
    @ none:1

@NLaws NLaws changed the title Blink.jl does not build in Docker julia:1.6.5 image Blink.jl does not build in Docker Julia images Mar 8, 2022
@NLaws
Copy link
Author

NLaws commented Mar 8, 2022

also does not build in Julia 1.7 image

@francoislaurent
Copy link

ERROR: LoadError: IOError: could not spawn unzip -q electron-v4.0.4-linux-x64.zip -d atom: no such file or directory (ENOENT)

In a custom image, I fixed this error with:
apt-get install -y unzip

@NLaws
Copy link
Author

NLaws commented Jun 7, 2022

I guess this is operating system dependent, but whatever OS the official Julia images are built on do not include unzip. If I add RUN apt-get install -y unzip to the Dockerfile FROM julia:1.7.3 I get:

nlaws-> docker build -t jul173 .
[+] Building 1.8s (6/6) FINISHED                                                                                                                                                                                        
 => [internal] load build definition from Dockerfile                                                                                                                                                               0.0s
 => => transferring dockerfile: 107B                                                                                                                                                                               0.0s
 => [internal] load .dockerignore                                                                                                                                                                                  0.0s
 => => transferring context: 2B                                                                                                                                                                                    0.0s
 => [internal] load metadata for docker.io/library/julia:1.7.3                                                                                                                                                     1.1s
 => [auth] library/julia:pull token for registry-1.docker.io                                                                                                                                                       0.0s
 => CACHED [1/2] FROM docker.io/library/julia:1.7.3@sha256:3bb787d5131372f0a451d1c3f611d808d6134a11ec29ffb1dc9f49de15a0b3c4                                                                                        0.0s
 => ERROR [2/2] RUN apt-get install -y unzip                                                                                                                                                                       0.4s
------                                                                                                                                                                                                                  
 > [2/2] RUN apt-get install -y unzip:
#6 0.389 Reading package lists...
#6 0.405 Building dependency tree...
#6 0.407 Reading state information...
#6 0.413 E: Unable to locate package unzip
------
executor failed running [/bin/sh -c apt-get install -y unzip]: exit code: 100

Maybe the most sustainable solution to this issue is to remove the need for unzip from the Blink.jl build process?

@NLaws NLaws closed this as completed Jun 7, 2022
@NLaws NLaws reopened this Jun 7, 2022
@francoislaurent
Copy link

What about:
RUN apt-get update && apt-get install -y unzip
instead?

@NLaws
Copy link
Author

NLaws commented Jun 7, 2022

@francoislaurent Yep that fixed it. Thank you!

@NLaws NLaws closed this as completed Jun 7, 2022
@francoislaurent
Copy link

As a complementary note, you may run into permission issues on instantiating a Blink Window, as many people did with docker containers.

I solved this issue similarly installing dependencies for electron: libgtk-3-0 libnss3 libxss1 libasound2

I must mention I also previously installed git and xvfb, for other purposes, which might have made other electron dependencies available, that would otherwise be missing in the original docker image.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants