Walkthrough:
Host: AMD Ryzen 7 2700X, Windows 10 1909, 16GB RAM
Guest: VirtualBox 6.0.18, 2 CPU, 4 GB RAM, 128MB VRAM, VBoxSVGA Graphics Controller w/ 3D Accel on, 2 Virtual Displays.
Guest OS: https://manjaro.org/downloads/official/xfce/
Mounted a blank dynamically-sized VMDK set to 100GB as the hard drive, and the Manjaro ISO as an optical disk.
Boot the machine, it will default to the ISO since there is no GRUB on the VMDK, and install Manjaro COMPLETELY DEFAULT.
Shut down the VM, un-mount the ISO.
Start VM, should now boot into the Manjaro xfce desktop environment.
Here, I let Manjaro do ALL the updates it wanted to automatically through the Pamac GUI (the default Manjaro Package Manager)
Through Pamac, install meson, gcc, pkgconf, glm, and gobject-introspection.
Grab & run the Wayfire install script git clone https://github.com/WayfireWM/wf-install && cd wf-install && ./install.sh
Run Wayfire with /opt/wayfire/bin/startwayfire
Quand je n’écris pas en TypeScript, je m’intéresse à Rust, langage de programmation système au typage fort et statique créé par Mozilla. Entre autres, par…
A full-text search engine in rust. Contribute to toshi-search/Toshi development by creating an account on GitHub.
A plain docker environment for building static binaries compiled with rust and linked against musl instead of glibc. Built nightly on travis.
This is only useful if you require external C dependencies, because otherwise you could do rustup target add x86_64-unknown-linux-musl.
This container comes with a bunch of statically compiled C libraries using musl-gcc so that we can statically link against these as well.
If you already have rustup installed on the machine that should compile, you might consider cross as a more general solution for cross compiling rust binaries.
Usage
Pull and run from a rust project root:
docker pull clux/muslrust
docker run -v $PWD:/volume --rm -t clux/muslrust cargo build
You should have a static executable in the target folder:
ldd target/x86_64-unknown-linux-musl/debug/EXECUTABLE
not a dynamic executable
From there on, you can include it in a blank docker image (because everything you need is included in the binary) and perhaps end up with a 5MB docker blog image.
This post is intended as a tour of various techniques (not necessarily all practical) of reducing program size, but if you demand some conclusion, the pragmatic takeaway is that:
Compile with --release.
Before distribution, enable LTO and strip the binary.
If your program is not memory-intensive, use the system allocator (assuming nightly).
You may be able to use the optimization level s/z in the future as well.
I didn’t mention this because it doesn’t improve such a small program, but you can also try UPX and other executable compressors if you are working with a much larger application.
Meet Rocket.
Rocket is a web framework for Rust that makes it simple to write fast, secure web applications without sacrificing flexibility, usability, or type safety.
Really flexible federated social media!
If you've written some Rust code, you can compile it into WebAssembly! This tutorial takes you through all you need to know to compile a Rust project to wasm and use it in an existing web app.
Le livre de la documentation de Cargo pour Rust
Asynchronisme en rust
Bon faut que je me mette à apprendre Rust.
ce langage me parle, il m'appelle :p
non sérieusement il a l'air bien, entre C++ et les langages de hauts niveaux..
Allez je m'y met !
voir aussi
Bon pour faire un epub de la version 2018 de Rust Language:
wget \
--recursive \
--no-clobber \
--page-requisites \
--html-extension \
--convert-links \
--domains rust-lang.org \
--no-parent \
https://doc.rust-lang.org/book/2018-edition/cd ./doc.rust-lang.org/book/
ebook-convert ./2018-edition/index.html rust_lang.epub --title 'Rust Language' --output-profile kobo
Library for serializing the RSS web content syndication format.
Supported Versions
Reading from the following RSS versions is supported:
RSS 0.90
RSS 0.91
RSS 0.92
RSS 1.0
RSS 2.0
Writing support is limited to RSS 2.0.
Documentation
Released
Master
Usage
Add the dependency to your Cargo.toml.
[dependencies]
rss = "1.0"
The package includes a single crate named rss.
extern crate rss;
Library for serializing the Atom web content syndication format.
Documentation
Usage
Add the dependency to your Cargo.toml.
[dependencies]
atom_syndication = "0.6"
Or, if you want Serde include the feature like this:
[dependencies]
atom_syndication = { version = "0.6", features = ["with-serde"] }
The package includes a single crate named atom_syndication.
extern crate atom_syndication;
Xargo is “a drop-in replacement for cargo”, so every cargo command also works with xargo. You can do e.g. xargo --help, xargo clean, or xargo doc. However, the build command gains additional functionality: xargo build will automatically cross compile the core library when compiling for custom targets.
https://os.phil-opp.com/set-up-rust/#target-specifications
https://os.phil-opp.com/set-up-rust/#compiling
switch to nigthly:
https://github.com/rust-lang-nursery/rustup.rs#working-with-nightly-rust
rustup install nightly
rustup default nightly
rustup update