ShyanJMC

ShyanJMC's RepositoryRepository

This webpage describe the information about my repository for linux distributions that works with pacman package manager.

Objetive

In the repository you will find common programs compiled as minimal packages. This means that X package only will have the essential features to work and maintain the security at running time.

This will provide you with packages with the lowest size and requeriments possible, but also maybe you will find that X feature is not available.

Compilation process

All C and C++ programs are compiled with GCC arguments;

CFLAGS="-fPIE -fstack-protector-all -D_FORTIFY_SOURCE=2 -O2"

All Go programs are compiled with arguments;

CGO_CPPFLAGS="-D_FORTIFY_SOURCE=2 -fPIE -fstack-protector-all"

All Rust programs are compiled with arguments;

RUSTFLAGS="-C opt-level=2 -C debuginfo=0 -C lto"

Use cases

  • You have an embedded system with specific features.
  • You are using IoT devices.
  • You are planning run a minimal web server.

Structure

In https://repository.shyanjmc.com you will find the main repository.

Instalation

You need pacman package manager to use. Then add this to; /etc/pacman.conf

[minimal-repository]
Include = /etc/pacman.d/shyanjmc-mirrorlist

And then create that file with this information inside. Open the file “/etc/pacman.d/shyanjmc-mirrorlist” and put inside:

# Europe
Server = https://repository.shyanjmc.com

Then you need import my gpg public key (with I sign all packages) and self sign in your system;

wget https://repository.shyanjmc.com/shyanjmc@protonmail.com.pubkey && pacman-key --add shyanjmc@protonmail.com.pubkey && pacman-key --lsign-key 5FB85E59272D09BCEB426FEEF0D5A10299C11E94

Then upgrade your databases with;

pacman -Syyq

and then you fill can install programs from my repository.