HOTFIX: utils: Move plugins into new assets folder (#2003)
that is included in the utils to make builds pass.
This commit is contained in:
parent
36233439f9
commit
1e141aa7fe
10 changed files with 18 additions and 19 deletions
|
|
@ -7,7 +7,7 @@ description = "A terminal workspace with batteries included"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
repository = "https://github.com/zellij-org/zellij"
|
repository = "https://github.com/zellij-org/zellij"
|
||||||
homepage = "https://zellij.dev"
|
homepage = "https://zellij.dev"
|
||||||
include = ["src/**/*", "assets/plugins/*", "assets/layouts/*", "assets/config/*", "LICENSE.md", "README.md", "!**/*_test.*", "!**/tests/**/*"]
|
include = ["src/**/*", "assets/layouts/*", "assets/config/*", "LICENSE.md", "README.md", "!**/*_test.*", "!**/tests/**/*"]
|
||||||
rust-version = "1.60"
|
rust-version = "1.60"
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,7 @@ workspace = false
|
||||||
script_runner = "@duckscript"
|
script_runner = "@duckscript"
|
||||||
script = '''
|
script = '''
|
||||||
plugins = glob_array ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/default-plugins/*
|
plugins = glob_array ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/default-plugins/*
|
||||||
out_dir = set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/assets/plugins/
|
out_dir = set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/zellij-utils/assets/plugins/
|
||||||
mkdir ${out_dir}
|
mkdir ${out_dir}
|
||||||
|
|
||||||
for plugin in ${plugins}
|
for plugin in ${plugins}
|
||||||
|
|
@ -111,10 +111,16 @@ workspace = false
|
||||||
script_runner = "@duckscript"
|
script_runner = "@duckscript"
|
||||||
script = '''
|
script = '''
|
||||||
plugins = glob_array ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/default-plugins/*
|
plugins = glob_array ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/default-plugins/*
|
||||||
|
out_dir = set ${CARGO_MAKE_WORKSPACE_WORKING_DIRECTORY}/zellij-utils/assets/plugins/
|
||||||
|
mkdir ${out_dir}
|
||||||
|
|
||||||
for plugin in ${plugins}
|
for plugin in ${plugins}
|
||||||
cd ${plugin}
|
cd ${plugin}
|
||||||
exec cargo build
|
exec cargo build
|
||||||
|
plugin_name = basename ${plugin}
|
||||||
|
plugin_in = set ${CARGO_TARGET_DIR}/wasm32-wasi/debug/${plugin_name}.wasm
|
||||||
|
plugin_out = set ${out_dir}/${plugin_name}.wasm
|
||||||
|
cp ${plugin_in} ${plugin_out}
|
||||||
cd ..
|
cd ..
|
||||||
end
|
end
|
||||||
'''
|
'''
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -5,6 +5,7 @@ authors = ["Kunal Mohan <kunalmohan99@gmail.com>"]
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
description = "A utility library for Zellij client and server"
|
description = "A utility library for Zellij client and server"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
include = ["src/**/*", "assets/"]
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,10 +35,10 @@ pub const FEATURES: &[&str] = &[
|
||||||
"disable_automatic_asset_installation",
|
"disable_automatic_asset_installation",
|
||||||
];
|
];
|
||||||
|
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
pub use not_wasm::*;
|
pub use not_wasm::*;
|
||||||
|
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
mod not_wasm {
|
mod not_wasm {
|
||||||
use lazy_static::lazy_static;
|
use lazy_static::lazy_static;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
@ -49,17 +49,9 @@ mod not_wasm {
|
||||||
($assets:expr, $plugin:literal) => {
|
($assets:expr, $plugin:literal) => {
|
||||||
$assets.insert(
|
$assets.insert(
|
||||||
PathBuf::from("plugins").join($plugin),
|
PathBuf::from("plugins").join($plugin),
|
||||||
#[cfg(debug_assertions)]
|
|
||||||
include_bytes!(concat!(
|
include_bytes!(concat!(
|
||||||
env!("CARGO_MANIFEST_DIR"),
|
env!("CARGO_MANIFEST_DIR"),
|
||||||
"/../target/wasm32-wasi/debug/",
|
"/assets/plugins/",
|
||||||
$plugin
|
|
||||||
))
|
|
||||||
.to_vec(),
|
|
||||||
#[cfg(not(debug_assertions))]
|
|
||||||
include_bytes!(concat!(
|
|
||||||
env!("CARGO_MANIFEST_DIR"),
|
|
||||||
"/../assets/plugins/",
|
|
||||||
$plugin
|
$plugin
|
||||||
))
|
))
|
||||||
.to_vec(),
|
.to_vec(),
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ use serde::{Deserialize, Serialize};
|
||||||
use url::Url;
|
use url::Url;
|
||||||
|
|
||||||
use super::layout::{RunPlugin, RunPluginLocation};
|
use super::layout::{RunPlugin, RunPluginLocation};
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
use crate::consts::ASSET_MAP;
|
use crate::consts::ASSET_MAP;
|
||||||
pub use crate::data::PluginTag;
|
pub use crate::data::PluginTag;
|
||||||
use crate::errors::prelude::*;
|
use crate::errors::prelude::*;
|
||||||
|
|
@ -129,7 +129,7 @@ impl PluginConfig {
|
||||||
for path in paths {
|
for path in paths {
|
||||||
// Check if the plugin path matches an entry in the asset map. If so, load it directly
|
// Check if the plugin path matches an entry in the asset map. If so, load it directly
|
||||||
// from memory, don't bother with the disk.
|
// from memory, don't bother with the disk.
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
if !cfg!(feature = "disable_automatic_asset_installation") && self.is_builtin() {
|
if !cfg!(feature = "disable_automatic_asset_installation") && self.is_builtin() {
|
||||||
let asset_path = PathBuf::from("plugins").join(path);
|
let asset_path = PathBuf::from("plugins").join(path);
|
||||||
if let Some(bytes) = ASSET_MAP.get(&asset_path) {
|
if let Some(bytes) = ASSET_MAP.get(&asset_path) {
|
||||||
|
|
@ -160,7 +160,7 @@ impl PluginConfig {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Not reached if a plugin is found!
|
// Not reached if a plugin is found!
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
if self.is_builtin() {
|
if self.is_builtin() {
|
||||||
// Layout requested a builtin plugin that wasn't found
|
// Layout requested a builtin plugin that wasn't found
|
||||||
let plugin_path = self.path.with_extension("wasm");
|
let plugin_path = self.path.with_extension("wasm");
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
use crate::consts::ASSET_MAP;
|
use crate::consts::ASSET_MAP;
|
||||||
use crate::input::theme::Themes;
|
use crate::input::theme::Themes;
|
||||||
use crate::{
|
use crate::{
|
||||||
|
|
@ -175,7 +175,7 @@ pub fn dump_specified_layout(layout: &str) -> std::io::Result<()> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(all(not(target_family = "wasm"), feature = "asset_map"))]
|
#[cfg(not(target_family = "wasm"))]
|
||||||
pub fn dump_builtin_plugins(path: &PathBuf) -> Result<()> {
|
pub fn dump_builtin_plugins(path: &PathBuf) -> Result<()> {
|
||||||
for (asset_path, bytes) in ASSET_MAP.iter() {
|
for (asset_path, bytes) in ASSET_MAP.iter() {
|
||||||
let plugin_path = path.join(asset_path);
|
let plugin_path = path.join(asset_path);
|
||||||
|
|
@ -205,7 +205,7 @@ pub fn dump_builtin_plugins(path: &PathBuf) -> Result<()> {
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(any(target_family = "wasm", not(feature = "asset_map")))]
|
#[cfg(target_family = "wasm")]
|
||||||
pub fn dump_builtin_plugins(_path: &PathBuf) -> Result<()> {
|
pub fn dump_builtin_plugins(_path: &PathBuf) -> Result<()> {
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue