textbrowser / dooble

Dooble is a scientific browser. Minimal, cute, unusually stable, and available almost everyware. Completed?
https://textbrowser.github.io/dooble/
Other
466 stars 36 forks source link

Which systems does the Linux DEB package support? Which OSes are supported? #111

Closed Rezzy-dev closed 2 years ago

Rezzy-dev commented 2 years ago

Hi, I'm trying to run the dpkg installed browser on a Debian 9 system, and I received this:

./Dooble: /lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.27 not found (required by /opt/dooble/Lib/libQt6WebEngineCore.so.6) ./Dooble: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.28 not found (required by /opt/dooble/Lib/libQt6WebEngineCore.so.6) ./Dooble: /lib/x86_64-linux-gnu/libz.so.1: version ZLIB_1.2.9 not found (required by /opt/dooble/Lib/libQt6Gui.so.6) ./Dooble: /lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.27 not found (required by /opt/dooble/Lib/libQt6Gui.so.6) ./Dooble: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.25 not found (required by /opt/dooble/Lib/libQt6Core.so.6) ./Dooble: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.28 not found (required by /opt/dooble/Lib/libQt6Core.so.6) ./Dooble: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version CXXABI_1.3.11 not found (required by /opt/dooble/Lib/libQt6Core.so.6)

The browser did not launch.

The documentation currently lacks which systems the browser supports. Is Debian 9 supported? Because from the looks of it this doesn't seem to be the case. I can't upgrade glibc without messing up the rest of the system.

Rezzy-dev commented 2 years ago

The version of libc that Debian 9 has is 2.24.

textbrowser commented 2 years ago

Debian is at 11.

textbrowser commented 2 years ago

As I have written in other reports, if the contents of the deb file are not suitable, build Dooble from source. :)

The download bundles are pure courtesies and do not reflect the availability of the software. It will work pretty much everywhere where Qt and WebEngine are present.

textbrowser commented 2 years ago

https://www.debian.org/releases/stretch/

textbrowser commented 2 years ago

So, you have an almost-deprecated release (regarding security updates) and should therefore build the browser from source. :)

https://github.com/textbrowser/dooble/blob/master/Documentation/COMPILING contains more information now.

Good luck! Which you won't need if you install your Qt development modules and the WebEngine modules. I do not list those because I do not have a list and they may generally change in Debian 10 and Debian 11 and Debian 12 and I do not wish to remain current with 1,000,000,000,000 release distributions.

Thanks!

Rezzy-dev commented 2 years ago

Thanks, this is great to hear! Okay, I will attempt to build from source, and let you know how it went. :)

Yes, I'm aware I'm using an older version of Debian. In my line of work I have to.

Perhaps a note attached to the pre-built releases/versions may be a good idea, where it says that if the package won't run due to older versions of the dependencies present, to try and build the binary from source. Just a hint/clue, if people find themselves in the same situation as I have.

Rezzy-dev commented 2 years ago

The release bundles are only functional on the systems for which they were built. If Dooble fails to launch, please build it from source!

This belongs on the DEB download page, not (only) in the compiling notes/instructions, hidden in the "Documentation" folder of the source code. This is the best wording by far -- clear and concise. :+1:

Rezzy-dev commented 2 years ago

You should probably also note which version of Debian/Ubuntu you used to build the provided DEB, as this is not at all clear on the download page.

textbrowser commented 2 years ago

I really dislike packages. :) Both Mac and Windows builds are a pain. I would prefer a source release only but people have become accustomed.

Rezzy-dev commented 2 years ago

Yeah, I can understand that. :) But most people are not technically savvy enough to build from source, not even most Linux users -- you do need quite a bit of computer knowledge and experience for that.

If you like, I can help out compiling and preparing the pre-built binaries/packages for each release. I do have a Windows 8, Windows XP. and Debian 9 computer here. And I can set up other OSes/environments through VirtualBox -- I have the knowledge/experience and the means. I also have extensive experience with Mac OS, although I don't have a Mac computer with me presently (I haven't used one in a while).

Rezzy-dev commented 2 years ago

If you haven't done so yet, and if you have the storage space for it, I recommend you set up virtual environments for the builds through VirtualBox. This way you can easily maintain and update the different build environments. Copy a virtual machine, upgrade its development environment, and you have a new setup for a new build -- while keeping the old until it's still relevant. ;)

Makes things much easier, and less of a pain, to manage. And it allows you to release more builds for Dooble (or anything else you're working on), when it's time for a new release, without issue.

Rezzy-dev commented 2 years ago

https://www.virtualbox.org/

It's available in the repositories of most Linux distros, and can be downloaded and installed to any PC OS.

Setup is quite simple and straightforward: you can mount and load the ISO disk images to install the operating system from straight in the virtual machine when you boot it up for the first time.

Then you install any missing VirtualBox drivers the OS may need by mounting the VirtualBox built-in "Guest Additions" virtual disc, and installing the packages there. This allows for higher screen resolutions as well as things like file and clipboard sharing between the guest and host machine/OS.

The virtual machine folders/files you can just move around, copy, delete, and easily manage, as they are mostly single files, containing the whole system setup.

textbrowser commented 2 years ago

Yeah, I can understand that. :) But most people are not technically savvy enough to build from source, not even most Linux users -- you do need quite a bit of computer knowledge and experience for that.

If you like, I can help out compiling and preparing the pre-built binaries/packages for each release. I do have a Windows 8, Windows XP. and Debian 9 computer here. And I can set up other OSes/environments through VirtualBox -- I have the knowledge/experience and the means. I also have extensive experience with Mac OS, although I don't have a Mac computer with me presently (I haven't used one in a while).

You will need a Windows 10 system. I've experienced problems with Qt on Windows 7. There, it's some work to get the 2019 or 2021 free MS compiler suite.

Any new Mac should do. I do not have an ARM Mac, however. As for other Unixes, FreeBSD and OpenBSD as well as Debians.

textbrowser commented 2 years ago

https://www.virtualbox.org/

It's available in the repositories of most Linux distros, and can be downloaded and installed to any PC OS.

Setup is quite simple and straightforward: you can mount and load the ISO disk images to install the operating system from straight in the virtual machine when you boot it up for the first time.

Then you install any missing VirtualBox drivers the OS may need by mounting the VirtualBox built-in "Guest Additions" virtual disc, and installing the packages there. This allows for higher screen resolutions as well as things like file and clipboard sharing between the guest and host machine/OS.

The virtual machine folders/files you can just move around, copy, delete, and easily manage, as they are mostly single files, containing the whole system setup.

I'm familiar with VBox as I still use it for non-Dooble. The Mac release uses Qt through Qt and not Homebrew's version. That's a separate mess with the various dependencies. I've been fortunate with Dooble as only requires Qt. :)

Rezzy-dev commented 2 years ago

Yeah, developing anything for Mac these days can be a big pain -- thanks to Apple's continued efforts to complicate things and make development available only to those who purchase the latest Macs. So that part of it will always be a pain, but that applies only to Mac (and other Apple products).

For all other platforms, you should be quite fine with VirtualBox, and it really isn't rocket science, it doesn't require moving any mountain.You just have a few commonly used systems set up in the form of virtual machines, and no big whoop-dee-doo -- you got it. ;) An hour spent on compiling the latest release for all different platforms/setups, and you have it.

Rezzy-dev commented 2 years ago

You will need a Windows 10 system. I've experienced problems with Qt on Windows 7. There, it's some work to get the 2019 or 2021 free MS compiler suite.

I don't plan on installing Windows 10 or 11 anytime soon. And couldn't care less for the latest Macs either. These are very much commercial platforms, constantly changing, and terrible for work.

If these systems are your main target, then I should forget about Dooble.

If, one the other hand, they are just one of the many, then Windows 10 should run just fine in VirtualBox, as far as I'm aware. And I'm sure 11 will, too. There is also a Hackintosh version of Mac OS X that runs in VirtualBox. Note sure how useful that would be for development, however (since Apple keeps things closed and controlled when it comes to application development on its platforms).

textbrowser commented 2 years ago

There are three primary audiences: Mac, Unix, Windows. I work in Unix so that's the first. The others are easier to manage in the sense of being very similar. There is but one Windows and one Mac, generally. The Mac releases are sometimes incompatible, so I provide the release based on the hardware that I have available. It's important to broaden yourself to your audience as much as possible. Linux is not a deity.

textbrowser commented 2 years ago

I enjoy the singleness of FreeBSD but not it's lack of packages and hardware support. Ubuntu is a greater Debian except for Unity. So I like Kubuntu. I depend on Debian for hardware that's long been considered dead. But! I do not worship the operating systems. :)

textbrowser commented 2 years ago

I have a reminder to create a Debian control file for a general installation, one that will work with the local version. If you'd like, that is something interesting. It would presumably help you as well.

Rezzy-dev commented 2 years ago

Yes, but there are two kinds of Windows, and two kinds of Mac (one dying out).

You have Windows up to Windows 10, and then everything after it. Because, practically, they're two entirely different systems by design and development (purpose).

And you have Mac up to Snow Leopard, and then everything after it. The previous Mac OS X era is over, however: you can't really develop applications for the old Macs -- Apple made it almost impossible.

So if your target audience is Windows, then it's not Windows 10 -- it's ALL of Windows, including earlier releases, such as XP, Vista, 7, and 8. Your target should then be XP, because if it runs on XP, it will run on everything else after it (except maybe Windows 10 and its variants/successors).

To be honest with you, there isn't much cross-platform development future for these commercial platforms, as they're becoming more and more closed and controlled, elites in their own world.

So the whole notion of cross-platform development is slowly becoming antiquated when it comes to Windows and Mac.

textbrowser commented 2 years ago

There is an interest in a universal Linux distribution as well. One or two tickets.

Rezzy-dev commented 2 years ago

For Linux, I would actually do with a complete, bundled AppImage rather than a distribution package, if that's technicaly feasible with Dooble. It saves you the trouble of worrying about Linux distributions/versions, as the AppImage will run on all Linux platforms that run that architecture.

All dependencies are bundled with the AppImage file.

Rezzy-dev commented 2 years ago

https://appimage.org/

textbrowser commented 2 years ago

I have a can-do attitude. If I can deploy it on a Windows, I will do so. Same for Mac. Target what you have and show that it can be done. Part of deployment for diverse platforms is education. :)

textbrowser commented 2 years ago

https://appimage.org/

Yip, that be mentioned in a ticket.

Rezzy-dev commented 2 years ago

I have a can-do attitude. If I can deploy it on a Windows, I will do so. Same for Mac. Target what you have and show that it can be done. Part of deployment for diverse platforms is education. :)

And I applaud that, I'm just not sure how feasible it will continue to be in the future. You may find that the many obstacles Microsoft and Apple put in your way will make things just a tad difficult.

I'm just trying to raise your awareness that building releases for open platforms and for closed platforms will be two different experiences in the future. So you don't merge the two -- thinking it's hard for either.

textbrowser commented 2 years ago

Portability is also expensive. New software and new hardware. Remember, these are all hobbies.

textbrowser commented 2 years ago

For sure, preparing Qt for WebEngine on Windows 10 was a nightmare. Trial and error with packages.

Rezzy-dev commented 2 years ago

Portability is also expensive. New software and new hardware. Remember, these are all hobbies.

Not when it comes to open platforms, only when it comes to closed ones -- ones designed to force you to buy new hardware.

textbrowser commented 2 years ago

It's weird how the younger people expect everything to be packaged.

Rezzy-dev commented 2 years ago

The app stores have (unfortunately) become the standard way of obtaining software. You click to add or copy to your hard drive, and it's installed and ready to run.

Rezzy-dev commented 2 years ago

People got too used to the convenience of that.

textbrowser commented 2 years ago

There's a loss of curiosity there. How does this thing work?

Rezzy-dev commented 2 years ago

But don't forget that that is also why computers went so mainstream now. While it was technical, far fewer people were using computers.

Rezzy-dev commented 2 years ago

Those of us that are still interested in how things work still make the effort to learn.

Rezzy-dev commented 2 years ago

Most people just use computers as tools -- they're not interested in how things work in computers.

textbrowser commented 2 years ago

Preservation and story telling through software.

Rezzy-dev commented 2 years ago

Which is actually really sad, when you think about it... :thinking:

textbrowser commented 2 years ago

So. If you wish, see about the universal installer. You can create a package for almost everyone. RedHat too.

textbrowser commented 2 years ago

Or read through the source and find things to correct. Or other tickers.

Rezzy-dev commented 2 years ago

So yeah... if you want Dooble to be used by more people, you do have to make the effort of preparing it for them. But there's a line to draw here, I think. And I think that line starts with severely closed and controlled platforms such as current Mac OS, and future Windows releases. But that's just my personal judgement, based on what I'm seeing has been happening in the last decade, and especially the last few years.

Rezzy-dev commented 2 years ago

So. If you wish, see about the universal installer. You can create a package for almost everyone. RedHat too.

Okay. I'll do that. I'll see about AppImage, and maybe also about Flatpak or any other of the new simple way of distributing software on Linux/Unix-based platforms. :+1:

Let's see if we can simplify making universally working releases for Dooble.

But I gotta make Dooble run on my computer first...

textbrowser commented 2 years ago

Dooble will never be great or known. It's quirky and there are far greater browsers. I enjoy it and I share it. I don't know where it goes and that is fine.

Rezzy-dev commented 2 years ago

We desperately need a good independent browser, @textbrowser. There is so little choice on the market now, and it's all terrible. Firefox has become a nightmare, and I don't even want to speak about Chrome...

We need something that's simple and clean, open. That doesn't overload people's senses, and allows proper control over how the Internet behaves in our browser (not stuff designed to make marketing to us easier).

textbrowser commented 2 years ago

That's right.

After you have the Qt development packages:

qmake -o Makefile dooble.pro make -j $(nproc)

Rezzy-dev commented 2 years ago

We need to take control back over how the web is presented to us. And only an independent browser can let us do that.

textbrowser commented 2 years ago

Dooble uses WebEngine which is derived / is Chrome.

As far as I have tested, it does not communicate with Google.

Writing an engine is a terrible task.

textbrowser commented 2 years ago

Beyond the engine, Dooble is all open. Well the engine is open too.

textbrowser commented 2 years ago

People have shown interest in integrated blockers. I will look at that some day. A nicer address bar is important too. The data visualization is also interesting.

Rezzy-dev commented 2 years ago

I think Dooble will be more popular than you realise -- if we can only make it more accessible.

Using Chromium as the rendering engine is fine. As long as Dooble has an interface and features designed for the user, so we can control how content is presented to us through WebEngine. We can filter out what's unwanted, and still be able to use websites.

I don't know if you've noticed, but the Internet has become literal information hell with how content is displayed and forced on us these days.