# mesk > [!WARNING] > Now we are primarily busy with the first prototypes rather than documentation, after v0.0.1 is released, examples will be added and additional documentation will be written that concerns the internal logic of the package manager, as well as some additional explanations for package builds, etc. Servers with repositories will be http-only for a while until we rent servers. and we'll set up i2pd for them. We are not abandoning the number one principle, it is currently difficult to combine both **Mesk is a source-based package manager based on i2p protocols, tailored for independence and the absence of spyware.** > [!TIP] > **It's hard to find a really working and at least** > **somehow documented i2p client library for absolutely any language.** > **But still, it was found in [emissary-core](https://github.com/altonen/emissary) and yosemite.** > **Big thanks from us all us! ❤️** **Themes:** - support us - policy in writing software # Package Structure `.mesk` - **is a compressed gzip tarball containing information on how to build, configure and install it**. ``` # Example file-tree of package.mesk . ├── BUILD ├── INSTALL ├── LICENSE ├── Makefile ├── SETTS └── src ├── some_code.c └── some_code.rs ``` - **BUILD:** Not required if the package does not require compilation/other assembly - **INSTALL:** Where or how to install the package? For example, you can just leave make install and the package will be installed by make, not mesk. - **SETTS:** What needs to be configured after installation? For example, install basic configurations (if this is not done in `INSTALL`) or export environment variables. **Binary packages are also supported, but the default installation is source-based.** You can set the package compilation parameters in the global /etc/mesk.toml. (Read more in the documentation.) For example, the compiler, optimization level settings, etc. Here we are similar to portage. The `.mesk` package can be generated automatically, given that the software is open source and based on standard build systems: `make`, `CMake`, `meson`, `cargo`. If the package does not require compilation, you must specify how and where to install it. **We only support open source software.** Binary builds of proprietary applications will not appear in the official repositories, but, for example, there will be open clients for messengers with a closed backend.