Getting Julia running on ATom

juno
first-steps

#1

I have linud mint and installed julia via the sudo apt-get install command.It installs julia version 0.4.5 . I am trying to run JUNO on atom. every time I run a basic command (say “2+2”) I encounter this error:

MethodError: bind has no method matching bind(::Media.Binding{Any}, ::Atom.Console, ::Task)
Closest candidates are:
_ bind{T}(!Matched::Lazy.Binding{T}, ::T, ::Task)_
_ bind{T}(!Matched::Function, !Matched::Lazy.Binding{T}, ::T)_”

While someone suggested changing julia codebase to 0.5, but I do not know how to do that. Someone please guide.


#2

Use the generic Linux binary from
https://julialang.org/downloads/


#3

I havedownloaded it, unzipped it. But I do not know how to use it. I am complete novice in both linux based commands and julia


#4

I posted some basic instructions here: Help Installing julia v0.5.2/v0.6 on fresh ubuntu install but let us know if you need more help or detail.


#5

Would you mind making a PR for the Julialang website for this?


#6

So, I downloaded the latest version of julia. How do I create a symlink(I added the directory to the path)? And then get ATOM to launch julia. Right now, the error message pops out saying
"We tried to launch Julia from:
julia
This path can be changed in the settings.
Details:
/bin/sh: 1: julia: not found"
all the while I can launch julia 0.5.2 from the terminal.


#7

If I recall correctly, Atom/Juno might need to be run from the terminal for it to have access to your PATH. Have you tried launching Atom by typing “atom” into a terminal?


#8

I am using Arch Linux and I have used my package manager to install Atom.

Below is my application file (created by default by pacman):

# /usr/share/applications/atom.desktop
[Desktop Entry]
Name=Atom
Comment=A hackable text editor for the 21st Century
GenericName=Text Editor
Exec=electron --app=/usr/lib/atom %F
Icon=atom
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Utility;TextEditor;Development;
MimeType=text/plain;

So, basically, I do run Atom using the .desktop file — you do not need to run it from terminal.

Since I am using compiled Julia binaries from source, I keep them installed at the corresponding /opt/julia-x folders. I simply point to the corresponding Julia binary from Atom settings (settings/packages/julia-client), e.g., /opt/julia-0.5/bin/julia.

However, you can create a symbolic link in your /usr/bin folder (whichever the correct path should be in your distro) by issuing

sudo ln --symbolic --interactive /opt/julia-0.5/bin/julia /usr/bin/julia

Above, --interactive switch will ask for confirmation before removing an already available symbol name. /opt/julia-0.5/bin/julia is where the binary is located in your system, and /usr/bin/julia is where your system searches for your applications by default.


#9

Ok. So creating symbolic links(in the /usr/local/bin) and removing other paths I’d created before did the trick for me.

I wish julia IDE had a simpler setup so that configuring it to work did’nt drive off potential users.

Thanks everyone for their support and patience.


#10

@ChrisRackauckas OK if you insist :wink:

https://github.com/JuliaLang/julialang.github.com/pull/574


#11

For a lightweight solution to run source in Atom on terminal:


#12

Atom 1.18.0 x64 on Debian Testing

I get this error when I try to run any Julia code in Atom (and doing what the error message suggests — Pkg.update() — makes no difference):

Error loading Atom.jl package
Go to the Packages → Julia → Open Terminal menu and
run Pkg.update()in Julia, then try again.
If you still see an issue, please report it to:
https://discourse.julialang.org/

Regards
Johann


#13

Have you tried installing both julia-client and uber-juno packages in your Atom? You can also try, before firing up your Atom, to Pkg.add("Atom"), and then start the IDE.


#14

Hello, ateykinar, I got the same issue, and when I try to Pkg.add(“atom”) regardless whether via spawning julia terminal either from Atom or from Windows command line, got the same stack trace:

ERROR: GitError(Code:ERROR, Class:Index, Invalid data in index - invalid entry)
Stacktrace:
 [1] macro expansion at .\libgit2\error.jl:99 [inlined]
 [2] #diff_tree#68(::Bool, ::Function, ::Base.LibGit2.GitRepo, ::Base.LibGit2.Gi
tTree, ::String) at .\libgit2\diff.jl:22
 [3] (::Base.LibGit2.#kw##diff_tree)(::Array{Any,1}, ::Base.LibGit2.#diff_tree,
::Base.LibGit2.GitRepo, ::Base.LibGit2.GitTree, ::String) at .\<missing>:0
 [4] #isdiff#76(::Bool, ::Function, ::Base.LibGit2.GitRepo, ::String, ::String)
at .\libgit2\libgit2.jl:149
 [5] (::Base.Pkg.Entry.##2#4)(::Base.LibGit2.GitRepo) at .\pkg\entry.jl:59
 [6] with(::Base.Pkg.Entry.##2#4, ::Base.LibGit2.GitRepo) at .\libgit2\types.jl:
608
 [7] macro expansion at .\pkg\entry.jl:57 [inlined]
 [8] macro expansion at .\task.jl:302 [inlined]
 [9] add(::String, ::Base.Pkg.Types.VersionSet) at .\pkg\entry.jl:51
 [10] (::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}})() a
t .\pkg\dir.jl:36
 [11] cd(::Base.Pkg.Dir.##4#7{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}}, :
:String) at .\file.jl:59
 [12] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{String,N}
 where N) at .\pkg\dir.jl:36
 [13] add(::String) at .\pkg\pkg.jl:117

So I guess I’m having problems with the Git repo setup, but since I’m a bit novice to both Julia and Git, need some help with 1) where Git settings are, and 2) what’s wrong with them. When done with these two, hopefully will be able to go on myself.


#15

Please disregard: it was due to non-clean install. When I reinstalled everything from scratch, got Julia Console working.