Skip to content
This repository has been archived by the owner on Jun 11, 2024. It is now read-only.
/ qg-rust Public archive

Quickly download and create Virtual Machines compatible with quickemu.

License

Notifications You must be signed in to change notification settings

lj3954/qg-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NOTE: This project has been replaced by quickget-rs, which is a part of my quickemu-rs project.

Quickget-rs uses configurations containing information about distros, including URLs and checksums, which are generated daily in a CI/CD pipeline.

This leads to significantly faster performance, as well as less of a requirement for maintenance. All features from this project, other than the generation of configurations for bash quickemu, will be re-implemented in quickget-rs.

Description

This is a re-implementation of Quickget from the Quickemu project (https://github.com/quickemu-project/quickemu) in Rust.

This branch focuses on replicating the behaviour of the original bash script as effectively as possible.

Performance will be prioritized. For example, checksums will be fetched during, rather than before, the file download, which can save a significant amount of time depending on connection. Releases & Editions are also fetched from within the same function in the case that they're dynamic, which means that it's possible that only one request needs to be made. After all, almost all of the time waiting is caused by requests to web servers.

It is very much WIP. The majority of features are not implemented, and there are many major bugs.

Downloads, checksum verification, and config file creation are all implemented.

Compatibility

This program by itself is capable of being compiled and run on nearly any system. However, the VMs it creates rely on Quickemu to be of any use, which is only available for Unix-like systems such as GNU/Linux. However, the download-iso parameter is entirely usable on any system.

Instructions

  1. Install the Rust language. Many distros package it, but the recommended method is to use the Rustup script.
  2. Clone the repository: git clone https://github.com/lj3954/qg-rust
  3. Build the project using cargo build
  4. The compiled binary will be located within the "target" folder.

About

Quickly download and create Virtual Machines compatible with quickemu.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages