Your All-in-One Linux Management Solution: The Linux IT Guy Toolbox
Posted by TheLinuxITGuy@reddit | linux | View on Reddit | 13 comments
I’m excited to share a project I’ve been working on - The Linux IT Guy Toolbox! This Python-based GUI tool is designed to make managing your Linux system a breeze. Whether you’re installing or removing applications, managing power settings, or performing system updates, this toolbox has got you covered!
Features
- Install Applications: Easily install a variety of applications categorized by their use.
- Remove Applications: Quickly remove unwanted applications.
- Administration: Manage power settings, update your system, and more.
- Cross-Distribution Support: Works on Debian-based, Arch-based, and Fedora-based distributions.
- Automatic Dependency Installation: Checks for and installs necessary dependencies.
Installation
Clone the repository and run:
git clone https://github.com/TheLinuxITGuy/The-Linux-IT-Guy-Toolbox.git && cd The-Linux-IT-Guy-Toolbox && python3 Main.py
Usage
- Install Tab: Select the applications you want to install from the categorized list and click “Run”.
- Remove Tab: Select the applications you want to remove and click “Run”.
- Administration Tab: Manage power settings, update your system, and more by selecting the desired options and clicking “Run”.
Configuration
The applications and their categories are defined in the apps_config.csv
file. You can customize this file to add or remove applications as needed. The format is as follows:
Category,App Name,Flatpak Location (leave Flatpak Location blank if using dnf, nala, or pacman)
Dependencies
The script automatically checks for and installs the following dependencies if they are not already installed:
gi (part of pygobject)
Gtk (part of pygobject)
License
This project is licensed under the MIT License. See the LICENSE file for details.
I hope you find this toolbox useful! Let me know if you have any questions or feedback.
GitHub Repo: https://github.com/TheLinuxITGuy/The-Linux-IT-Guy-Toolbox
adamkex@reddit
This is pretty cool but what would be cooler would be if you'd fork this into a version that only does Flatpak.
Basically an alternative to Discover and GNOME software. So it would be able to search software, update software, show the screenshots, reviews and those sort of things. This would be great for people who use DE/WMs like XFCE, Cinnamon, MATE, LXQt, tiling, *box. I personally don't like using Flatpak through the CLI.
Crazy_Amphibian_8440@reddit
haters in the comments 💯🔥
Crazy_Amphibian_8440@reddit
then they wonder when year of linux will be as they actively discourage projects aimed at newer users
mwyvr@reddit
Not every project has sufficient merit.
Crazy_Amphibian_8440@reddit
mwyvr@reddit
Announcing/releasing a product will draw praise and constructive criticism. This is a good thing.
Crazy_Amphibian_8440@reddit
criticism ≠ discouragement
BitterAmos@reddit
What was the problem you were trying to solve when creating this?
Cross distro app and settings management is pretty well covered with things like ansible, etc. Recreating that function in a GUI feels reductive, as it eliminates all the automateable benefits of the tools you are obscuring.
TheLinuxITGuy@reddit (OP)
Python is faster and I have more control. With that being said you have sparked my interest in ansible. Would be cool to convert the backend to yaml to see if I can get it to work as a playbook. This is a learning project that I’m sharing. This toolbox makes it easy for me to distro hop, install everything with checkboxes, click on button, and move on to something else.
Source: https://www.rogerperkin.co.uk/network-automation/ansible/ansible-vs-python-scripts/
rileyrgham@reddit
It appears to be, at first glance, a GUI for, mainly, installing/removing flatpaks? For other things how is its dependency management any different or better than that handled by apt?
My,own take on it is that "all in One management solutions" invariably cloud the process and lead to broken systems where you've no idea what caused it ... But hopefully my pessimism is ill founded and I wish you the best with this project!
TheLinuxITGuy@reddit (OP)
Thank you for your feedback and well wishes.
The toolbox is indeed designed to provide a user-friendly GUI for managing various applications and system settings. While it does support installing and removing flatpaks, it also handles applications installed via traditional package managers like dnf, nala, and pacman.
Regarding dependency management, the toolbox doesn’t aim to replace the robust dependency handling provided by these package managers. Instead, it leverages them to ensure that dependencies are managed correctly. For example, when installing an application via nala, the toolbox relies on nala to handle dependencies just as it would if you were installing the application directly from the command line.
I understand your concerns about “all-in-one” solutions potentially leading to broken systems. The goal of this toolbox is to simplify common tasks without obscuring the underlying processes. It provides a convenient interface for users who may not be as comfortable with the command line, while still respecting the integrity of the system’s package management.
mwyvr@reddit
How is this tool not "obscuring the underlying processes"?
You are even using a non-standard package manager for Debian.
This seems like a lot of repeated code and unnecessary GUI to do something like
pacman -Syu powertop
.I honestly don't see the value here. Simplicity is usually the best.
KrazyKirby99999@reddit
Why install vscode as a flatpak but not OBS?