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

GitHub Desktop for Linux? #1525

Open
hmtxz opened this issue May 17, 2017 · 308 comments
Open

GitHub Desktop for Linux? #1525

hmtxz opened this issue May 17, 2017 · 308 comments
Labels
enhancement linux Issues specific to Desktop usage on Linux not-planned Not in the team's roadmap

Comments

@hmtxz
Copy link

hmtxz commented May 17, 2017

Updating this issue with response from @billygriffin from the GitHub Desktop team (updated early 2021):

We have no immediate plans to support an official Linux version, but we continue to evaluate it alongside our other priorities and we know it's important to many people out there. I also know "maybe someday" is a disappointing response and I apologize for that. We're enormously grateful that @shiftkey has built a fork (https://github.com/shiftkey/desktop) and that many people are using that successfully, but @shiftkey is only one person and I hope people will understand that he's not always able to keep it entirely up to date with the official version.

I assure you that if/when we're able to commit to supporting a Linux version, we'll update this issue accordingly, and I appreciate your ask for a more "official" answer.

I'd also ask that others please refrain from responding to this issue with "when though?", "I want this too", or similar responses. Thanks!


Original issue content:

Please make Github Desktop available for linux user 😃

Update : There is a fork with prebuilt Linux binaries by @shiftkey here https://github.com/shiftkey/desktop

@shiftkey
Copy link
Member

shiftkey commented May 17, 2017

@hamaminatu this is an excellent question!

Currently our focus is on catching up to feature parity with the classic Desktop apps, and getting what we've built battle-tested, so I don't think this will be on our radar before we hit 1.0.

However I'm not aware of any current technical blockers for supporting Electron on Linux distros:

  • dugite-native - the Git package we use in Desktop - has been tested on recent Ubuntu and Fedora distros, and the Atom team are using it
  • Electron itself is built on Ubuntu 12.04 - I know other tools like VSCode support a bunch of distros, but maybe there's gaps in the official support for other platforms that we need to address
  • there's various Electron API differences - both in availability and behaviour - between macOS, Windows and Linux. For an example, read the BrowserWindow docs to see just how many differences are identified. We'd already do work differentiating between macOS and Windows in areas of the app - this is more work we need to build in and test.
  • what platform resources are there for the various Linux window managers that are available? We like to adhere to the macOS Human Interface Guidelines and the Windows Design Guidelines as much as possible.

We want to ensure a Linux version has the same high standard of quality as the other platforms we support, and given our lack of in-house expertise with the Linux ecosystem we'd love to get the community involved with this effort. So if you care to help us with knowledge, platform experience or testing, please upvote this issue or comment with how you can help!

We can also open in the interim to lay this groundwork, like #273, so we can steadily move towards this goal.

@cruzerld
Copy link

I'm a Linux / Windows / Mac desktop dev and i have some expertise in a few different ways of setting up apt and rpm repos. I've set some up manually on S3 and have used Artifactory to host repos as well. I feel like most node / electron tools pretty much stopped at building the .deb and .rpm so if interested maybe I can build a package or two to help out there? I've also built an .arch package in the past but that was a while back.

@ziggy42
Copy link
Contributor

ziggy42 commented May 17, 2017

For the packaging part, you should also consider appimages, snaps or flatpaks to support multiple distributions with a single package.

@introwit
Copy link

Have used the GitHub desktop app for windows for quite a long time before switching to Ubuntu this year, so I could help with testing it out on Linux and give my feedback whether it's the same experience and how the app performance is compared to the other platform versions.

@shiftkey
Copy link
Member

Tagging this as future-work as our 1.0 work and stabilization is the current focus.

@joshmhanson
Copy link

what platform resources are there for the various Linux window managers that are available? We like to adhere to the macOS Human Interface Guidelines and the Windows Design Guidelines as much as possible.

@shiftkey

GNOME HIG: https://developer.gnome.org/hig/stable/
KDE HIG: https://community.kde.org/KDE_Visual_Design_Group/HIG

Electron-based apps tend to work the same on all desktops, but if you do want to know where to focus your efforts, I suggest making sure it works great on GNOME, since that is the default (or will be soon) for the two most popular and commercially-supported distributions (Ubuntu and Fedora) as well as for Debian.

@joshaber joshaber changed the title Github Desktop for Linux??? Github Desktop for Linux? May 17, 2017
@picandocodigo
Copy link
Contributor

picandocodigo commented May 17, 2017

I got it working on my system! (Debian GNU/Linux 9) I have never used Electron before and have very little experience with Node, so it took some workarounds. You can check the work in progress in my fork. There's still lots of stuff to do but it works!
github-desktop

@prijindal
Copy link

@picandocodigo
Works on Arch linux (4.9.27-1) with GNOME (3.24.2)

@lilianmoraru
Copy link

People seem to report of it working.
Linux is open-source, one can easily test the app in a VM(and Travis is already set).
Seems just like an extended "thank you" to Linus Torvalds.

@z0al
Copy link
Contributor

z0al commented May 18, 2017

I'm a Ubuntu user and would love you contribute and test the Linux version. At least I can then remove the slow Win10 (VM) I currently use for contribution 😅

@prajapati-parth
Copy link

prajapati-parth commented May 18, 2017

For the packaging part, you should also consider appimages, snaps or flatpaks to support multiple distributions with a single package.

@ziggy42 VS Code is open sourced. We could use that for packing reference.

Electron-based apps tend to work the same on all desktops

@hanjiexi Agreed. Also GitKraken is an excellent example for this.

@ziggy42
Copy link
Contributor

ziggy42 commented May 18, 2017

@prajapati-parth I'm fine with .deb and .rpm (I only use Ubuntu and Fedora so I'm covered 😄 ), but there are also examples using Appimages, like Microsoft BotFramework-Emulator.

Anyway, as long as you don't only ship debs, I'm fine 👌

@ankibalyan
Copy link

I'm also a ubuntu user, would love to see github on linux, also I'd like to go from 0.1 stage itself for testing.

@gengjiawen
Copy link
Contributor

gengjiawen commented May 18, 2017

I have use travis ci to build github linux client, anyone interested can give it a try. Binary download : https://github.com/gengjiawen/desktop/releases.

@joshaber joshaber changed the title Github Desktop for Linux? GitHub Desktop for Linux? May 18, 2017
@hron84
Copy link

hron84 commented May 18, 2017

@gengjiawen the 0.5.4 release has no binary. What is the difference between alpha2 and final 0.5.4?

@hron84
Copy link

hron84 commented May 19, 2017

Also, I wanna state here 0.5.4-alpha2 is works like a charm. I just downloaded yesterday, but can't wait to be GitHub officially on Linux.

@gengjiawen
Copy link
Contributor

@hron84 Use the alpha version, since the linux version has not been fully tested. The 0.5.4 tag is not what i want, but github dont allow you to delete a tag release, just ignore it.
And also glad to hear it works.

@hron84
Copy link

hron84 commented May 19, 2017

@gengjiawen OK, thanks for the reply. Random tips: ship an icon with deb-rpm files, and also add a Category field to the .desktop file. If you can point me to the linux build script, I can make you few modifications to ship better packages later.

@gengjiawen
Copy link
Contributor

gengjiawen commented May 19, 2017

You can fork my repo and change it (branch ci_build). The config file is the root package.json. And if you want other linux distro, you can config this file too. I hope Github desktop team will consider switch to electron builder.Because with electron builder we can use travis ci and appveyor to build multi platform binary.
Have fun :)

@hron84
Copy link

hron84 commented May 19, 2017

@gengjiawen next week i will check it out.

@hmtxz
Copy link
Author

hmtxz commented May 23, 2017

hope it will available in AUR too 😄

@ankibalyan
Copy link

@gengjiawen tried 0.5.4 with source compilation, its working fine, will keep on testing.

@kleinen
Copy link

kleinen commented May 23, 2017

Seems I am getting hung up on 2FA code entry when connecting to Github Enterprise. Works on Windows/Mac just fine, but Linux seems to never finish verifying the code. If anyone wants any data or info, let me know what you want me to gather (and how to get it since I am not experienced in the ways of Electron/Node).

@kleinen
Copy link

kleinen commented May 23, 2017

I would also be a huge proponent for this feature as an enterprise customer that would like to have this for 300+ people. I've been working my account rep to see if they can help drive the priority of this. 👍

@lypborges
Copy link

lypborges commented May 24, 2017

@picandocodigo I tried your fork last night. But didn't work. I think it's because I'm using node x64 arch or maybe I'm missing something.

 lypborges  ~/Develop/GitHub/desktop  master  npm start                                                ✓  1732  22:30:14 
npm WARN lifecycle The node binary used for scripts is /home/lypborges/.asdf/shims/node but npm is using /home/lypborges/.asdf/installs/nodejs/7.10.0/bin/node itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.

> @ start /home/lypborges/Develop/GitHub/desktop
> cross-env NODE_ENV=development node script/start

I dunno how to run on x64 :(

npm ERR! Linux 4.8.0-52-generic
npm ERR! argv "/home/lypborges/.asdf/installs/nodejs/7.10.0/bin/node" "/home/lypborges/.asdf/installs/nodejs/7.10.0/bin/npm" "start"
npm ERR! node v7.10.0
npm ERR! npm  v4.2.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ start: `cross-env NODE_ENV=development node script/start`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the @ start script 'cross-env NODE_ENV=development node script/start'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the  package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     cross-env NODE_ENV=development node script/start
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs 
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls 
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:

I'll keep trying, but If you have any tips. Tks 🚀 🐧

@shiftkey
Copy link
Member

Seems I am getting hung up on 2FA code entry when connecting to Github Enterprise.

@kleinen this might be #1628 - could you confirm which version of GitHub Enterprise you are connecting to?

@worldofgeese
Copy link

worldofgeese commented May 31, 2023

Can I emulate the Windows version of the GitHub Desktop app on Linux (Ubuntu) using WINE, CrossOver, PlayOnLinux, etc?

As mentioned so often before:

you can run GitHub Desktop natively on Linux:

You'll find binaries, a deb, a rpm package and an AppImage here. But as mentioned earlier, I would recommend using the FlatPak package as this is even using nice containerisation as well as automated updates:

  1. setup FlatPak
  2. type flatpak install flathub io.github.shiftey.Desktop in your favourite shell or click the Install button here
  3. profit tada

This issue is now open since 2017 and people still think that they can't run GitHub Desktop on Linux because below all of the useful posts people are just spamming around.

I was pleasantly surprised to learn GitHub Desktop is available from Flathub! When I installed and ran it, I encountered an instant crash which I've reported here.

@Lunarequest

This comment was marked as off-topic.

@worldofgeese
Copy link

worldofgeese commented May 31, 2023

Can I emulate the Windows version of the GitHub Desktop app on Linux (Ubuntu) using WINE, CrossOver, PlayOnLinux, etc?

As mentioned so often before:
you can run GitHub Desktop natively on Linux:
You'll find binaries, a deb, a rpm package and an AppImage here. But as mentioned earlier, I would recommend using the FlatPak package as this is even using nice containerisation as well as automated updates:

  1. setup FlatPak
  2. type flatpak install flathub io.github.shiftey.Desktop in your favourite shell or click the Install button here
  3. profit tada

This issue is now open since 2017 and people still think that they can't run GitHub Desktop on Linux because below all of the useful posts people are just spamming around.

I was pleasantly surprised to learn GitHub Desktop is available from Flathub! When I installed and ran it, I encountered into an instant crash which I've reported here.

this isn't a issue with our distribution of github desktop but rather with clear linux which uses extreme compile flags that eg -O3 that are known to cause issues in the pursuit of performance

I'm not sure that's fair. I use tons of Flatpaks on Clear (Clear ships with Flatpak) and this is the first crash I've experienced. That does make it sound like your package is the source, not Clear Linux, and worthy of investigation. The AppImage of GitHub Desktop runs great! I'd encourage you to reopen the issue I submitted.

@Lunarequest

This comment was marked as off-topic.

@RokeJulianLockhart
Copy link

RokeJulianLockhart commented Jun 10, 2023

@Lunarequest and @worldofgeese, please mark #1525 (comment), #1525 (comment), and #1525 (comment) as off-topic, and discuss this issue over at flathub/io.github.shiftey.Desktop#110, where it obviously should be discussed instead.

I'm setting my notifications to Custom > Closed and Reopened, so @RokeJulianLockhart me if you want me to see anything.

@theofficialgman
Copy link
Contributor

theofficialgman commented Aug 22, 2023

Just want to give my two cents.

I am extremely grateful for Brendan's continued efforts (and work with community members) on the Linux fork of this project.
I hope that in the near future (as it has been multiple years since this was requested) this can be made part of his official job (or someone elses job on the github desktop team) at GitHub.
There are 10s/100s/1,000s of thousands of people that either use his Linux fork or are impacted by it.

@probonopd
Copy link

probonopd commented Aug 22, 2023

With all the work done at https://github.com/shiftkey/desktop/releases I am really asking myself what is holding @github back from releasing and supporting it officially.

@ipkpjersi
Copy link

Honestly I would think maybe it's because they don't want to feel responsible for supporting it officially, but honestly, I am kind of leading more towards they just don't want to. It's really sad to see that for over 6 years, they just refuse to support it. I don't think that's going to change any time soon, they're just going to continue saying no every couple of years.

@greggwon
Copy link

greggwon commented Aug 23, 2023 via email

@ocdtrekkie
Copy link

@greggwon You realize Microsoft is heavily invested in Linux platforms for Azure, right? Microsoft maintains its own Linux distributions. If anything Microsoft owning GitHub now makes this omission less excusable.

@zocker-160
Copy link

You realize Microsoft is heavily invested in Linux platforms for Azure, right? Microsoft maintains its own Linux distributions.

@ocdtrekkie You realize none of this is Linux Desktop, right? There is no need for GitHub Desktop for Linux server.

@RokeJulianLockhart

This comment was marked as off-topic.

@aminya
Copy link
Contributor

aminya commented Oct 26, 2023

The lack of direct Linux support makes it harder for developers to contribute to the GitHub desktop.

For example, I had to create one pull request for this repository and one pull request for the Linux fork. Then imagine I had to fix the conflicts between the two forks manually so that I can finally test my changes.

@reos-rcrozier
Copy link

reos-rcrozier commented Mar 20, 2024

GitHub Desktop is already unofficially ported to Linux and maintained by someone in a different repository

Please start to read properly. The maintainer is not just "someone", but a an official developer at GitHub.

they focuse on their "very own GiHub Desktop", which has no official linux support.

May I ask why making it "official" is important for you? I'm using GitHub Desktop since years on my Linux Desktops and I never had any issue thanks to Brandon.

In the beginning I used the Debian package and nowadays I'm using the Flatpak to ensure that I automatically get the latest updates and the additional security brought be Flatpak is nice as well.

As a company we ideally want to have the same tool across platforms, and use the official release from Github for obvious security auditing and insurance reasons. Therefore we want Github to provide an official Linux release. Please consider this issue urgently, or close as WONTFIX if there is no intention of ever officially supporting Linux so users can make an informed choice of toolchan.

@greggwon
Copy link

This is exactly the problem about not supporting Linux. How does anyone know what happens with corporate credentials when giving GitHub desktop access to them? Without an official tool set for Linux, GitHub is simply stating that either they are incapable of writing software for Linux, or since being acquired by Microsoft, GitHub is just about making money for Microsoft, and not about supporting software development with tool chains that work across platforms.

@Enderteck
Copy link

Enderteck commented Mar 21, 2024

How the hell is there not an official Linux version of a Github app. WTF.

The entire Linux ecosystem lives on here.
There is also great Linux fork rn, why not merge it ?
Linux people run this website. I expected better from github.
Y'all seriously have brain damage or smth.

@tromlet
Copy link

tromlet commented Mar 24, 2024

This is exactly the problem about not supporting Linux. How does anyone know what happens with corporate credentials when giving GitHub desktop access to them? Without an official tool set for Linux, GitHub is simply stating that either they are incapable of writing software for Linux, or since being acquired by Microsoft, GitHub is just about making money for Microsoft, and not about supporting software development with tool chains that work across platforms.

I hate to say it, but that should be the assumption about anything Microsoft, or corporate generally. They aren't going to build toolsets or support for competing products. Sometimes they happen to (VS Code!) but at the end of the day, a mainline project from organizations owned by major corporate software houses should not be expected to play nicely with other, potentially competing projects. :(

@greggwon
Copy link

VSCode is Microsoft getting the community to build their IDE, without them having to. People are building tooling that also becomes a lock in to the MS toolset. Microsoft is sucking people off of Linux by making it look like they actually care about developers doing open source.

@Enivex
Copy link

Enivex commented Apr 19, 2024

VSCode is Microsoft getting the community to build their IDE, without them having to. People are building tooling that also becomes a lock in to the MS toolset. Microsoft is sucking people off of Linux by making it look like they actually care about developers doing open source.

You do realize that Microsoft has an entire team working full time on VSCode?

@clytle374
Copy link

No Linux support is embarrassing. Might be time to start moving opensource projects away from github.

@theofficialgman
Copy link
Contributor

GitHub and the Desktop team are committed to making GitHub Desktop a tool for all developers.

https://github.blog/changelog/2024-06-03-github-desktop-3-4-reset-to-commit-and-accessibility-settings/

Let's get official Linux support if the desktop team is really "committed to making GitHub Desktop a tool for all developers". It's long past time to stop making these misleading marketing posts and actually act on the issues that developers ask for with making Desktop accessible.

@greggwon
Copy link

greggwon commented Jun 5, 2024

VSCode is Microsoft getting the community to build their IDE, without them having to. People are building tooling that also becomes a lock in to the MS toolset. Microsoft is sucking people off of Linux by making it look like they actually care about developers doing open source.

You do realize that Microsoft has an entire team working full time on VSCode?

What it takes for Microsoft to create and maintain VSCode is not the issue. That's a consideration based on the features and architecture of the software system they chose. What's ultimately at issue here, is whether or not they have a cross platform UI with UX similarity to the native OS, for all OSes that the desktop should be available on. The fact that it's not on Linux, says to all Linux developers that Microsoft doesn't actually care about open source at all, and are just using open source as a way to "upgrade" their visibility and collect other peoples work for free, to keep their platform Windows specific and keep users and developers locked into the MS camp.

Let's be real here. If Microsoft had actual technology and actual Open Source desires for a completely OS neutral GUI development environment, they would be passing that around and writing everything that they create using that so that the OS issue would melt away into a "do you have this library or platform thing" instead of "are you on our OS"?

Before Microsoft finally decided they were actually going to be overrun by Linux if they didn't change something, Java was going to be part of that overrun. But alas, the similar idiots at Oracle that were driving the same mistakes at Sun, have been trying to force people into the Oracle prison to use Java. They continue to remove desktop features that were the bread and butter of portability and security because all of those idiots are just server dudes who thing they know something about software development.

Microsoft has been hiring the old UNIX guys and gals and Linux platform experts and lots of others as fast as they can to get their platform to actually act like a real OS with real portable features that are functional and performant like the software that existed 20 years ago was.

@CyberGh0st-droid
Copy link

dissapointing

@alexanderadam
Copy link
Contributor

No Linux support is embarrassing.

Just yet another reminder that GitHub Desktop has working Linux support for a few years now.

You'll find binaries, a deb, a rpm package and an AppImage here.
But as mentioned earlier, I would recommend using the FlatPak package as this is even using nice containerisation as well as automated updates:

  1. setup FlatPak
  2. type flatpak install flathub io.github.shiftey.Desktop in your favourite shell or click the Install button here
  3. profit 🎉

The Linux version has been available since 2017 and it is still maintained by Brendan, literally a GitHub employee. This hasn't been changed for years.

Unfortunately I'm not related to GitHub or Microsoft but this issue is apparently 95% spamming around with off-topic rants about some weird theories about Microsoft and other people looking how to simply install GitHub Desktop on their Linux environments naturally can't find this useful information any more due to the spamming comments.

So dear spammers and trolls: please think first about whether your comment would actually be helpful in this thread and whether it would bring something productive to the community before you're commenting.

Thank you.

@Grmlocke
Copy link

Grmlocke commented Jun 16, 2024 via email

@sergiou87 sergiou87 added the not-planned Not in the team's roadmap label Jul 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement linux Issues specific to Desktop usage on Linux not-planned Not in the team's roadmap
Projects
None yet
Development

Successfully merging a pull request may close this issue.