mathoudebine / mathoudebine/turing-smart-screen-python

Creating a Linux installation and uninstallation script - Ubuntu & Fedora

Open
#874 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rich Text Format
Stars
2.3k
Forks
412
Avg merge
21h 10m
Merged PRs (30d)
7

Description

Add environment setup and cleanup scripts

Benefit: Install more easy and secure #!!

I put the script on my github, you can use if you want: https://github.com/BRUNEXX13/turing-smart-screen

Problem:
Setting up the Python environment for this project requires multiple manual steps: installing system dependencies, Python packages with exact versions, creating a virtual environment, and running configure.py. Cleanup is also cumbersome.

Solution:
Add automated scripts for environment management:

install_env.sh – Installs system dependencies, creates virtual environment, installs Python packages, and runs configure.py.

uninstall_env.sh – Removes virtual environment, Python packages, and system development libraries.

uninstall_env_safe.sh – Removes only the virtual environment and Python packages inside it, leaving system packages untouched.

Key Features:

Works on Ubuntu/Debian and Fedora/RHEL/CentOS

Force-reinstalls critical Python packages (ruamel.yaml, Pillow, GPUtil) to prevent import errors

Automatically activates the virtual environment at the end of setup

Alternatives Tested:
Manual installation of dependencies using apt/dnf and pip. Error-prone, time-consuming, and not reproducible.

Environment:

Branch: main

OS: Ubuntu 22.04 / Fedora 38

Python: 3.13

Hardware: Intel/AMD CPU, NVIDIA GPU, Raspberry Pi 5

Additional context:
These scripts streamline setup, reduce errors, and improve onboarding for new contributors.

Tags: scripts, setup, python, environment, automation

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing manual dependency setup and configure.py flow, then compare the proposed install_env.sh, uninstall_env.sh, and uninstall_env_safe.sh responsibilities across Ubuntu/Debian and Fedora/RHEL/CentOS. Done means setup and cleanup are reproducible on the listed environments, with safe cleanup leaving system packages untouched.

Written by the indexing model from the issue text.

Assessment

Tech stack
fedora, python, shell, ubuntu
Domain
devops, operating-systems, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.