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

installer: make installation of .desktop files ~/.local optional #1926

Open
stranskj opened this issue Jun 18, 2024 · 7 comments
Open

installer: make installation of .desktop files ~/.local optional #1926

stranskj opened this issue Jun 18, 2024 · 7 comments

Comments

@stranskj
Copy link

Hi,
I used the installer ATSAS-4.0.0-2-Linux-Ubuntu-22.run to install Atsas from command line with following command:
./ATSAS-4.0.0-2-Linux-Ubuntu-22.run --root /home/myusernane/software/ATSAS-4.0.0 --file-query KeyFilePath=atsas.lic --confirm-command install
which resulted to "corrupted" system. Many apps crashing without opeining, messed up icons in system menu etc.

I found that (re)moving ~/.local fixed the problem. By Installer log, there are items copied in there.

I think, it would be great, if the installer had option to not copy anything to any upfront known locations (like ~/.local), since it makes maintanence of parallel versions much harder. (and it did not work anyway)

P.S. Even though, I expected all installer answers to be answered, the was still one, which had to be counter-intuitively answered "No" for installer to do anything.
InstallationLog.txt

@franke-biosaxs
Copy link
Member

franke-biosaxs commented Jun 18, 2024

[...] which resulted to "corrupted" system. Many apps crashing without opeining, messed up icons in system menu etc.
I found that (re)moving ~/.local fixed the problem. By Installer log, there are items copied in there.

May I guess that you had more than one install and that the ATSAS variable pointed elsewhere? If so, the outcome is not unexpected. Other than that, with everything set up correctly, do the applications work now or do you still have trouble?

I think, it would be great, if the installer had option to not copy anything to any upfront known locations (like ~/.local), since it makes maintanence of parallel versions much harder. (and it did not work anyway)

The install documentation for Linux states that:

Parallel install and use of multiple versions of ATSAS is not yet supported at this time.

For more or less exactly this reason. Problem being, ~/.local is the place to put .desktop files to show up in the menu. If we do not place them there, someone will open an Issue that there are no menu entries.

P.S. Even though, I expected all installer answers to be answered, the was still one, which had to be counter-intuitively answered "No" for installer to do anything. InstallationLog.txt

Ah yes, the runtime dependencies. I created the manual based on the Windows installer that doesn't have this question. Sorry. Will add this for the Linux installer. Thanks!

@stranskj
Copy link
Author

[...] which resulted to "corrupted" system. Many apps crashing without opeining, messed up icons in system menu etc.
I found that (re)moving ~/.local fixed the problem. By Installer log, there are items copied in there.

May I guess that you had more than one install and that the ATSAS variable pointed elsewhere? If so, the outcome is not unexpected. Other than that, with everything set up correctly, do the applications work now or do you still have trouble?

Yes, I do have other ATSAS installations, but I did not have the ATSAS variable loaded. TBF, I just found that among the other manual versions, also a version registered within apt (atsas 3.2.1). Not sure, where that one came from. I will check after removing this. The ATSAS variable was empty regardless.
When I remove the ~/.local both Ubuntu apps and Atsas (from CLI, but including GUI) works. I was not able to clean the corrupted .local (from the log I am aware of mime and *.desktop). I need to find it in backups.

I think, it would be great, if the installer had option to not copy anything to any upfront known locations (like ~/.local), since it makes maintanence of parallel versions much harder. (and it did not work anyway)

The install documentation for Linux states that:

Parallel install and use of multiple versions of ATSAS is not yet supported at this time.

For more or less exactly this reason. Problem being, ~/.local is the place to put .desktop files to show up in the menu. If we do not place them there, someone will open an Issue that there are no menu entries.

Sorry, I read this with a confirmation bias :-) Anyway, the idea I am trying to pitch is, to have an installer option to not to create/install desktop-files (or anything outside --root), for those who know...

P.S. Even though, I expected all installer answers to be answered, the was still one, which had to be counter-intuitively answered "No" for installer to do anything. InstallationLog.txt

Ah yes, the runtime dependencies. I created the manual based on the Windows installer that doesn't have this question. Sorry. Will add this for the Linux installer. Thanks!

@franke-biosaxs
Copy link
Member

Anyway, the idea I am trying to pitch is, to have an installer option to not to create/install desktop-files (or anything outside --root), for those who know...

Noted :)

Ah yes, the runtime dependencies. I created the manual based on the Windows installer that doesn't have this question. Sorry. Will add this for the Linux installer. Thanks!

I've added the description of the extra question in Linux:

Option Description
--auto-answer AutomaticRuntimeDependencyResolution=Yes|No Linux only: if 'Yes' an attempt is made to install required runtime dependency packages via apt-get or yum, respectively. This may require admin privileges (start the installer with sudo). Note that the answer/value provided is case sensitive; 'Yes', not 'yes'.

@franke-biosaxs franke-biosaxs changed the title Installer messes up Ubuntu installation installer: make installation of .desktop files ~/.local optional Jun 18, 2024
@stranskj
Copy link
Author

Btw., doesn't the need for Run Time Dependencies break the everything-included statement?

@franke-biosaxs
Copy link
Member

Those dependencies are things like compiler support libraries (most notable libgfortran/libquadmath which are not installed by default) and a couple of semi-standard system libraries (libxml, libtiff) that are easily available on Linux. For example, libtiff is used if you want to do your own radial averaging with im2dat. On Windows ATSAS includes a compiled-from-sources version of libtiff as well as all compiler support libraries, but why do that on Linux?

@stranskj
Copy link
Author

I agree. But it is inconsistency in the documentation and therefore unexpected behavior.

@franke-biosaxs
Copy link
Member

Thanks for the feedback. I've updated the install documentation. It now reads:

ATSAS is designed to run on any contemporary hardware, with no specific
system requirements or significant external dependencies. On Windows and
macOS, the packages include all necessary components for its operation.
On Linux the installer offers the option to automatically install
runtime-dependencies via the package manager of the distribution,
ensuring a seamless installation process.

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

No branches or pull requests

2 participants