Skip to content

Improve Installation Structure & Uninstallation Process #100

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

Open
isaka-james opened this issue Feb 23, 2025 · 0 comments
Open

Improve Installation Structure & Uninstallation Process #100

isaka-james opened this issue Feb 23, 2025 · 0 comments

Comments

@isaka-james
Copy link
Contributor

The current installation process for nuru has a few structural issues that could be improved for better adherence to Linux standards and professionalism. This issue highlights necessary changes regarding binary placement, licensing, documentation, and uninstallation.

Current Observations & Issues

  1. File Placement in /usr/local/bin

    • The .tar.gz release package includes the nuru binary, LICENSE, and README.md.
    • During installation, all these files are moved to /usr/local/bin.
    • Issue: /usr/local/bin should only contain binaries; other files should be placed in appropriate directories (e.g., /usr/share/doc/nuru/ for documentation).
  2. License Display

    • Instead of placing LICENSE in /usr/local/bin, the CLI could display license details when prompted (e.g., nuru --license), or we can use the Python’s approach(license()).
  3. Termux Installation Path

    • Currently, the installation script places files in /usr/share/ and links them via .bashrc.
    • Issue: This is not a standard practice. Instead, the binary should be installed directly into /usr/bin, which would allow execution without modifying .bashrc.
  4. Improving the Linux Installation Process

    • A more streamlined installation method could be implemented by hosting an installation script on a subdomain (e.g., sh.nuruprogramming.org), similar to Rust’s sh.rustup.rs.
  5. Uninstallation Process

    • Currently, nuru has no formal uninstallation script, requiring manual removal of files.
    • Suggestion: Provide a nuru uninstall command or a script to cleanly remove installed files.

Proposed Solutions

  • Refactor the installation script to place non-binary files in appropriate directories.
  • Modify the script to install directly to /usr/bin on Termux, removing dependency on .bashrc.
  • Set up a subdomain for a cleaner installation process.
  • Implement an uninstallation script for proper cleanup.
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

1 participant