A Python-based clone of the GNU install command.
Project description
Lithio - Python clone of GNU install
Lithio is a Python clone of the GNU install command, designed to provide a safe, flexible, and cross-platform solution for installing files and managing file permissions in various environments.
Installation
To install, run (be aware of what the install.sh script does):
bash install.sh
Note: The
install.shscript sets up the package and installs necessary dependencies. Review the script before running it to understand what actions it performs.
To install files:
Once installed, you can use lithio to install files:
lithio file1 file2 /path/to/destination
This will copy file1 and file2 to the specified destination directory.
Note: If you used
install.shto install the package, you can install files that require elevated privilegessudo -E lithio
To install files with sudo:
sudo -E lithio file1 file2 /path/to/destination
The -E flag preserves the user's environment, which is useful when running the command with sudo.
Features
- Simple command-line usage: Install files with ease and flexibility.
- Checksum validation: You can validate file integrity using the
--checksum <checksum_file>option with--checksum-type. The<checksum_file>should contain a list of file names and their associated hashes in the format<file_name>:<file_hash>\n. - Usability in scripts:
lithiodoes not require any kind of user interaction, making it ideal for automation. - Extendable: Easily adaptable for future functionalities.
- More: More information can be found in the
manpageman lithio
Contributing
Contributions are welcome! If you have suggestions, bug reports, or improvements, please open an issue or submit a pull request.
- Fork the repository
- Create a new branch (`git checkout -b feature-branch`)
- Commit your changes (`git commit -am 'Add new feature'`)
- Push to the branch (`git push origin feature-branch`)
- Create a new pull request
Make sure to add tests and documentation for your changes.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contact
For questions, you can reach me at voyager-2019@outlook.com.
Acknowledgments
- Inspired by the GNU `install` command
- Thanks to the contributors who helped improve this project!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lithio-1.0.0.tar.gz.
File metadata
- Download URL: lithio-1.0.0.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.24.1 CPython/3.13.3 Linux/6.14.0-15-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6922eef4e7a1971158318823c478536714136ca2ddddc11853bb3b70915be42
|
|
| MD5 |
2738d686693ab69682402191a423b988
|
|
| BLAKE2b-256 |
37203e751ebed94d573dc363ee65c3209d51ff60e4a9abd80f4b8d147068c06b
|
File details
Details for the file lithio-1.0.0-py3-none-any.whl.
File metadata
- Download URL: lithio-1.0.0-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.24.1 CPython/3.13.3 Linux/6.14.0-15-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f792d7302662e553bf22979b2f5bcd3b07bbc5658d8fab6a4756ec8163932fc
|
|
| MD5 |
afd18a7101e66e33aee128c7ef59819d
|
|
| BLAKE2b-256 |
e40783ba2f3cf5b37f69c88d9acdc77aaccb765fa68b1452b5be006acc2ca853
|