Skip to content
This repository was archived by the owner on Jun 26, 2026. It is now read-only.
This repository was archived by the owner on Jun 26, 2026. It is now read-only.

Future Updates #1

Description

@nixxoq

I'm planning to rewrite ocapps (xp-apps v2) in Rust. I no longer have the desire to write in C# (AKA Microsoft Java).

Why Rust?

  • Need to develop basic interaction skills with the language. I started learning it back in 2023, but only successfully managed to understand it this year (basic C++ knowledge plays an important role in this, as Rust is more similar to C-like languages).
  • And why not? ocapps is currently at an early stage of development (and the code is quite raw), so experimenting is possible in theory.

PROBLEMS DURING DEVELOPMENT

Yes, there will be problems. As I was writing this text, I've found only one problem and potential solutions so far (which, by the way, is very similar to my C# version of xp-apps).
The list of problems will be updated under this issue.

  • Rust on One-Core-API is still quite buggy. At least libraries like reqwest and hyper are broken. This means getting file content via something like:
// --snip--
reqwest::get("https://github.com/shorthorn-project/One-Core-API-Applications-Installer/blob/main/apps.yml").await?.text().await?;

Won't work.

Solutions:

  • I thought it would be better to execute curl application as well (yes, curl will be an additional dependency, but what can you do if this is, at least, the best option?). This, by the way, was done in the v1 version of xp-apps. Because for TLS 1.2 to work in System.Net.WebClient, One-Core-API was required along with .net Framework 4.5 (in conjunction with .net framework 3.5, 4.0, otherwise there would be an error).

Soon I will create a separate branch for this and link this issue to the PR.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions