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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions