NC-client for linux?

Could we get a “normal” NC-client for linux (I mean, in form of deb/rpm installer, similar as “msi” for windows)? Because that security disaster called “appimage” is totaly unacceptable in corporate environment, where common users are not allowed to download & run apps from internet (/home is mounted with nodev/nosuid/noexec options) or use FUSE…

There are packages in the repos of most distributions, but depending on the distribution you are using they might not always be on the latest version or only available via third party repos. So maybe you tell us which distribution you are using, and we might be able to help you finding the right package…

However, in a corporate environment you are often not allowed to install any software at all, not even from the official repos of your distribution, and even if you were, you would need root / sudo privileges to do that. There are also enterprises that maintain their own curated repos and they only allow packages and software on their client devices that they have tested and audited.

Long story, short: Usually there is a process for software distribution in place in a corporate environment, so the correct way would probably be to make a request to your IT department.

1 Like

I personally prefer the Flatpak over the AppImage version, however before ranting around I usually check my statements.

In this case I would have checked whether .deb packages exist before yelling it into the web, so it doesn’t get embarrassing. :roll_eyes:

https://packages.debian.org/search?keywords=nextcloud-desktop

2 Likes

I found Nextcloud linux desktop version 3.7.4 at nextcloud/desktop/releases. Apparently there is no DEB-file for Debian and Ubuntu at GitHub. This is a pity and maybe the real problem. Maybe someone can verify it.

For Debian i found version 3.1.1 for Debian Bullseye (Stable) and version 3.7.3 for Debian Bookworm (Testing).

A DEB-file with version 3.7.4 at GitHub would be nice. The question is probably how the package creation process of the Nextcloud client for Debian/Ubuntu works.

Ususally the distributions build and maintain their packages themself. Nextcloud only provides the AppImage and of course the source code afaik.

1 Like

Then we can be glad that we don’t have to wait for the provider for Windows (.msi) and macOS (.pkg) :wink: Too bad that there is probably no one who builds directly the packages for .deb (if possible). But nowadays more emphasis is put on appimage, flatpack, snap anyway, but this is due to dependencies in the package installation. Ok that is the Windows way :wink:

I did find deb-package in my repository, but I can not use it to connect to my NC-server. I guess, because client is too old (just see how much has been fixed/changed between 3.1.x and 3.7.x). It looks to me like “abandonware”.

Honestly, I do not like this flatpak/snap/appimage concept of software distribution at all. Appart from security implications it brings a lot more problems, especially in multi-user environment (every user should download/run his own NC-client?). And it is eating disk-space at incredible rate.

2 Likes

Yeah but thats how it works in the Linux world. :wink: Of course there are vendors that build debs and rpms themself, and some of them do even provide their own repos for diffrent distributions.

But doing so takes a huge effort, because it is often not enough to just build a deb or rpm. The packages usually have dependencies, as in the case of the Nextcloud client QT. If you just provide a deb, you can’t guarantee that every version of the client will run on, for example, all versions of Ubuntu or Debian that are still in use. Because different versions of Ubuntu ship with different versions of QT. So the Nextcloud devs would have to maintain repos for at least 4 or 5 Ubuntu releases, 3 CentOS versions, 3 Alma Linux / Rocky Linux /RHEL versions etc. And ideally they would also deliver all dependencies on top of that through their repos, which may not be wanted if you are running an LTS distro.

That’s why App Image is the easiest way. With AppImages you have a self containd image that includes all the dependencies. Of course there is also Snap or Flatpak, where you can get the latest client. They are also more or less distro independent.

Do you use Ubuntu or Ubuntu based linux? If yes maybe you can use PPA Nextcloud client with actual version 3.7.3. First uninstall your old version. Not tested because i use Debian. Or do you use Debian?

@bb77
Yes i agree for all. But i also do not like it really. Maybe you also have to ask yourself if it really needs so many software releases.

Why don’t you tell us which distro you are using?

I’m getting the impression that you’re only interested in ranting a bit here, instead of finding a solution… :wink:

1 Like

Me neither (especially Snaps). That’s why I use Arch Linux on my Desktop.

In the long term, however, it is unlikely that containers can be fully avoided, one way or another you will use them in the future. Immutable distros that deliver software in some kind of containers will be the next “big thing” in the Linux world, says my oracle :wink:

And the software vendors and developers are screaming for solutions to bring their software more easily to Linux platforms. If Linux wants to become more successful on the desktop, it needs things like Falthub or the SnapStore, although I don’t like this centralization either…

1 Like

I’m using debian stable. And if you think I’m only ranting here, solution is easy: do not waste your time in this thread…

There have been a few discussion after the Nextcloud fork. Problem at the time was, that the version of the client moved quickly compared to the Linux distribution releases. And they wanted to keep on version and just push fixes to the Repo while Nextcloud moved on to new version and didn’t backport to all the old versions. And the repositories started to ship version with known security bugs.

I used some third-party repo some time, I tried the appimage (not really a fan of either), and currently I’m just mounting webdav storage directly.

There is no Nextcloud client in the Debian Bullseye backports. Perhaps this would also be a solution. Also you can upgrade to Debian Bookworm and get a newer version. Because of dependencies i think it is not possible to install nextcloud-desktop from Bookworm on Bullseye.

Instead of any mixed (deb) systems, i would rather upgrade to Bookworm, which should be possible without any problems. many users use Debian testing throughout.

1 Like

Well @devnull has already explained what is possible on Debian. And I also would rather advise against mixing sources from SID and Stable if you don’t want to end up with an unmaintainable Frankendebian. :wink:

Upgrading to Bookworm now would be the cleanest solution, but of course you will then have the same problem again at some point in the future.

I’d go with either Flatpak or Snap in this case, allthough I’m not a big fan of them either. Otherwise, you have no choice but to switch to another distro that provides you with faster updates, or you could of course take the risk and try using the SID package or maybe the Ubuntu PPA, which again, in the worst case could take you to a dependency hell.

Unfortunately I can’t think of a better answer, except maybe maintain the Debain backport yourself. Maybe it could then even be included to the official backport repos. No idea how easy that would be to maintain, but I could imagine that the QT dependencies could be a real pain or even a blocker.

1 Like

But why NC can not release deb/rpm client at least for a few current linux versions (ubuntu/debian, fedora)? I just installed veracrypt, signal, viber, etc, all deb-packages directly from web-sites, no problem.

I’m running lab with ~20PCs. On each of them, any of altogether ~200 students work sometimes on their lab-training. They want to sync their work-files with NC-server, but NC-appimage is not integrated into system. If one student downloads and runs NC-client in his profile, the other one who log in later does not see it and have to download and run it again from his homedir.

Even if I could remove that FUSE/execution restriction, I can not allow each of those 200 students to install 200 instances of Nextcloud-desktop appimage on each PC. That’s simply nonsense…

btw I found NC-3.4.2-ubuntu, installed it, but it does not work (it starts, but can not connect to server even with proper password). Is it still too old version? IIRC I have some 3.4.x on win7-pc at home, and it seems to work…

Sure they could. But that would not resolve the issue that it would expect certain QT libraries in certain versions, in order to work. I mean you can try by just downloading the deb from SID and dpkg install it. Maybe you’re lucky and it works. I wouldn’t recommend it though, unless you know exactly what you’re doing, because otherwise you could experience side-effects that are not obvious Immediately. Or it could crash or even cause data loss.

Even the maintainers of the PPA I linked in my previous post cannot offer the current version of the client for older Ubuntu releases, because the dependencies on these older Ubuntu releases are not up to date anymore.

Now you maybe wonder why that’s not an issue on Windows or with the AppImage. Because the msi includes all the dependencies, just like the AppImage.

2 Likes

I do not believe windows app includes every dependency it needs (for that it is too small), but at least it is installer. And that’s what I’m looking for: installation package. I have to install it once, and it will be integrated in the system, and available for all users…

BTW, distributing sw in one huge pack with all dependencies returns us back to the caves, when all sw was statically linked. Why then having shared libraries? We can get rid of /usr/lib and /var/lib, right? Well, I’m not sure if that is future of software industry…

OT: just installed OpenModelica from deb-file (nightly auto-build from dev site). It just pulled a few other packages, but otherwise works like charm. When it is possible with such a big package, why not NC-client?

You can download and open it, at least the QT dependencies are in it. But I’m not an expert on packaging, so I could be wrong about this. Anyways, fact is in Windows you can distribute dependencies with your software, and it’s common to do so, that’s why you will find 20 .net packages in your software list :wink: On Linux you can’t do that as a software vendor. I mean you can, if you maintain your own repos, but again, that’s a huge task, if you want to cover most common distros.

With that you are giving you the answer yourself. It is precisely /var/lib and /usr/lib, what causes the issue. If Nextcloud had to directly and fully support only the most common LTS distros, they would have to maintain at least three or four versions of their client and in order to get feature parity between all these versions, if possible at all, they would have to backport features to older versions of the client etc. I mean what do you think they should do if someone is e.g. using an 8 year old CentOS that ships an ancient QT version, but a certain feature requires QT5?

1 Like

OK, so let’s distribute SW with all dependencies together. That’s what we have /opt for: one can create own sub-dir for every package, and install it there with the whole dependency-tree.

But let it still be installer! If every user has to download & run his own copy from his $HOME, it is definitely not suitable for multi-user envirnonment…