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

adds install target #20

Closed
wants to merge 6 commits into from
Closed

adds install target #20

wants to merge 6 commits into from

Conversation

Ds886
Copy link

@Ds886 Ds886 commented May 23, 2022

adds install target to be system wide
Limitation observed:

  1. lotus try to access some file when launching in the shared folder, it seems to only make the welcome screen stuck but haven't tested further (it also try to change the ownership of those files)
  2. lotus have it's own terminfo library I've changed the launcher shim to overwrite the TERM to xterm since I was using st and lotus didn't have it.

@taviso
Copy link
Owner

taviso commented May 23, 2022

Thank you! I'll test this out - I've been meaning to make a nice clean installation target.

I'm torn whether to keep the simple Makefile or to switch to autotools.

@Ds886
Copy link
Author

Ds886 commented May 24, 2022

I was a bit unsure regarding the prefix handling in terms of autobuild system myself
Hope the above method will help regarding the shim for a vim fashion regardless

Just checked and it writes temp file to the shared directory seeing in the installed temp folder it seems it originally meant to be run on a centralized server based on the setup123 manpage provided with the floppies- installed on /lotus and users will ssh into it(presumably with full access to the lotus folder)

I dont have access to the full manual but the configs in these lines might be of interest

There are two configuration files that affect the environment of 1-2-3. The file $HOME/.l123set contains a set of preferences for UNIX-specific functionality. The file $HOME/.l123cnf contains a user's set of preferences for
global variables modified in the /Worksheet Global menus.

Today it is rather unfriendly I would guess Ill add installation of the manpage for the main executable.

@taviso
Copy link
Owner

taviso commented May 24, 2022

Thanks, I've fixed how it finds the runtime files, now it should look where the binary is - I think that means the wrapper script isn't needed anymore.

I think I also need to make a default 123cnf, because that configures where /tmp is. Hmm, I'll figure out how to do that, then I'll merge this.

@taviso
Copy link
Owner

taviso commented May 27, 2022

I haven't forgotten about this PR, but I'm still changing how the paths work so I'm worried about merging it and then needing to break old installations later!

@Ds886
Copy link
Author

Ds886 commented May 27, 2022 via email

Makefile Outdated
Comment on lines 9 to 12
prefix ?= /
bindir = ${prefix}usr/local/bin
sharedir = ${prefix}usr/local/share/lotus
profiledir = ${prefix}etc/profile.d
Copy link

@audunmg audunmg May 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd really appreciate if you set prefix to /usr/local and set bindir and sharedir to ${prefix}/bin and ${prefix}/share

That way package maintainers can make prefix=$packageroot/usr/ install or similar

(edited for markdown formatting)

@Ds886
Copy link
Author

Ds886 commented May 30, 2022 via email

@vrza
Copy link
Contributor

vrza commented Jun 3, 2022

The architecture-specific 123 binary should probably not live under /usr/share or /usr/local/share, as (per Linux Filesystem Hierarchy Standard) this is for architecture-independent data.

I did some exploratory coding in #68 to make the 123 binary attempt to find runtime data in ../share.

Another approach often used in such situations is to install runtime data, binary and default config file under /opt/lotus, this is in line with the FHS and would make the directory hierarchy predictable to the 123 binary, and could also make developer installation use-case and end-user installation use case very similar from the prespective of the 123 binary.

Also, we should try to avoid individual users having to modify their environment in order to run the program (and we have enough control to be able to avoid it).

@taviso
Copy link
Owner

taviso commented Jun 3, 2022

Thank you for the PR, we ended up merging this as part of #72

@taviso taviso closed this Jun 3, 2022
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

Successfully merging this pull request may close these issues.

4 participants