mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-04-04 22:39:46 +00:00
Feature/consolidate setup (#3092)
* start consolidating * add start-cli flash-os * combine install and setup and refactor all * use http * undo mock * fix translation * translations * use dialogservice wrapper * better ST messaging on setup * only warn on update if breakages (#3097) * finish setup wizard and ui language-keyboard feature * fix typo * wip: localization * remove start-tunnel readme * switch to posix strings for language internal * revert mock * translate backend strings * fix missing about text * help text for args * feat: add "Add new gateway" option (#3098) * feat: add "Add new gateway" option * Update web/projects/ui/src/app/routes/portal/components/form/controls/select.component.ts Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * add translation --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Matt Hill <mattnine@protonmail.com> * fix dns selection * keyboard keymap also * ability to shutdown after install * revert mock * working setup flow + manifest localization * (mostly) redundant localization on frontend * version bump * omit live medium from disk list and better space management * ignore missing package archive on 035 migration * fix device migration * add i18n helper to sdk * fix install over 0.3.5.1 * fix grub config --------- Co-authored-by: Matt Hill <mattnine@protonmail.com> Co-authored-by: Matt Hill <MattDHill@users.noreply.github.com> Co-authored-by: Alex Inkin <alexander@inkin.ru> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -20,7 +20,7 @@ use crate::prelude::*;
|
||||
use crate::rpc_continuations::Guid;
|
||||
use crate::s9pk::S9pk;
|
||||
use crate::s9pk::git_hash::GitHash;
|
||||
use crate::s9pk::manifest::Manifest;
|
||||
use crate::s9pk::manifest::{LocaleString, Manifest};
|
||||
use crate::s9pk::merkle_archive::directory_contents::DirectoryContents;
|
||||
use crate::s9pk::merkle_archive::source::http::HttpSource;
|
||||
use crate::s9pk::merkle_archive::source::multi_cursor_file::MultiCursorFile;
|
||||
@@ -155,20 +155,21 @@ impl From<PackSource> for DynFileSource {
|
||||
|
||||
#[derive(Deserialize, Serialize, Parser)]
|
||||
pub struct PackParams {
|
||||
#[arg(help = "help.arg.input-path")]
|
||||
pub path: Option<PathBuf>,
|
||||
#[arg(short, long)]
|
||||
#[arg(short, long, help = "help.arg.output-path")]
|
||||
pub output: Option<PathBuf>,
|
||||
#[arg(long)]
|
||||
#[arg(long, help = "help.arg.javascript-path")]
|
||||
pub javascript: Option<PathBuf>,
|
||||
#[arg(long)]
|
||||
#[arg(long, help = "help.arg.icon-path")]
|
||||
pub icon: Option<PathBuf>,
|
||||
#[arg(long)]
|
||||
#[arg(long, help = "help.arg.license-path")]
|
||||
pub license: Option<PathBuf>,
|
||||
#[arg(long, conflicts_with = "no-assets")]
|
||||
#[arg(long, conflicts_with = "no-assets", help = "help.arg.assets-path")]
|
||||
pub assets: Option<PathBuf>,
|
||||
#[arg(long, conflicts_with = "assets")]
|
||||
#[arg(long, conflicts_with = "assets", help = "help.arg.no-assets")]
|
||||
pub no_assets: bool,
|
||||
#[arg(long, help = "Architecture Mask")]
|
||||
#[arg(long, help = "help.arg.architecture-mask")]
|
||||
pub arch: Vec<InternedString>,
|
||||
}
|
||||
impl PackParams {
|
||||
@@ -280,19 +281,19 @@ pub struct ImageConfig {
|
||||
|
||||
#[derive(Parser)]
|
||||
struct CliImageConfig {
|
||||
#[arg(long, conflicts_with("docker-tag"))]
|
||||
#[arg(long, conflicts_with("docker-tag"), help = "help.arg.docker-build")]
|
||||
docker_build: bool,
|
||||
#[arg(long, requires("docker-build"))]
|
||||
#[arg(long, requires("docker-build"), help = "help.arg.dockerfile-path")]
|
||||
dockerfile: Option<PathBuf>,
|
||||
#[arg(long, requires("docker-build"))]
|
||||
#[arg(long, requires("docker-build"), help = "help.arg.workdir-path")]
|
||||
workdir: Option<PathBuf>,
|
||||
#[arg(long, conflicts_with_all(["dockerfile", "workdir"]))]
|
||||
#[arg(long, conflicts_with_all(["dockerfile", "workdir"]), help = "help.arg.docker-tag")]
|
||||
docker_tag: Option<String>,
|
||||
#[arg(long)]
|
||||
#[arg(long, help = "help.arg.architecture-mask")]
|
||||
arch: Vec<InternedString>,
|
||||
#[arg(long)]
|
||||
#[arg(long, help = "help.arg.emulate-missing-arch")]
|
||||
emulate_missing_as: Option<InternedString>,
|
||||
#[arg(long)]
|
||||
#[arg(long, help = "help.arg.nvidia-container")]
|
||||
nvidia_container: bool,
|
||||
}
|
||||
impl TryFrom<CliImageConfig> for ImageConfig {
|
||||
@@ -755,7 +756,7 @@ pub async fn pack(ctx: CliContext, params: PackParams) -> Result<(), Error> {
|
||||
}
|
||||
};
|
||||
Some((
|
||||
s9pk.as_manifest().title.clone(),
|
||||
LocaleString::Translated(s9pk.as_manifest().title.to_string()),
|
||||
s9pk.icon_data_url().await?,
|
||||
))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user