Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 37 additions & 25 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "khost"
version = "0.5.0"
version = "0.5.1"
edition = "2021"
authors = ["Kaspa developers"]
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -55,3 +55,4 @@ tokio = { version = "1.38.0", default-features = false, features = ['io-util','t
toml = "0.8.14"
whoami = "1.5.1"
xxhash-rust = { version = "0.8.7", features = ["xxh3"] }
semver = "1.0.28"
2 changes: 2 additions & 0 deletions Cross.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[target.x86_64-unknown-linux-gnu]
dockerfile = "./cross/x86_64-unknown-linux-gnu.Dockerfile"
9 changes: 9 additions & 0 deletions cross/x86_64-unknown-linux-gnu.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM rust:1-bookworm

RUN apt-get update && \
apt-get install -y --no-install-recommends \
build-essential \
pkg-config \
libssl-dev \
ca-certificates && \
rm -rf /var/lib/apt/lists/*
36 changes: 23 additions & 13 deletions src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ impl Config {
.with_local_interface(8989);

let pnnv1_origin = Self::pnnv1_origin()?;
let tn12_origin = Self::pnnv1tn12_origin()?;
let tn12_origin = Self::pnnv1_toccata_origin()?;

let kaspad = SupportedNetwork::iter()
.copied()
Expand Down Expand Up @@ -56,10 +56,10 @@ impl Config {
Origin::try_new("https://github.com/aspectron/rusty-kaspa", Some("pnn-v1"))
}

pub fn pnnv1tn12_origin() -> Result<Origin> {
pub fn pnnv1_toccata_origin() -> Result<Origin> {
Origin::try_new(
"https://github.com/aspectron/rusty-kaspa",
Some("pnn-v1-tn12"),
Some("pnn-v1-toccata"),
)
}
}
Expand Down Expand Up @@ -97,22 +97,32 @@ impl Config {
.any(|config| config.network() == SupportedNetwork::Testnet12.into())
{
config.kaspad.push(kaspad::Config::new(
Self::pnnv1tn12_origin()?,
Self::pnnv1_toccata_origin()?,
SupportedNetwork::Testnet12.into(),
));
update = true;
}

// update rk origin
for kaspad_config in config.kaspad.iter_mut().filter(|kaspad_config| {
kaspad_config.is_supported_network()
&& matches!(
kaspad_config.network(),
Network::Supported(SupportedNetwork::Testnet10 | SupportedNetwork::Mainnet)
)
}) {
*kaspad_config.origin_mut() = Self::pnnv1_origin()?;
update = true;
for kaspad_config in config
.kaspad
.iter_mut()
.filter(|kaspad_config| kaspad_config.is_supported_network())
{
match kaspad_config.network() {
Network::Supported(SupportedNetwork::Mainnet) => {
*kaspad_config.origin_mut() = Self::pnnv1_origin()?;
update = true;
}
// set to toccata in the meantime of master release
Network::Supported(SupportedNetwork::Testnet10) => {
*kaspad_config.origin_mut() = Self::pnnv1_toccata_origin()?;
update = true;

let _ = log::warning("warning: a manual tn10 node DB reset will be needed, either\n\t- remove manually, default location: `~/.rusty-kaspa/kaspa-testnet-10`\t- or, uninstall tn10 and re-install");
}
_ => (),
}
}
}

Expand Down
10 changes: 7 additions & 3 deletions src/git.rs
Original file line number Diff line number Diff line change
Expand Up @@ -180,14 +180,18 @@ where
enum Preset {
PNNv1,
// Delta,
Tn12,
PNNv1Toccata,
Custom,
}

let preset = if name == "rusty-kaspa" {
cliclack::select(format!("Select git origin for '{name}':"))
.item(Preset::PNNv1, "pnn-v1 (aspectron/pnn-v1)", "")
.item(Preset::Tn12, "tn12 (kaspanet/tn12)", "")
.item(
Preset::PNNv1Toccata,
"pnn-v1-toccata (aspectron/pnn-v1-toccata)",
"",
)
// .item(
// Preset::Delta,
// "Delta",
Expand All @@ -201,7 +205,7 @@ where

let origin = match preset {
Preset::PNNv1 => Config::pnnv1_origin()?,
Preset::Tn12 => Config::pnnv1tn12_origin()?,
Preset::PNNv1Toccata => Config::pnnv1_toccata_origin()?,
// Preset::Delta => {
// Origin::try_new("https://github.com/aspectron/rusty-kaspa", Some("delta"))?
// }
Expand Down
1 change: 1 addition & 0 deletions src/imports.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ pub use cfg_if::cfg_if;
pub use cliclack::log;
pub use is_root::is_root;
pub use pad::{Alignment, PadStr};
pub use semver::Version;
pub use serde::{Deserialize, Serialize};
pub use sha2::{Digest, Sha256};
pub use std::collections::{HashMap, HashSet, VecDeque};
Expand Down
8 changes: 3 additions & 5 deletions src/kaspad.rs
Original file line number Diff line number Diff line change
Expand Up @@ -260,12 +260,10 @@ pub fn has_legacy_network(ctx: &Context) -> bool {
|| legacy_network_service_exists()
}

pub fn warn_legacy_network(ctx: &Context) -> Result<()> {
pub fn warn_legacy_network(ctx: &Context) {
if has_legacy_network(ctx) {
log::warning("testnet-11 is deprecated and no longer supported for new kHOST deployments. If kaspa-testnet-11 is installed or running, uninstall it and install/enable testnet-12 instead. testnet-11 compatibility is kept only to load legacy configs and will be removed in a future version.")?;
let _ = log::warning("testnet-11 is deprecated and no longer supported for new kHOST deployments. If kaspa-testnet-11 is installed or running, uninstall it and install/enable testnet-12 instead. testnet-11 compatibility is kept only to load legacy configs and will be removed in a future version.");
}

Ok(())
}

pub fn fetch(ctx: &Context) -> Result<()> {
Expand Down Expand Up @@ -339,7 +337,7 @@ pub fn uninstall(ctx: &Context) -> Result<()> {
let data_folder = if let Some(data_folder) = &config.data_folder {
data_folder.clone()
} else {
home_folder().join(".kaspad")
home_folder().join(".rusty-kaspa")
};

let network_folder = data_folder.join(config.network.to_string());
Expand Down
3 changes: 2 additions & 1 deletion src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,8 @@ fn main() {

sudo::init(&mut ctx);

kaspad::warn_legacy_network(&ctx).ok();
kaspad::warn_legacy_network(&ctx);
nginx::warn_cve_2026_42945();

let first_run = !ctx.config.bootstrap;

Expand Down
Loading
Loading