Skip to content
This repository has been archived by the owner on Jun 11, 2021. It is now read-only.

Linux support #49

Closed
funkymonkeymonk opened this issue Sep 3, 2014 · 276 comments
Closed

Linux support #49

funkymonkeymonk opened this issue Sep 3, 2014 · 276 comments

Comments

@funkymonkeymonk
Copy link

Are there any showstopping blockers to working on linux? It looks like a pretty handy tool and I'd love to try it out.

@jmorganca
Copy link
Contributor

👍

Kitematic is written in node-webkit so there aren't really any big blockers. A few of the binaries included like unison would need to be swapped out for a linux version. Some of the file paths would need to be updated as well. I'll follow up with more details once some of the pressing bugs (installer!) are patched.

Best part about Linux is no requirement on VirtualBox :)

@seanli seanli added the feature label Sep 4, 2014
@deepak1556
Copy link

i just tried something here as a starting point https://github.com/deepak1556/kitematic/tree/linux

@funkymonkeymonk
Copy link
Author

It looks like the dev environment is a running meteor server. Do you feel it would be a good idea to set up a Dockerfile which installs the dependencies via the package manager, and runs the dev environment? That seems like a first step and would allow both linux and OSX users to dev/work in the same environment.

Try looking at shipyard deploy as an example of what I'm thinking.

@ruffsl
Copy link

ruffsl commented Nov 25, 2014

👍 +1

@atrauzzi
Copy link

atrauzzi commented Feb 1, 2015

👍

8 similar comments
@saitodisse
Copy link

👍

@JasCodes
Copy link

+1

@deviantony
Copy link

+1

@grigio
Copy link

grigio commented Mar 12, 2015

+1

@rodrigobraga
Copy link

👍

@mraxilus
Copy link

👍

@sanderboom
Copy link

+1

@lf-jeremy
Copy link

+1

@Pyppe
Copy link

Pyppe commented Mar 12, 2015

upward pointed hand-extension
EDIT: 👍

@allanino
Copy link

+1

1 similar comment
@zetxx
Copy link

zetxx commented Mar 12, 2015

+1

@Nexion
Copy link

Nexion commented Mar 12, 2015

Yeah, linux support would be awesome.

@mereghost
Copy link

👍

5 similar comments
@ntiq
Copy link

ntiq commented Mar 12, 2015

+1

@nilleb
Copy link

nilleb commented Mar 12, 2015

+1

@bweston92
Copy link

+1

@matsu-hide8
Copy link

+1

@ranobrega
Copy link

+1

@antirek
Copy link

antirek commented Mar 13, 2015

@bweston92
Copy link

What about remote linux support to via ssh? :o


Sent from Mailbox

On Fri, Mar 13, 2015 at 4:57 AM, Dmitriev Sergey notifications@github.com
wrote:

+1

from twit https://twitter.com/kitematic/status/576037217702965248

Reply to this email directly or view it on GitHub:
#49 (comment)

@peernohell
Copy link

👍

3 similar comments
@sabatesduran
Copy link

+1

@Galmido
Copy link

Galmido commented Mar 13, 2015

+1

@ejb1123
Copy link

ejb1123 commented Mar 14, 2015

+1

@zedtux
Copy link
Contributor

zedtux commented Jun 15, 2016

What about Debian? Usually you create a package for Debian which is then available for Ubuntu.

@FrenchBen
Copy link
Contributor

@geovanisouza92 @carukc https://github.com/docker/kitematic/releases/tag/v0.12.0

@zedtux it was created for debian but Ubuntu being a bigger keyword, it's named Ubuntu.

@carukc
Copy link

carukc commented Jun 15, 2016

Fantastic! Thanks.

@HorvathAkosPeter
Copy link

+1

@safizn
Copy link

safizn commented Sep 10, 2016

Debian

@fahrradflucht
Copy link
Contributor

Doesn't the Ubuntu release run on Debian?

@brunosimioni
Copy link

+1

@adomenech73
Copy link
Contributor

adomenech73 commented Sep 27, 2016

@fahrradflucht @brunosimioni I'm sorry but I think that Ubuntu release will never run on Debian (or the other way arround) cause off different library versions on this distributions.
But the build process will give you the package needed, depending on the distribution you build from.
I think it's fair enough, if you use Debian you can build Debian packages and if you use Ubuntu you can build Ubuntu packages as well.
Off course you can always use vagrant or any virtualization technology, even a Dockerfile to to build cross-distribution packages.

@HorvathAkosPeter
Copy link

@adomenech73 Most Ubuntu packages and libs are coming from the debian repositories, so there is no real possibility of incompatibility. If yes, then it is easily solvable either by source recompiling, or by binary patching. But I never heard that such a problem had been happened.

@adomenech73
Copy link
Contributor

adomenech73 commented Oct 3, 2016

@HorvathAkosPeter That's true, but on the other hand Ubuntu comes from freezed
testing Debian sources, so most of the time library versions are notably
different between stable versions of both distributions also other aspects
(like boot process) are diferent ass well. I'm not very sure with
Kitematic, didn't try this really but I'm pretty sure that if I build a
Debian package of Docker and try to install it on Ubuntu (or vice versa)
will not work out of the box. Also the Kitematic deb package it's done
througth electron builder module and that will always create the package
with the dependencies linked to the distribution you are running from.

On Fri, Sep 30, 2016 at 1:36 PM, Peter Horvath notifications@github.com
wrote:

@adomenech73 https://github.com/adomenech73 Most Ubuntu packages and
libs are coming from the debian repositories, so there is no real
possibility of incompatibility. If yes, then it is easily solvable either
by source recompiling, or by binary patching. But I never heard that such a
problem had been happened.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#49 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AD2l9ECLyoDOtas6mO_L6zpwWWW5mCvSks5qvPQ4gaJpZM4CeNIE
.

{ Albert }
#113932

@fsan
Copy link

fsan commented Oct 4, 2016

+1

@FrenchBen
Copy link
Contributor

@adomenech73 Can you try the package before making assumptions and report back?

@adomenech73
Copy link
Contributor

@FrenchBen You are rigth, and I had to check before talking, and seems to be I was wrong after all.

I built two packages, one from ubuntu and one from debian. Both using with node 4.6.0

Both of them install indistinctly on both operating systems. So they are actually cross Distribution compatible packages (Ubuntu/Debian).

Seems to exist minimal differences on package size 35179928 bytes on Debian vs 35330018 on Ubuntu.

Just dynamic tag values variation on ldd over kitematic binary. (I attach both of the outputs)

ldd_debian.txt
ldd_ubuntu.txt

Seems to happen some sort of home loading page problem when it continuously search for remote repositories or images, but seems to be transversal because it happens exactly the same on any installation combination. I can login on my account and check my local images and containers without any problem.

@FrenchBen
Copy link
Contributor

Thanks @adomenech73 for sharing the results of cross-platform builds.

@wbartussek
Copy link

What would be the best way to get kitematic up and running on an arm64 architectured box (ODROID C2 with Ubuntu 16.04 in my case)?

@adomenech73
Copy link
Contributor

@wbartussek fistful you will need docker and node with grunt globally installed on the C2 then download there the kitematic sources either by cloning the repository with git or downloading any of the latests source release you also will need some requirements sudo apt-get install curl git dpkg fakeroot after that you must be able to build aarch64 package with grunt release you will find installable package under dist directory

@wbartussek
Copy link

Thanks a lot. Seems to be a challenge. For me this is a weekend activity. So I'll be back next Monday ;-)

@adomenech73
Copy link
Contributor

adomenech73 commented Oct 17, 2016

@wbartussek Don't be scared seems a lot but you will see it's simple. Docker you can install from Ubuntu itself sudo apt-get install docker.io you don't need latests version for that. Node I didn't explain cause you have multiple ways, but my favorite is using nvm, you can do with simple command curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.0/install.sh | bash and after you are can install any node version nvm install v4.6.0 is my recomendation, you can do this from the unprivileged user (you don't need sudo). You will also need to install grunt globally, yo can do this with npm install -g grunt-cli.
Finally you install the requirements as I pointed and download kitematic source. You will see it's not that hard!!

@wbartussek
Copy link

@adomenech73 Following your advice I got a bit further. However when I run npm installin dir /home/odroid/Downloads/kitematic-0.12.0, I get this error:

electron-prebuilt@0.36.12 postinstall /home/odroid/Downloads/kitematic-0.12.0/node_modules/electron-prebuilt
> node install.js

Downloading electron-v0.36.12-linux-arm64.zip
Error: GET https://github.com/electron/electron/releases/download/v0.36.12/electron-v0.36.12-linux-arm64.zip returned 404
/home/odroid/Downloads/kitematic-0.12.0/node_modules/electron-prebuilt/install.js:22
  throw err
  ^

Error: Failed to find Electron v0.36.12 for linux-arm64 at https://github.com/electron/electron/releases/download/v0.36.12/electron-v0.36.12-linux-arm64.zip

If you try to go to the referenced url you get of course also a 404. Looking at
https://github.com/electron/electron/releases?after=v0.37.6
(where you also find the v0.36.12 releases), it turns out that there is no arm64 zip file, but instead a file called
https://github.com/electron/electron/releases/download/v0.36.12/electron-v0.36.12-linux-arm.zip
This naming convention is also valid for all newer versions.
Now I searched the kitematic directory to find the file where I could replace this wrong reference. Unfortunately to no avail. So, I'm stuck right now.

@adomenech73
Copy link
Contributor

adomenech73 commented Oct 18, 2016

@wbartussek I'm so sorry you are totally on true, absolutely my fault!!
I have a serious mix-mess between docker products and architectures

As you pointed electron, still is not ported to arm64 (this happens often cause is still a very new arch and usually not supported still)

Even trying to cross compiling like pointed in Github gets broke when downloading chromium content.

Other ways I also was expecting to use kitematic was through docker-machine, seems to me better option to operate remotely over docker on ARM SoC cards, but also seems to be stuck.

I suppose we still have to wait to see a more general use of the arch
but good start point could be try to recover some of the work previously done by hypriot it could be a really smart feature

@andrefigueira
Copy link

+1

1 similar comment
@nooitaf
Copy link

nooitaf commented Apr 18, 2017

+1

@zh-h
Copy link

zh-h commented May 11, 2017

+10086

@phocean
Copy link

phocean commented Jun 28, 2017

RPM distributions DO exist, and they are popular (Fedora, OpenSUSE).

Please provide a RPM package.

@artddss
Copy link

artddss commented Jul 31, 2017

install archlinux

aur/kitematic-git 2172.e75c1c4-1 [installed: 2199.3aeba38-1] (0) (0.00)
Visual Docker Container Management

@Cris70
Copy link

Cris70 commented Oct 8, 2017

So, when will we see a Linux package? It's been nearly two years since Linux support was merged in, and still the home page says that Kitematic is "for Mac and Windows"? Come on!

@cancerberoSgx
Copy link

cancerberoSgx commented Nov 6, 2017

Maybe is responsibility of linux distributions (and users) to package it and maintain those packages (?)... archlinux is supporting it from 2015, see http://aur.archlinux.org/packages/kitematic and http://aur.archlinux.org/packages/kitematic-git

@mhelmetag
Copy link
Contributor

mhelmetag commented Nov 6, 2017

I would think that this is related to the release process. Kitematic is using a very old version of electron and release process. I feel like bumping the electron version, using electron forge for release and then running releases on travis (for mac and linux) and appveyor (for windows) would be the way to go.

I'm kinda working on this but am pretty new to the electron ecosystem so... any help would be appreciated (especially knowledge about migrating old electron projects and/or setting up release pipelines for appveyor).

EDIT: Actually there is an Ubuntu package (maybe .deb or something)... so there is linux support. But if you want other package types, I bet it's on you to implement that.

However... electron forge should help support more package types... so I think that would be a good update.

@cancerberoSgx
Copy link

cancerberoSgx commented Nov 6, 2017

@mhelmetag FYI Electron based apps in new linux systems have an ugly issue on native dialog (like alert, confirm, filechoosers, basically is not displaying characters...) electron/electron#9616 . Its happening in kinematic-git version and is fixed in new electron versions so I guess is a good idea to update it in kinematic ! :) . thanks

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

No branches or pull requests