Botspot / pi-apps

Raspberry Pi App Store for Open Source Projects
GNU General Public License v3.0
1.99k stars 205 forks source link

App request: GeoGebra #2337

Closed cdkw2 closed 1 year ago

cdkw2 commented 1 year ago

What is the name of the app?

GeoGebra

(Optional) Where is the app hosted?

https://wiki.geogebra.org/en/Reference:GeoGebra_Installation

About the app

GeoGebra is a dynamic mathematics software for all levels of education that brings together geometry, algebra, spreadsheets, graphing, statistics and calculus in one engine. In addition, GeoGebra offers an online platform with over 1 million free classroom resources created by our multilingual community. These resources can be easily shared through our collaboration platform GeoGebra Classroom where student progress can be monitored in real time.

My mathematics professor told me to use this app so please add it :)

Confirmations

theofficialgman commented 1 year ago

@cdkw2 you have been abusing the pi-apps app request by multiple times posting apps that can not (or have not been shown) to run on arm Linux. Your previous issues show you are well aware the checkbox must be checked to post an issue. It is not there so you can lie about an application being shown to run on a pi.

The app request is not here so you can beg someone else to do porting work for you. It's for applications that already run on arm Linux and have documented installation methods which a user would like added to pi-apps.

Botspot commented 1 year ago

@theofficialgman I think you owe @cdkw2 an apology. Screenshot from 2023-05-26 08-40-51

theofficialgman commented 1 year ago

@Botspot I do not owe @cdkw2 an apology. if you had clicked or hovered on that link you would have noticed that it is a direct link to the archive.raspberrypi.org apt repo where geogebra was included on old armhf piOS debian stretch and jessie. it does not exist on buster and up on 32bit and not at all on 64bit.

theofficialgman commented 1 year ago

in addition, the user asked for GeoGebra Classroom which is a web based only application yet they linked the installation of desktop applications. further confirming that they did not confirm that classroom could be installed on their pi

Botspot commented 1 year ago

It is unclear to me whether the user actually requested Geogebra Classroom, or Geogebra in general. I interpret the first text block to be a copy-and-paste to describe Geogebra in general.

GeoGebra is a dynamic mathematics software for all levels of education that brings together geometry, algebra, spreadsheets, graphing, statistics and calculus in one engine. In addition, GeoGebra offers an online platform with over 1 million free classroom resources created by our multilingual community. These resources can be easily shared through our collaboration platform GeoGebra Classroom where student progress can be monitored in real time.

@cdkw2, please be aware that most (and maybe all) Geogebra features are available on the web with links like this one: https://www.geogebra.org/graphing I took a Calculus class that used a bit of Geogebra and this site did what we needed. The second thing I noticed @cdkw2 is that you did not mention exactly which type of Geogebra your professor said you needed. As you can see from the wiki page you linked, there are several versions.

GeoGebra Portable Versions (Windows)
GeoGebra Scientific Calculator
GeoGebra Calculator Suite
GeoGebra Graphing Calculator
GeoGebra Geometry
GeoGebra CAS Calculator
GeoGebra 3D Graphing Calculator
GeoGebra Classic 6
theofficialgman commented 1 year ago

@theofficialgman I think you owe @cdkw2 an apology.

I'll appologize for being rash. @cdkw2 you aren't the first and won't be the last to post an "app request" while checking the "I have confirmed that this app can run on Raspberry Pi." when it is untrue (some examples, three of which are yours in addition to this issue: https://github.com/Botspot/pi-apps/issues/2316 https://github.com/Botspot/pi-apps/issues/2312 https://github.com/Botspot/pi-apps/issues/2317 https://github.com/Botspot/pi-apps/issues/2227 https://github.com/Botspot/pi-apps/issues/2003 https://github.com/Botspot/pi-apps/issues/1968 https://github.com/Botspot/pi-apps/issues/1976 ). I am just frustrated when users continue to do this (get around the checkbox by lying in it or editing it after posting) and expect/ask for a pi-apps maintainer to do all the porting work so that it can be run (if it even can at all). The :) that you all seem to always add at the end of your request also just adds to my anger. It is like you are fully aware of what you are doing and add a smile to try and smooth it over.

cdkw2 commented 1 year ago

Oh well, I just returned home from my lectures and this looks bad. Anyways I would like to address Mr. Gman first. Sorry for ruining your day every time i post :( I just want this app store to be better. Sorry for bothering you this much, maybe this is the reason when only a few people talk to me in real life too. Others just ignore me and to this date I had no problem with that, but now I think that maybe I carry the wrong personality both in real life and online. I will definitely try to be a great person in future if I can. The second thing, my dear brother in Christ, I am not a full time Linux type guy, I use a raspberry pi as my main PC because I don't want to be dependent on my parents and don't want them to buy a full PC for me. The way I thought GeoGebra should be added was, first searching it up on this repository to be sure that this should not be a duplicate. Then I want to the website and saw that this was available for Raspberry pi 3 (as Botspot mentioned) and I asked ChatGPT if the app was available on raspberry pi and as of the knowledge cutoff, it did say it was available. So thought this would be available on raspberry pi 4 too. So I thought of posting it here. And at last, please don't apologize for being rash, have been talked in worse tones before by people who used to be very close to me so I don't mind it at all nowadays. And I put a little :) in the end so that at least I can pretend to be happy. Anyways, thanks for spending your time trying to solve problems of a stupid person like me.

And now for Mr. Botspot, Thank you for defending me and yeah, my professor said That the Graphing calculator would be fine since we would be plotting graph's of some functions and comparing them.

Anyways, if you guys want then you don't even have to necessary add it now, I would just use my phone, I don't want to give you guys some work that would make me look like the bad person here. Sorry for bothering you guys, I would try to become a good person in future.

theofficialgman commented 1 year ago

Anyways I would like to address Mr. Gman first. Sorry for ruining your day every time i post :( I just want this app store to be better. Sorry for bothering you this much

As I said its not you in particular. Its a combination of multiple users who all seem to do similar things. I'll make some changes to the app request template to make our intentions for this clearer.

I am not a full time Linux type guy, I use a raspberry pi as my main PC because I don't want to be dependent on my parents and don't want them to buy a full PC for me. The way I thought GeoGebra should be added was, first searching it up on this repository to be sure that this should not be a duplicate. Then I want to the website and saw that this was available for Raspberry pi 3 (as Botspot mentioned) and I asked ChatGPT if the app was available on raspberry pi and as of the knowledge cutoff, it did say it was available. So thought this would be available on raspberry pi 4 too.

thats a good start for this case. I appreciate your thought process there even if it ended up being a bit flawed. In the future, I would suggest being more descriptive about the actual desired install process and application name. I'll also change the template as well to request this.

I am going to re-open this PR since I managed to find that geogebra is open source (though not free for commercial use, it uses a custom license https://www.geogebra.org/license) https://github.com/geogebra/geogebra . They do all development in private and then merge it over to the public repo (destroying a lot of commit history along with that). The tags are the only real thing that could be used to build binaries https://github.com/geogebra/geogebra/tags .

ItsTerm1n4l commented 1 year ago

A bunch of people have run this app in a Raspberry Pi although I think they are all outdated. I havent tested it myself but this seems simple enough, their gradle install script is a shell script. gradle is available in the apt repos but I expect it is too old. I think this could be a useful app though.

ItsTerm1n4l commented 1 year ago

@cdkw2 if you could build this on your Pi to prove I can be done, and send feedback that would be helpful?

cdkw2 commented 1 year ago

I will as soon as I reach home, but i think that gnuplot would also be a good option for me to try.

cdkw2 commented 1 year ago

Here it is: WhatsApp Image 2023-05-27 at 20 17 19

cdkw2 commented 1 year ago

I even got it on the menu! image

ItsTerm1n4l commented 1 year ago

Could you go through the steps to create an app that could then be possibly added to the Pi-Apps store if the devs agree? How did you build it btw?

cdkw2 commented 1 year ago

Oh sure here they are:

Download the GeoGebra Linux version: Go to the GeoGebra download page at https://www.geogebra.org/download and download the Linux version of GeoGebra (.deb file).

Install required dependencies: GeoGebra has some dependencies that need to be installed first. In the terminal, enter the following command to install them:

sudo apt install openjfx libopenjfx-java libopenjfx-jni

I did have to run sudo apt --fix-broken-install Navigate to the directory where the GeoGebra .deb file was downloaded:

Install GeoGebra: Use the dpkg command to install the GeoGebra .deb file.

sudo dpkg -i geogebra.deb

Resolve dependencies: In some cases, you may encounter dependency issues during installation. To resolve them, run the following command:

sudo apt install -f
sudo apt --fix-broken-install

I just run both of them for good measures.

Launch GeoGebra as it should be available on the menu. That's it! You should now have GeoGebra installed and ready to use on your Raspberry Pi.

@ItsTerm1n4l Was this attempt better?

ItsTerm1n4l commented 1 year ago

yes thats easier than I expected. I should be pretty easy to make into a Pi-Apps app, I can have a look at it and try to make an app for you next week.

cdkw2 commented 1 year ago

Oh thank you so much. It's even perfect timing as I will be out of country for like 2 to 3 weeks so when I come back, I should be able to use the app.

ItsTerm1n4l commented 1 year ago

Are you on 64bit or 32bit because I have tried to build it on my Pi 4 running 64bit Pi OS and I get this error
/usr/share/geogebra-classic/GeoGebra: error while loading shared libraries: libgtk-3.so.0: cannot open shared object file: No such file or directory
when I copied the library into /usr/share/lib I then got this error
/usr/share/geogebra-classic/GeoGebra: error while loading shared libraries: libgtk-3.so.0: wrong ELF class: ELFCLASS64 I think i might have the wrong architecture.
I have created a Pi-apps app though that should work, as I followed the instructions you gave and it did install successfully although I was unable to run it on my machine.
I have listed the app as 64 + 32 bit compatible but I dont know if this is the case.
here you go!
Geogebra.zip

cdkw2 commented 1 year ago

uhhhh... this is awkward. I uninstalled the app which I had previously installed and reinstalled with the zip that you have provided and it just throws the same error on me.

image

And the directory it gives in the error was not empty when I installed it myself.

ItsTerm1n4l commented 1 year ago

so we are on the same architecture...
I think I know the problem, which version of geogebra did you download from the list?

cdkw2 commented 1 year ago

This one: geogebra-classic_6.0.609.0-202010060653_armhf

I can even provide you with a .zip if you want

ItsTerm1n4l commented 1 year ago

this was the one you first downloaded and the install worked with?
geogebra-classic_6.0.609.0-202010060653_armhf

cdkw2 commented 1 year ago

yes

ItsTerm1n4l commented 1 year ago

were there any steps you forgot to include? this is rly weird, the version you downloaded the first time is the same in the pi-apps install script I made

cdkw2 commented 1 year ago

I don't think I forgot anything, even I find it weird now. I am installing the app from the start, from the file I downloaded myself from their website. I will keep you updated.

ItsTerm1n4l commented 1 year ago

Your issue is different to mine, did you run sudo dpkg -P geogebra-classic before you used the Pi-apps installer?

cdkw2 commented 1 year ago

I didn't use the pi-apps installer, I just changed me directory to the folder which contained the install, uninstall, description, website etc and just ran ./install in the terminal. Did I do anything wrong?

ItsTerm1n4l commented 1 year ago

not rly, sudo dpkg -P geogebra uninstalls geogebra usually that would be done before trying to install it again but I dont see how that would cause issues

cdkw2 commented 1 year ago

oh so that's how you uninstall? I just run sudo rm -r /usr/share/applications/geogebra-classic.desktop and just remove all the other directories which contain any related files

cdkw2 commented 1 year ago

Is this a bad practice?

ItsTerm1n4l commented 1 year ago

yes, doing that only removes the desktop entry, the app is still there and can be accessed by the command line, doing this will take up unnesaccary space and not remove the app

cdkw2 commented 1 year ago

oh cool i just ran the dpkg command and it removed some additional files too.

ItsTerm1n4l commented 1 year ago

I have fixed my issue I think, the problem is that I am on aarch64 not armhf, that geogebra .deb file is for armhf, if I install all the armhf libraries I should be able to run geogebra

cdkw2 commented 1 year ago

oh great, my pea sized brain can't seem to handle all this information, so could you share the solution once you perform it yourself?

ItsTerm1n4l commented 1 year ago

we should have checked this before but there is actually a geogebra package in for apt, just runsudo apt install geogebra-classic to install it

cdkw2 commented 1 year ago

uhhhh...

cdkw2@raspberrypi:~ $ sudo apt install geogebra-classic
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package geogebra-classic
ItsTerm1n4l commented 1 year ago

oh it must have showed the dpkg package for me just run sudo apt install geogebra

cdkw2 commented 1 year ago

yeah it did figure that out with

sudo apt-cache search geogebra
ItsTerm1n4l commented 1 year ago

:) sry

cdkw2 commented 1 year ago

Damn, I really am a big idiot for complicating your life. Sorry for that

ItsTerm1n4l commented 1 year ago

np im still learning too

ItsTerm1n4l commented 1 year ago

I was just figuring it out as I went lol

ItsTerm1n4l commented 1 year ago

I can make a pi-apps package for the apt version, the devs might accept but idk

cdkw2 commented 1 year ago

should i close this thread now?

ItsTerm1n4l commented 1 year ago

if the apt version works for you then yes

cdkw2 commented 1 year ago

yeah, the version is really old LOL GeoGebra 4.0.34.0 (22 June 2012)

cdkw2 commented 1 year ago

11 year old version may not be able to cut it

ItsTerm1n4l commented 1 year ago

ok i will have a look at a newer version but I think the version you first installed was justa s old as that too came from the debian archives

ItsTerm1n4l commented 1 year ago

oh nvm that was 2020

ItsTerm1n4l commented 1 year ago

ok, so I should be able to install the 64 bit "modern" 2020 version of geogebra and all the libraries then make a pi-capps package