Code Monkey home page Code Monkey logo

ventoy-toybox's Introduction

Ventoy Toybox

Latest Version

A desktop application consisting of some helper utilities for ventoy

Download latest release here!

Preview

preview image

NOTE: Prebuilt binaries are available for amd64 Linux and Bindows

Features

  • Easy to use
  • Browse through latest linux distro releases
  • Download linux distro images via torrents
  • Filter releases by distro or torrent file name
  • Fetch updates for ventoy
  • Blazingly Fast
  • Messy code
  • Even more messier code courtesy of rustfmt refusing to work

Release feeds are handled by nozwock/ventoy-toybox-feed

Usage

Starting v0.4.0, release feeds and ventoy update packages are cached on disk.

  • To get latest release feeds you have to press the refresh button in the Browse OS Releases tab otherwise the on-disk cache will be used.

Building

Clone the repository using git and change to the local repository directory:

git clone https://github.com/nozwock/ventoy-toybox.git
cd ventoy-toybox

Stable Rust is required to build this project. Install it by following rustup.rs instructions.

cargo build --release

Known Issues

  • Scaling issues on x11 KDE Plasma; UI being too big

FAQs

  1. Wait a minute...couldn't you have just made a simple script to fetch updates? What's the purpose of all this?
    • Well...you wouldn't be enjoying this blazingly fast and feature-packed app then, would you? Haha..ha..hah...

Licenese

MIT

ventoy-toybox's People

Contributors

mrtanoshii avatar nozwock avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

ventoy-toybox's Issues

Improve error handling

  • Reduce number of unwraps & especially the ones which might panic the main UI thread
  • Any other improvements to error handling

NOTE: This Issue might stay open for a long time, since I'm rarely be going to work on this project moving forward.

crash on NoAvailablePixelFormat

App crashes in main (#7 lmao) with the error: called `Result::unwrap()` on an `Err` value: NoAvailablePixelFormat

OS: Arch linux (rolling) with Gnome on wayland using NVIDIA graphics.

BACKTRACE
~/git/ventoy-toybox main โฏ git describe --tags          
v0.4.1-3-ge9b94c7
~/git/ventoy-toybox main โฏ RUST_BACKTRACE=1 cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.08s
     Running `target/debug/ventoy-toybox`
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: NoAvailablePixelFormat', /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:45:14
stack backtrace:
   0: rust_begin_unwind
             at /rustc/1.65.0/library/std/src/panicking.rs:584:5
   1: core::panicking::panic_fmt
             at /rustc/1.65.0/library/core/src/panicking.rs:142:14
   2: core::result::unwrap_failed
             at /rustc/1.65.0/library/core/src/result.rs:1785:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/1.65.0/library/core/src/result.rs:1107:23
   4: eframe::native::run::create_display
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:37:9
   5: eframe::native::run::glow_integration::GlowWinitApp::new
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:254:35
   6: eframe::native::run::glow_integration::run_glow::{{closure}}
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:458:21
   7: eframe::native::run::with_event_loop::{{closure}}
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:84:9
   8: std::thread::local::LocalKey<T>::try_with
             at /rustc/1.65.0/library/std/src/thread/local.rs:445:16
   9: std::thread::local::LocalKey<T>::with
             at /rustc/1.65.0/library/std/src/thread/local.rs:421:9
  10: eframe::native::run::with_event_loop
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:83:5
  11: eframe::native::run::glow_integration::run_glow
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/native/run.rs:456:13
  12: eframe::run_native
             at /home/nezu/.cargo/registry/src/github.com-1ecc6299db9ec823/eframe-0.19.0/src/lib.rs:172:13
  13: ventoy_toybox::main
             at ./src/main.rs:17:5
  14: core::ops::function::FnOnce::call_once
             at /rustc/1.65.0/library/core/src/ops/function.rs:248:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Fails to run Ventoy2Disk on Windows

Issue regrading elevation privileges aswell as executing from wrong pwd.
Here are the error msgs:

  1. Without Admin privileges: "The requested operation requires elevation. (os error 740)"
  2. With Admin privileges, Ventoy2Disk launches but gives error: "Please run under the correct directory!"

Relevant chunk of code here:

#[cfg(target_os = "windows")]
{
if let Err(err) = dbg!(Command::new(dbg!(self
.ventoy_bin_path
.as_ref()
.unwrap()
.as_ref()
.unwrap()))
.spawn())
{
self.prompt.ventoy_launch_err.visible = true;
self.prompt.ventoy_launch_err.text = err.to_string();
}
}

  • Fix error #2

Edit: Elevation problem to be moved to its own separate issue

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.