aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authoremmett1 <emmett1.2miligrams@protonmail.com>2026-02-28 22:53:30 +0800
committeremmett1 <emmett1.2miligrams@protonmail.com>2026-02-28 22:53:30 +0800
commit9a5c52ca0ef1b2d82f7d87b27bf957b97c6bf711 (patch)
treed36e214338ef0d146ceab51ae835dd5cb58bf262 /docs
parent366a5b947f96acd519bb35fbb7b1b794ded85699 (diff)
downloadalicelinux-9a5c52ca0ef1b2d82f7d87b27bf957b97c6bf711.tar.gz
alicelinux-9a5c52ca0ef1b2d82f7d87b27bf957b97c6bf711.zip
updated website
Diffstat (limited to 'docs')
-rw-r--r--docs/install.md241
-rw-r--r--docs/packagedb.md330
-rw-r--r--docs/packagemanager.md160
-rw-r--r--docs/readme.md3
-rw-r--r--docs/repos.md11
5 files changed, 222 insertions, 523 deletions
diff --git a/docs/install.md b/docs/install.md
index dfcc1a4e..923d76f7 100644
--- a/docs/install.md
+++ b/docs/install.md
@@ -1,100 +1,121 @@
-# Install Alice
+Install Alice
+=============
-This is a guide to install Alice Linux on your computer using the chroot method. You can do this from your existing Linux distribution or from a live environment, such as Alice Live or another Linux distribution. Make sure your chosen environment has the necessary partitioning tools, filesystem tools, and extraction tools.
+Here is a guide to installing Alice Linux on your computer using the chroot method. You can do this from your existing Linux distribution or from a live environment, such as Alice Live or another Linux distribution. Make sure your chosen environment has the necessary partitioning tools, filesystem tools, and extraction tools.
-### Get Alice rootfs tarball
+Get Alice rootfs tarball
+------------------------
Download the Alice rootfs tarball from the [release](https://codeberg.org/emmett1/alicelinux/releases) page, along with its `sha256sum` file.
```
$ curl -O <url>
$ curl -O <url>.sha256sum
```
-Verify the checksum of the Alice rootfs tarball:
+
+Verify the checksum of the Alice rootfs tarball.
```
$ sha256sum -c alicelinux-rootfs-20240525.tar.xz.sha256sum
-```
-Make sure it prints:
-```
alicelinux-rootfs-20240525.tar.xz: OK
```
-### Prepare the partition and filesystem
+Prepare the partition and filesystem
+------------------------------------
-Prepare the partition and filesystem of your choice. In this guide `ext4` is used as an example.
+Prepare the partition and filesystem of your choice. In this guide, I will use `ext4` as an example.
```
# cfdisk /dev/sdX
# mkfs.ext4 /dev/sdXY
```
-Mount your created partition somewhere. In this guide `/mnt/alice` is used as the mount point.
+
+Mount your created partition somewhere. In this guide, I will use `/mnt/alice` as the mount point.
```
# mkdir /mnt/alice
# mount /dev/sdXY /mnt/alice
```
-### Extract the Alice rootfs tarball
+Extract the Alice rootfs tarball
+--------------------------------
Extract the Alice rootfs into the mounted partition.
```
$ tar xvf alicelinux-rootfs-*.tar.xz -C /mnt/alice
```
-### Enter chroot
+Enter chroot
+------------
-First, chroot into Alice. Replace `/mnt/alice` with your chosen mount point.
+First, chroot into Alice. (Replace `/mnt/alice` with your chosen mount point)
```
# /mnt/alice/usr/bin/apkg-chroot /mnt/alice
```
-All further commands will be executed inside the Alice environment.
-### Clone Alice repos
+Any further commands after this will be executed inside the Alice environment.
-Fetch the Alice packages repositories somewhere. I'll fetch them inside the `/var/lib` directory to keep the system clean.
-```
-# cd /var/lib
-# git clone --depth=1 https://codeberg.org/emmett1/alicelinux
-```
-Once we have the repositories cloned, we need to configure `apkg`. `apkg` is the Alice package build system or package manager. By default, Alice does not provide an `apkg` config file (yes, `apkg` can work without a config file), but we will create one for ease of use. The `apkg` config file should be located at `/etc/apkg.conf` by default.
+Configure apkg.conf
+-------------------
-### Configure apkg.conf
+Once we have the repositories cloned, we need to configure `apkg`. `apkg` is Alice's package build system (or package manager). By default, Alice does not provide an `apkg` config file (yes, `apkg` can work without a config file), but we need to create one. The `apkg` config file should be located at `/etc/apkg.conf` by default. Let's create one.
First, we set `CFLAGS` and `CXXFLAGS`. Alice base packages are built using `-O3 -march=x86-64 -pipe`. You can use these settings or change them to your preference.
```
# echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/apkg.conf
```
-And use what is in `CFLAGS` for `CXXFLAGS`.
+
+And use whats in `CFLAGS` for `CXXFLAGS`.
```
# echo 'export CXXFLAGS="$CFLAGS"' >> /etc/apkg.conf
```
+
Next set `MAKEFLAGS`. I will use `6` for my `8 threads` machine.
```
# echo 'export MAKEFLAGS="-j6"' >> /etc/apkg.conf
```
+
I'm also going to set `NINJAJOBS` here. Without it, `ninja` will use all threads of your machine when compiling.
```
# echo 'export NINJAJOBS="6"' >> /etc/apkg.conf
```
-Next, we need to set the package build scripts path (I'll call it `package repos`) so `apkg` can find them. The `APKG_REPO` variable can accept multiple values for multiple `package repos`.
-Alice provides four (4) `package repos` (at the time of this writing): `core`, `extra`, `xorg` and `wayland`:
- * `core` contains all base packages
- * `extra` includes other packages beyond the base
- * both `xorg` and `wayland` contain packages for the GUI and their dependencies.
+Next, we need to set the package's build scripts path (I'll call it `package repos`) so `apkg` can find them. The `APKG_REPO` variable can accept multiple values for multiple `package repos`.
+
+Alice provides two (2) `package repos` (at the time of this writing): `core` and `extra`. `core` contains all base packages, and `extra` includes other packages beyond the base.
+
+I'm gonna use directory `/var/lib/repos/core` and `/var/lib/repos/extra` for `core` and `extra` repos respectively.
+```
+# echo 'APKG_REPO="/var/lib/repos/core /var/lib/repos/extra"' >> /etc/apkg.conf
+```
+
+> NOTE: All repo paths must be declared in the APKG_REPO variable, separated by a single space.
+
+Next, we will set up directories for `packages`, `sources`, and `work`. By default, these directories are inside the package template, but we will change them to `/var/cache/pkg`, `/var/cache/src`, and `/var/cache/work` respectively. You can change these to any location where you want to store these files.
+
+First, create the directories.
+```
+# mkdir -p /var/cache/pkg
+# mkdir -p /var/cache/src
+# mkdir -p /var/cache/work
+```
-First, get the absolute path of the `package repos` where we cloned them. By the way, we are still inside the `/var/lib` directory where we cloned the repo.
+Then add these paths to `/etc/apkg.conf`.
+```
+# echo 'APKG_PACKAGE_DIR=/var/cache/pkg' >> /etc/apkg.conf
+# echo 'APKG_SOURCE_DIR=/var/cache/src' >> /etc/apkg.conf
+# echo 'APKG_WORK_DIR=/var/cache/work' >> /etc/apkg.conf
+```
->NOTE: USE TAB COMPLETION!
+Configure reposync.conf
+-----------------------
+`reposync` is a tool to sync package templates from git repositories. Add remote repos for `core` and `extra` into `/etc/reposync.conf`. The format of remote repos in `reposync.conf` is `<gitrepo>|<branch>|<localpath>`.
```
-# realpath alicelinux/repos/core
-/var/lib/alicelinux/repos/core
-# realpath alicelinux/repos/extra
-/var/lib/alicelinux/repos/extra
+# echo 'https://codeberg.org/emmett1/alicelinux|core|/var/lib/repos/core' >> /etc/reposync.conf
+# echo 'https://codeberg.org/emmett1/alicelinux|extra|/var/lib/repos/extra' >> /etc/reposync.conf
```
-After we have the path of our `package repos`, add it to the `APKG_REPO` variable in `/etc/apkg.conf`.
+
+Now run `reposync` to sync latest package templates.
```
-# echo 'APKG_REPO="/var/lib/alicelinux/repos/core /var/lib/alicelinux/repos/extra"' >> /etc/apkg.conf
+# reposync
```
->NOTE: All repo paths must be declared in the APKG_REPO variable, seperated by a single space.
After setting up our `package repos`, make sure `apkg` can find the packages. We can use `apkg -s <pattern>` to search for packages.
```
@@ -104,166 +125,196 @@ swaybg
swaylock
sway
```
-If the output appears, then we are good to go.
-Next, we will set up directories for `packages`, `sources`, and `work`. By default, these directories are inside the package template, but we will change them to `/var/cache/pkg`, `/var/cache/src`, and `/var/cache/work` respectively. You can change these to any location where you want to store these files.
-
-First, create the directories:
+Lets combine with `-p` flags to show path or package templates.
```
-# mkdir -p /var/cache/pkg
-# mkdir -p /var/cache/src
-# mkdir -p /var/cache/work
+# apkg -p $(apkg -s sway)
+/var/lib/repos/extra/sway
+/var/lib/repos/extra/swaylock
+/var/lib/repos/extra/swaybg
+/var/lib/repos/extra/swayidle
```
-Then add these paths to `/etc/apkg.conf`.
+If the output appears, then we are good to go.
+
+Full system upgrade/rebuild
+---------------------------
+
+On the first install, we should upgrade the system first.
+
+Before we do, install development packages first.
```
-# echo 'APKG_PACKAGE_DIR=/var/cache/pkg' >> /etc/apkg.conf
-# echo 'APKG_SOURCE_DIR=/var/cache/src' >> /etc/apkg.conf
-# echo 'APKG_WORK_DIR=/var/cache/work' >> /etc/apkg.conf
+# apkg -I meson cmake pkgconf libtool automake perl
```
-### Full system upgrade/rebuild
-On the first install, we should upgrade the system first.
-> Use uppercase `U` for a system upgrade, and lowercase `u` to upgrade a specific package.
+> NOTE: use upppercase 'i' for solve dependencies, lowecase 'i' without solve dependencies.
+
+Now lets upgrade our system.
```
# apkg -U
```
-If you changed `CFLAGS` and `CXXFLAGS` to something other than the default, it is a good time to perform a full rebuild first. In this case, you can skip upgrading the system, because performing a full rebuild will already use the latest version in `package repos`.
-> Add the `-f` flag to force rebuild of the existing prebuilt package.
-> `apkg -a` prints all installed packages on the system.
+> NOTE: Use uppercase `U` for a system upgrade, and lowercase `u` to upgrade a specific package of your choice.
+
+If you changed `CFLAGS` and `CXXFLAGS` to something other than the default, it's a good time to perform a full rebuild first. In this case, you can skip upgrading the system because performing a full rebuild will already use the latest version in `package repos`.
```
# apkg -u $(apkg -a)
```
-### Install development packages
-Before installing any additional packages, we need to install development packages.
-```
-# apkg -I meson cmake pkgconf libtool automake perl
-```
-### Install the kernel
+> NOTE: Add the `-f` flag to force rebuild of existing prebuilt package.
+> NOTE: `apkg -a` prints all installed packages on the system.
+
+Install kernel
+--------------
You can configure your own kernel from [kernel.org](https://kernel.org/) or use the one provided by Alice.
-> The provided kernel will take a lot of time to compile, because many options are enabled.
-If you want to use Alice's kernel, just run:
+> NOTE: The provided kernel will take a lot of time to compile because many options are enabled.
+
+If you want to use Alice's kernel, just run.
```
# apkg -I linux
```
-### Install firmware
-If your hardware requires firmware, install it using:
+Install firmware
+----------------
+
+If your hardware requires firmware, install it using.
```
-# apkg -I linux-firmware linux-firmware-nvidia
+# apkg -I linux-firmware
```
-### Install bootloader
+Install bootloader
+------------------
-In this guide, I'm going to use `grub` as the bootloader. Install `grub`:
+In this guide, I'm going to use `grub` as the bootloader. Install `grub`.
```
# apkg -I grub
```
-Then generate grub config:
+
+Then generate grub config.
```
# grub-install /dev/sdX
# grub-mkconfig -o /boot/grub/grub.cfg
```
-### Hostname
+Hostname
+--------
Change `alice` to the hostname of your choice.
```
# echo alice > /etc/hostname
```
-### File systems table Fstab
+Fstab
+-----
-Change the partition and filesystem of your choice below:
+Change the partition and filesystem of your choice below.
```
# echo '/dev/sda1 swap swap defaults 0 1' >> /etc/fstab
# echo '/dev/sda2 / ext4 defaults 0 0' >> /etc/fstab
```
-### Enable runit services
-Alice uses busybox's `runit` as its main service manager. Enable the required services:
+Enable runit services
+---------------------
+
+Alice uses busybox's `runit` as its main service manager. Enable the required services.
```
# ln -s /etc/sv/tty1 /var/service
# ln -s /etc/sv/tty2 /var/service
# ln -s /etc/sv/tty3 /var/service
```
-I'm enabling 3 `tty` services. `tty` is required; without it, you won't be able to log in or run any commands.
+
+I'm enabling 3 `tty` services. `tty` is required; without it, you won't be able to log in (or run any commands).
+
> The runit service directory is `/etc/sv`.
> Create a symlink from `/etc/sv/<service>` to `/var/service` to enable it; remove the symlink to disable it.
-### Setup user and password
+Setup user and password
+-----------------------
-Add your user:
+Add your user.
```
# adduser <user>
```
-Add your user to the `wheel` group:
+
+Add your user to the `wheel` group.
```
# adduser <user> wheel
```
-You might need to add your user to the `input` and `video` groups to start the Wayland compositor later, and the `audio` group to have working audio:
+
+You might need to add your user to the `input` and `video` groups to start the Wayland compositor later, and the `audio` group to have working audio.
```
# adduser <user> input
# adduser <user> video
# adduser <user> audio
```
-### Root password
+Root password
+-------------
-Set the password for the `root` user:
+Set the password for the `root` user.
```
# passwd
```
-### Networking
+Networking
+----------
-You might want to set up networking before rebooting. Use `wpa_supplicant` and `dhcpcd`.
+You might want to set up networking before rebooting. For wifi connection, install `wpa_supplicant`.
```
-# apkg -I wpa_supplicant dhcpcd
+# apkg -I wpa_supplicant
```
-Configure your SSID:
+
+Configure your SSID.
```
# wpa_passphrase <YOUR SSID> <ITS PASSWORD> >> /etc/wpa_supplicant.conf
```
-Enable the service:
+
+Enable the service.
```
# ln -s /etc/sv/wpa_supplicant /var/service
-# ln -s /etc/sv/dhcpcd /var/service
```
-### Timezone
+Then configure & enable `udhcpc` service.
+```
+# vi /etc/sv/udhcpc/conf
+# ln -s /etc/sv/udhcpc /var/service
+```
+
+Timezone
+--------
-Install `tzdata`:
+Install `tzdata`.
```
# apkg -I tzdata
```
-Then create a symlink for your timezone to `/etc/localtime`:
+
+Then create a symlink for your timezone to `/etc/localtime`.
```
# ln -s /usr/share/zoneinfo/Asia/Kuala_Lumpur /etc/localtime
```
-Alternatively, you can copy it and then uninstall `tzdata` to keep your installed packages minimal:
+
+Alternatively, you can copy it and then uninstall `tzdata` to keep your installed packages minimal.
```
# cp /usr/share/zoneinfo/Asia/Kuala_Lumpur /etc/localtime
# apkg -r tzdata
```
-### Reboot and enjoy!
+Reboot and enjoy!
+-----------------
-Exit the chroot environment and unmount the Alice partition, then reboot:
+Exit the chroot environment and unmount the Alice partition, then reboot.
```
# exit
# umount /mnt/alice
# reboot
```
-The machine is now ready for use.
-## Some important notes
+Some important notes
+====================
-- `Alice` uses `spm` and `apkg` as its package manager and package build system. Run with the `-h` flag to see the available options.
+- `Alice` uses `spm` and `apkg` as its package manager and package build system. Run with the `-h` flag to see available options.
- Additional scripts are provided with the name `apkg-<script>` which will be added (or removed) from time to time.
- Use `revdep` to scan for broken libraries and binaries after system upgrades and package removals. You can use `revdep -v` to print out missing required libraries, and use `apkg -f -u $(revdep)` to scan and rebuild broken packages.
- Run `updateconf` to update config files in `/etc` after package upgrades.
diff --git a/docs/packagedb.md b/docs/packagedb.md
deleted file mode 100644
index 963a01d8..00000000
--- a/docs/packagedb.md
+++ /dev/null
@@ -1,330 +0,0 @@
-## List available packages in repositories
-Use `Ctrl + F` to find packages
-
-|REPO|NAME|VERSION|DEPENDENCIES|
-|:-:|-|:-:|-|
-|core|autils|20240628-1|
-|core|baselayout|1-1|
-|core|binutils|2.42-1|
-|core|bison|3.8.2-1|
-|core|busybox|1.36.1-1|
-|core|bzip2|1.0.8-1|
-|core|ca-certificates|20240311-1|
-|core|curl|8.8.0-1|openssl<br>zlib
-|core|file|5.45-1|
-|core|flex|2.6.4-1|
-|core|gcc|14.1.0-2|gmp<br>mpc<br>mpfr
-|core|git|2.45.2-1|curl<br>expat<br>openssl<br>zlib
-|core|gmp|6.3.0-1|
-|core|initscripts|20240626-1|
-|core|linux-headers|6.6.30-1|
-|core|m4|1.4.19-1|
-|core|make|4.4.1-1|
-|core|mpc|1.3.1-1|gmp<br>mpfr
-|core|mpfr|4.2.1-1|gmp
-|core|musl|1.2.5-1|
-|core|openssl|3.3.0-1|
-|core|patch|2.7.6-1|
-|core|spm|20240527-1|
-|core|xz|5.6.2-1|
-|core|zlib|1.3.1-1|
-|extra|8821cu|20240330-1|
-|extra|acpi|1.7-1|
-|extra|adwaita-icon-theme|46.2-1|gtk3
-|extra|alsa-lib|1.2.10-1|
-|extra|alsa-utils|1.2.10-1|alsa-lib<br>ncurses
-|extra|at-spi2-core|2.46.0-1|dbus<br>glib<br>gobject-introspection<br>libxml2
-|extra|autoconf|2.72-1|perl
-|extra|automake|1.16.5-1|autoconf
-|extra|b3sum|1.3.1-1|
-|extra|bash|5.2.21-1|ncurses<br>readline
-|extra|birch|27691aa4fb2746f73c373e6653c1fb17795729f9-1|bash
-|extra|brightnessctl|0.5.1-1|
-|extra|c-ares|1.29.0-1|
-|extra|cairo|1.18.0-1|libpng<br>glib<br>pixman<br>fontconfig<br>libx11<br>libxcb<br>libxext<br>libxrender
-|extra|cbindgen|0.26.0-1|rust
-|extra|ccache|4.9.1-1|cmake<br>zstd
-|extra|cfm|0.6.6-1|
-|extra|clang|18.1.8-1|llvm
-|extra|cmake|3.29.6-1|expat
-|extra|cmus|2.11.0-1|
-|extra|dbus|1.14.10-1|
-|extra|dejavu-fonts-ttf|2.37-1|
-|extra|dfc|3.1.1-1|gettext-tiny
-|extra|dhcpcd|10.0.8-1|
-|extra|dosfstools|4.2-1|
-|extra|dropbear|2024.85-1|
-|extra|dtc|1.7.0-1|
-|extra|dunst|1.11.0-1|gdk-pixbuf<br>libnotify<br>libdeflate<br>libxscrnsaver<br>libxinerama
-|extra|e2fsprogs|1.47.1-1|
-|extra|efibootmgr|18-1|efivar
-|extra|efivar|39-1|popt
-|extra|eiwd|2.16-1|openresolv
-|extra|elfutils|0.191-1|
-|extra|exfatprogs|1.2.4-1|
-|extra|expat|2.6.2-1|
-|extra|fdk-aac|2.0.3-1|
-|extra|fff|2.2-1|bash
-|extra|ffmpeg|7.0.1-1|nasm<br>libaom<br>libtheora<br>opus<br>libass<br>fdk-aac<br>lame<br>libvpx<br>x264<br>x265
-|extra|firefox|127.0.1-1|rust<br>alsa-utils<br>nspr<br>clang<br>rust<br>cbindgen<br>icu<br>nodejs<br>gtk3<br>libwebp<br>libvpx<br>nasm<br>nss<br>libevent
-|extra|fontconfig|2.15.0-1|freetype<br>gperf
-|extra|freetype|2.13.2-1|libpng
-|extra|fribidi|1.0.15-1|
-|extra|fuse2|2.9.9-1|gettext-tiny
-|extra|gdk-pixbuf|2.42.12-1|glib<br>libjpeg-turbo<br>libpng<br>tiff<br>shared-mime-info<br>gobject-introspection
-|extra|geany|2.0-1|glib<br>gtk3
-|extra|gettext-tiny|0.3.2-1|
-|extra|glad|2.0.6-1|python-jinja2
-|extra|glib|2.78.4-1|pcre2
-|extra|glslang|14.2.0-1|
-|extra|gobject-introspection|1.78.1-1|glib
-|extra|gperf|3.1-1|
-|extra|gptfdisk|1.0.10-1|popt<br>e2fsprogs
-|extra|graphite2|1.3.14-1|
-|extra|grub|2.12-1|freetype<br>fuse2
-|extra|gtk3|3.24.41-1|at-spi2-core<br>gdk-pixbuf<br>libepoxy<br>pango<br>libxkbcommon<br>wayland<br>libxi
-|extra|harfbuzz|8.5.0-1|glib<br>graphite2<br>freetype<br>gobject-introspection<br>icu<br>cairo
-|extra|htop|3.3.0-1|libnl-tiny
-|extra|icu|74.2-1|
-|extra|irssi|1.4.5-1|glib<br>ncurses
-|extra|kirc|0.3.2-1|
-|extra|lame|3.100-1|
-|extra|lcms2|2.16-1|libjpeg-turbo<br>tiff
-|extra|libaom|3.8.2-1|nasm
-|extra|libarchive|3.7.4-1|
-|extra|libass|0.17.2-1|freetype<br>fribidi<br>harfbuzz
-|extra|libatasmart|0.19-1|libudev-zero
-|extra|libburn|1.5.6-1|
-|extra|libdeflate|1.20-1|
-|extra|libdrm|2.4.121-1|libpciaccess
-|extra|libepoxy|1.5.10-1|mesa
-|extra|libevdev|1.13.2-1|
-|extra|libevent|2.1.12-1|
-|extra|libffi|3.4.6-1|
-|extra|libglvnd|1.7.0-1|libx11<br>libxau<br>libxcb
-|extra|libinput|1.26.0-1|libevdev<br>mtdev<br>libudev-zero
-|extra|libisoburn|1.5.6-1|libburn<br>libisofs
-|extra|libisofs|1.5.6-1|
-|extra|libjpeg-turbo|3.0.3-1|nasm
-|extra|libnl-tiny|39ec78bb012edc2739c3d3d0058e4076411068b1-1|
-|extra|libnotify|0.8.3-1|gtk3
-|extra|libogg|1.3.5-1|
-|extra|libpciaccess|0.18.1-1|
-|extra|libplacebo|6.338.2-1|glad<br>vulkan-headers<br>lcms2
-|extra|libpng|1.6.43-1|
-|extra|libslirp|4.8.0-1|glib
-|extra|libtheora|1.1.1-1|libvorbis
-|extra|libtool|2.4.7-1|
-|extra|libudev-zero|1.0.3-1|
-|extra|libuv|1.48.0-1|
-|extra|libva|2.22.0-1|libdrm<br>mesa<br>libglvnd
-|extra|libvorbis|1.3.7-1|libogg
-|extra|libvpx|1.14.1-1|nasm
-|extra|libwebp|1.4.0-1|libjpeg-turbo<br>libpng<br>tiff
-|extra|libxkbcommon|1.7.0-1|wayland-protocols<br>xkeyboard-config<br>libxml2<br>libxcb
-|extra|libxml2|2.13.1-1|icu
-|extra|linux-firmware-nvidia|20240610-1|rdfind
-|extra|linux-firmware|20240610-1|rdfind
-|extra|linux|6.6.31-2|elfutils
-|extra|llvm|18.1.8-1|
-|extra|lm-sensors|3.6.0-1|
-|extra|lzo|2.10-1|
-|extra|mandoc|1.14.6-1|
-|extra|mc|4.8.31-1|glib<br>slang
-|extra|mesa|24.0.8-1|libdrm<br>python-mako<br>python-markupsafe<br>libglvnd<br>glslang<br>wayland<br>wayland-protocols<br>elfutils<br>libx11<br>libxshmfence<br>libxrandr
-|extra|meson|1.4.1-1|python-setuptools<br>ninja
-|extra|mpv|0.38.0-1|ffmpeg<br>libplacebo<br>wayland<br>wayland-protocols<br>libxkbcommon<br>libxscrnsaver<br>libxpresent
-|extra|mtdev|1.1.7-1|
-|extra|mtools|4.0.44-1|
-|extra|nasm|2.16.02-1|
-|extra|ncdu|1.15.1-1|
-|extra|ncurses|6.5-2|
-|extra|neofetch|7.1.0-1|
-|extra|nettle|3.10-1|
-|extra|nghttp2|1.62.1-1|libxml2
-|extra|ninja|1.12.1-1|python
-|extra|nodejs|22.3.0-1|c-ares<br>icu<br>libuv<br>nghttp2
-|extra|nspr|4.35-1|
-|extra|nss|3.101-1|nspr
-|extra|ntfs-3g|2022.10.3-1|fuse2
-|extra|opendoas|6.8.2-1|
-|extra|openresolv|3.13.2-1|
-|extra|opus|1.5.2-1|
-|extra|os-prober|1.82-1|grub
-|extra|p7zip|17.05-1|
-|extra|pango|1.52.2-1|fontconfig<br>fribidi<br>glib<br>cairo<br>gobject-introspection<br>harfbuzz
-|extra|pcre2|10.44-1|readline
-|extra|perl|5.38.2-1|
-|extra|pfetch|0.6.0-1|
-|extra|pixman|0.43.4-1|
-|extra|pkgconf|2.2.0-1|
-|extra|pm-utils|1.4.1-1|
-|extra|popt|1.19-1|
-|extra|ports|1.6-1|
-|extra|python-jinja2|3.1.3-1|python-markupsafe
-|extra|python-mako|1.3.5-1|python-setuptools<br>python-markupsafe
-|extra|python-markupsafe|2.1.5-1|python-setuptools
-|extra|python-setuptools|70.1.0-1|python
-|extra|python|3.12.4-1|bzip2<br>expat<br>libffi<br>ncurses<br>openssl<br>sqlite<br>xz<br>zlib
-|extra|qemu|9.0.1-1|glib<br>alsa-lib<br>sdl2<br>pixman<br>bash<br>libslirp<br>dtc
-|extra|ranger|1.9.3-1|
-|extra|rdfind|1.6.0-1|nettle
-|extra|readline|8.2-1|
-|extra|rsync|3.3.0-1|popt
-|extra|rust|1.79.0-1|llvm
-|extra|sdl2|2.30.4-1|
-|extra|shared-mime-info|2.4-1|glib<br>libxml2<br>gettext-tiny
-|extra|slang|2.3.3-1|readline
-|extra|sqlite|3.46.0-1|
-|extra|squashfs-tools|4.6.1-1|lzo<br>xz<br>zstd
-|extra|strace|6.9-1|
-|extra|syslinux|6.03-2|mtools<br>perl<br>e2fsprogs
-|extra|tiff|4.6.0-1|
-|extra|tty-clock|2.3-1|
-|extra|tzdata|2024a-1|
-|extra|unrar|7.0.9-1|
-|extra|vim|9.1.0465-1|
-|extra|vulkan-headers|1.3.288-1|
-|extra|wireless-tools|30.pre9-1|
-|extra|wpa_supplicant|2.10-1|libnl-tiny<br>readline
-|extra|x264|20240216-1|nasm
-|extra|x265|20240216-1|
-|extra|xdg-user-dirs|0.18-1|
-|extra|xkeyboard-config|2.41-1|
-|extra|xwayland|23.2.6-1|xorgproto<br>xtrans<br>pixman<br>libxkbfile<br>libxfont2<br>wayland-protocols<br>libxcvt<br>libdrm<br>libepoxy<br>libtirpc<br>libxshmfence<br>libxdmcp
-|extra|zstd|1.5.6-1|
-|wayland|basu|0.2.1-1|gperf
-|wayland|fcft|3.1.8-1|fontconfig<br>pixman<br>tllist
-|wayland|foot|1.17.2-1|tllist<br>fcft<br>wayland-protocols<br>libxkbcommon
-|wayland|grim|1.4.1-1|wayland<br>pixman<br>libpng<br>scdoc<br>wayland-protocols
-|wayland|gtk-layer-shell|0.8.2-1|gtk3<br>gobject-introspection
-|wayland|hwdata|0.383-1|
-|wayland|imv|4.5.0-1|icu<br>libglvnd<br>pango<br>libxkbcommon<br>inih
-|wayland|inih|58-1|
-|wayland|json-c|0.17-1|
-|wayland|labwc-menu-generator|efed0194947c45123287ea057c5fdb13894854cd-1|glib
-|wayland|labwc|0.7.2-1|wlroots<br>glib<br>cairo<br>pango<br>scdoc
-|wayland|libdisplay-info|0.2.0-1|hwdata
-|wayland|mako|1.9.0-1|cairo<br>pango<br>wayland<br>wayland-protocols<br>basu
-|wayland|scdoc|1.11.3-1|
-|wayland|seatd|0.8.0-1|
-|wayland|sfwbar|1.0_beta14-1|gtk3<br>json-c<br>gtk-layer-shell
-|wayland|slurp|1.5.0-1|wayland<br>cairo<br>libxkbcommon<br>scdoc
-|wayland|sway|1.9-1|wlroots<br>json-c<br>cairo<br>pango<br>libglvnd<br>libevdev<br>libinput
-|wayland|swaybg|1.2.1-1|wayland-protocols<br>cairo
-|wayland|swayidle|1.8.0-1|wayland<br>wayland-protocols
-|wayland|swaylock|1.7.2-1|wayland<br>wayland-protocols<br>libxkbcommon<br>cairo
-|wayland|tllist|1.1.0-1|
-|wayland|wayland-protocols|1.36-1|wayland
-|wayland|wayland|1.23.0-1|libxml2<br>libffi
-|wayland|wbg|1.2.0-1|wayland<br>pixman<br>tllist<br>wayland-protocols
-|wayland|wf-recorder|0.4.1-1|wayland<br>wayland-protocols<br>ffmpeg<br>mesa
-|wayland|wl-clipboard|2.2.1-1|wayland<br>wayland-protocols
-|wayland|wlroots|0.17.3-1|hwdata<br>seatd<br>wayland<br>libdrm<br>libxkbcommon<br>pixman<br>libinput<br>mesa<br>libdisplay-info
-|wayland|wmenu|0.1.8-1|cairo<br>pango<br>wayland-protocols<br>libxkbcommon
-|xorg|arcbox|0.1.2-1|
-|xorg|bdftopcf|1.1.1-1|xorgproto<br>util-macros
-|xorg|dbus-glib|0.112-1|dbus<br>glib
-|xorg|desktop-file-utils|0.27-1|glib
-|xorg|dmenu|5.3-1|libx11<br>libxinerama<br>libxft<br>fontconfig
-|xorg|feh|3.10.2-1|libpng<br>imlib2<br>libxinerama<br>libxt
-|xorg|font-adobe-utopia-type1|1.0.5-1|mkfontscale<br>font-util<br>util-macros
-|xorg|font-alias|1.0.5-1|font-util<br>util-macros
-|xorg|font-bh-ttf|1.0.4-1|mkfontscale<br>font-util<br>util-macros
-|xorg|font-bh-type1|1.0.4-1|mkfontscale<br>font-util<br>util-macros
-|xorg|font-ibm-type1|1.0.4-1|mkfontscale<br>font-util<br>util-macros
-|xorg|font-misc-ethiopic|1.0.5-1|mkfontscale<br>font-util<br>util-macros
-|xorg|font-util|1.4.1-1|util-macros
-|xorg|font-xfree86-type1|1.0.5-1|mkfontscale<br>font-util<br>util-macros
-|xorg|gmrun|1.4w-1|glib<br>gtk3
-|xorg|hicolor-icon-theme|0.17-1|
-|xorg|icon-naming-utils|0.8.90-1|perl-xml-simple
-|xorg|imagemagick|7.1.1.33-1|lcms2<br>pango
-|xorg|imlib2|1.12.2-1|cairo<br>gdk-pixbuf<br>glib<br>librsvg<br>libxext
-|xorg|intltool|0.51.0-1|perl-xml-parser
-|xorg|l3afpad|0.8.18.1.11-1|gtk3<br>intltool
-|xorg|libaio|0.3.113-1|
-|xorg|libconfig|1.7.3-1|
-|xorg|libev|4.33-1|
-|xorg|libfontenc|1.1.8-1|xorgproto<br>util-macros
-|xorg|libice|1.1.1-1|xorgproto<br>xtrans<br>util-macros
-|xorg|libptytty|2.0-1|
-|xorg|librsvg|2.58.0-1|cairo<br>gdk-pixbuf<br>pango<br>rust<br>gobject-introspection<br>vala
-|xorg|libsm|1.2.4-1|libice<br>util-macros
-|xorg|libtirpc|1.3.4-1|
-|xorg|libx11|1.8.9-1|libxcb<br>xtrans<br>util-macros
-|xorg|libxau|1.0.11-1|xorgproto<br>util-macros
-|xorg|libxaw|1.0.16-1|libx11<br>libxext<br>libxmu<br>libxpm<br>libxt<br>util-macros
-|xorg|libxcb|1.16.1-1|xcb-proto<br>libxau
-|xorg|libxcomposite|0.4.6-1|libx11<br>libxfixes<br>util-macros
-|xorg|libxcursor|1.2.2-1|libx11<br>libxfixes<br>libxrender<br>util-macros
-|xorg|libxcvt|0.1.2-1|
-|xorg|libxdamage|1.1.6-1|libx11<br>libxfixes<br>util-macros
-|xorg|libxdmcp|1.1.5-1|xorgproto<br>util-macros
-|xorg|libxext|1.3.6-1|libx11<br>util-macros
-|xorg|libxfixes|6.0.1-1|libx11<br>util-macros
-|xorg|libxfont2|2.0.6-1|libfontenc<br>freetype<br>xtrans<br>util-macros
-|xorg|libxft|2.3.8-1|libx11<br>libxrender<br>freetype<br>fontconfig<br>util-macros
-|xorg|libxi|1.8.1-1|libx11<br>libxext<br>libxfixes<br>util-macros
-|xorg|libxinerama|1.1.5-1|libx11<br>libxext<br>util-macros
-|xorg|libxkbfile|1.1.3-1|libx11<br>util-macros
-|xorg|libxmu|1.2.0-1|libx11<br>libxext<br>libxt<br>util-macros
-|xorg|libxpm|3.5.17-1|libx11<br>libxext<br>libxt<br>util-macros<br>gettext-tiny
-|xorg|libxpresent|1.0.1-1|libxfixes<br>libxrandr
-|xorg|libxrandr|1.5.4-1|libx11<br>libxext<br>libxrender<br>util-macros
-|xorg|libxrender|0.9.11-1|libx11<br>util-macros
-|xorg|libxscrnsaver|1.2.4-1|libx11<br>libxext<br>util-macros
-|xorg|libxshmfence|1.3.2-1|xorgproto<br>util-macros
-|xorg|libxt|1.3.0-1|libice<br>libsm<br>libx11<br>util-macros
-|xorg|lxappearance|0.6.3-1|intltool<br>gettext-tiny<br>libx11<br>gtk3
-|xorg|lxrandr|0.3.2-1|intltool<br>gtk3
-|xorg|man-pages|6.7-1|
-|xorg|mkfontscale|1.2.3-1|libfontenc<br>freetype<br>util-macros
-|xorg|obconf|2.0.4-1|openbox<br>gtk3
-|xorg|obmenu-generator|0.93-1|perl-data-dump<br>perl-linux-desktopfiles
-|xorg|openbox|3.6.1-1|pango<br>libxml2<br>libxinerama<br>libxrandr<br>imlib2<br>libxcursor<br>startup-notification<br>xcb-util
-|xorg|openssh|9.7p1-1|
-|xorg|paper-icon-theme|1.5.0-1|
-|xorg|perl-data-dump|1.23-1|
-|xorg|perl-linux-desktopfiles|0.25-1|
-|xorg|perl-xml-parser|2.47-1|perl
-|xorg|perl-xml-simple|2.25-1|
-|xorg|picom|11.2-1|libconfig<br>uthash<br>libev<br>libx11<br>xcb-util-renderutil<br>xcb-util-image<br>libxext<br>pixman<br>pcre2<br>libglvnd<br>dbus<br>libepoxy
-|xorg|rxvt-unicode|9.31-1|libptytty<br>libxext<br>fontconfig<br>libxft
-|xorg|scrot|0.10.0-1|imlib2<br>libx11<br>libxfixes
-|xorg|slim|1.4.0-1|libx11<br>freetype<br>libjpeg-turbo<br>fontconfig<br>libxft<br>libxrandr<br>libxmu
-|xorg|smartmontools|7.4-1|
-|xorg|spacefm|1.0.6-1|gtk3<br>intltool<br>libudev-zero
-|xorg|startup-notification|0.12-1|libx11<br>libxcb<br>xcb-util
-|xorg|tango-icon-theme-extras|0.1.0-1|tango-icon-theme
-|xorg|tango-icon-theme|0.8.90-1|icon-naming-utils<br>imagemagick<br>intltool
-|xorg|tewi-font|2.0.2-1|bdftopcf
-|xorg|tint2|17.1.3-1|imlib2<br>librsvg<br>startup-notification<br>libxcomposite<br>libxdamage<br>libxinerama<br>libxrandr<br>gtk3
-|xorg|twm|1.0.12-1|libx11<br>libxext<br>libxt<br>libxmu<br>libice<br>libsm<br>util-macros
-|xorg|uthash|2.3.0-1|
-|xorg|util-macros|1.20.0-1|
-|xorg|vala|0.56.16-1|glib<br>gobject-introspection
-|xorg|xauth|1.1.3-1|libx11<br>libxau<br>libxext<br>libxmu<br>util-macros
-|xorg|xcb-proto|1.16.0-1|
-|xorg|xcb-util-cursor|0.1.4-1|libxcb<br>xcb-util-image<br>xcb-util-renderutil
-|xorg|xcb-util-image|0.4.1-1|libxcb<br>xcb-util
-|xorg|xcb-util-keysyms|0.4.1-1|libxcb
-|xorg|xcb-util-renderutil|0.3.10-1|libxcb
-|xorg|xcb-util-wm|0.4.2-1|libxcb
-|xorg|xcb-util|0.4.1-1|libxcb
-|xorg|xclock|1.1.1-1|libxaw<br>libx11<br>libxmu<br>libxft<br>libxrender<br>libxkbfile<br>util-macros
-|xorg|xf86-input-evdev|2.10.6-1|libevdev<br>mtdev<br>xorg-server<br>xorgproto<br>libudev-zero
-|xorg|xf86-input-libinput|1.4.0-1|libinput<br>xorg-server<br>xorgproto<br>util-macros
-|xorg|xf86-input-synaptics|1.9.2-1|xorg-server<br>libevdev<br>libxi
-|xorg|xf86-video-intel|2.99.917_923-1|libdrm<br>pixman<br>xcb-util<br>xorg-server
-|xorg|xf86-video-vesa|2.6.0-1|xorg-server<br>xorgproto<br>util-macros
-|xorg|xinit|1.4.2-1|libx11<br>util-macros
-|xorg|xkbcomp|1.4.7-1|libx11<br>libxkbfile<br>util-macros
-|xorg|xlsfonts|1.0.8-1|xorgproto<br>libx11<br>util-macros
-|xorg|xorg-server|21.1.11-1|libxcvt<br>libtirpc<br>pixman<br>font-util<br>xkeyboard-config<br>libepoxy<br>libdrm<br>libxkbfile<br>libxfont2<br>libxdmcp<br>libudev-zero
-|xorg|xorg|7.7-1|xf86-input-libinput<br>xf86-video-vesa<br>xinit<br>xauth<br>xkeyboard-config<br>xkbcomp<br>xterm<br>twm<br>xclock<br>font-adobe-utopia-type1<br>font-alias<br>font-bh-ttf<br>font-bh-type1<br>font-ibm-type1<br>font-misc-ethiopic<br>font-xfree86-type1
-|xorg|xorgproto|2024.1-1|
-|xorg|xprop|1.2.7-1|libx11
-|xorg|xrandr|1.5.2-1|libx11<br>libxrender<br>libxrandr<br>util-macros
-|xorg|xterm|390-1|libxaw<br>fontconfig
-|xorg|xtrans|1.5.0-1|util-macros
diff --git a/docs/packagemanager.md b/docs/packagemanager.md
index 12b49334..1bd44909 100644
--- a/docs/packagemanager.md
+++ b/docs/packagemanager.md
@@ -1,32 +1,29 @@
-PACKAGE MANAGER
+Package Manager
===============
-In Alice, there are two package managers: [spm](https://codeberg.org/emmett1/spm) and [autils](https://codeberg.org/emmett1/autils):
- * `spm` was written for generic package manager for linux distribution.
- * `autils` is written specifically for `Alice` and required `spm`.
+In Alice, theres two package manager used, [spm](https://codeberg.org/emmett1/spm) and [autils](https://codeberg.org/emmett1/autils). Why two package manager? `spm` was written for generic package manager for linux distribution. And `autils` is written specifically for `Alice` and required `spm`.
spm
---
-`spm` stands for `simple package manager` and is a simple and minimal POSIX compliant shell script. It only depends on core utils and tar (or busybox's utils and tar). `spm` is only intended for compressing some directory into package, then extract package into the system with files being tracked into the database. There is is no build script, recipe or ports in `spm`. You can write your own tools to use with `spm` either like Arch Linux's `makepkg`, CRUX's `pkgmk` or Slackware's `slackbuild` script.
+`spm` stands for `simple package manager`. It does simple and minimal written in POSIX compliance shell script. It only depends on core utils and tar (or busybox's utils and tar). `spm` only intended for compressing some directory into package, then extract package into system with files being tracked into database. Theres is no build script, recipe or ports in `spm`. You can write your own tools to use with `spm` either like Arch Linux's `makepkg`, CRUX's `pkgmk` or Slackware's `slackbuild` script.
spm - usage
-----------
-The following optiosn are available to `spm`:
-
+list `spm` usage:
```
- -a print all installed packages
- -b <path> build <path> directory into package
- -h print this help message
- -i <file> install <file> package into system
- -l <pkg> list files installed by <pkg>
- -o <file> print owner of <file>
- -r <name> remove installed <name> from system
- -u <pkg> re-install/upgrade <pkg>
+-a print all installed packages
+-b <path> build <path> directory into package
+-h print this help message
+-i <file> install <file> package into system
+-l <pkg> list files installed by <pkg>
+-o <file> print owner of <file>
+-r <name> remove installed <name> from system
+-u <pkg> re-install/upgrade <pkg>
```
-- list all installed packages with their version:
+list all install package with version:
```
$ spm -a
...
@@ -41,7 +38,7 @@ nsxiv 32-1
...
```
-- build a package from directory:
+build package from directory:
```
(build package)
$ ./configure --prefix=/usr
@@ -60,7 +57,7 @@ $ make DESTDIR=$PWD/fakeroot install
# spm -i pkgname#pkgversion-pkgrelease.spm
```
-- install a package into system:
+install package into system:
```
# spm -i pkgname#pkgversion-pkgrelease.spm
[pkgname] Verify package...
@@ -69,9 +66,8 @@ $ make DESTDIR=$PWD/fakeroot install
[pkgname] Package 'pkgname#pkgversion-pkgrelease' installed.
```
-- list files installed by 'packagename':
+list files installed by 'packagename'$ spm -l test:
```
-$ spm -l test
usr/
usr/share/
usr/share/aaa
@@ -79,7 +75,7 @@ usr/bin/
usr/bin/aaa
```
-- list package owner of a file (can use regex):
+list package owner of a file (can use regex):
```
$ spm -o gcc$
ccache usr/lib/ccache/gcc
@@ -88,7 +84,7 @@ gcc usr/bin/x86_64-pc-linux-musl-gcc
linux lib/modules/6.6.41-Alice/build/scripts/dummy-tools/gcc
```
-- upgrade/reinstall installed package:
+upgrade/reinstall installed package:
```
# spm -u pkgname#pkgversion-pkgrelease.spm
[pkgname] Verify package...
@@ -99,13 +95,11 @@ linux lib/modules/6.6.41-Alice/build/scripts/dummy-tools/gcc
spm - environment
-----------------
-
-|env|description|
-|-|-|
-|SPM_ROOT|use custom root location for package installation|
-|SPM_FORCEINSTALL|set any value to ignore conflicted files|
-
-You can pass these environment to the `spm` command:
+```
+SPM_ROOT: use custom root location for package installation
+SPM_FORCEINSTALL: set any value to ignore conflicted files
+```
+You can pass these environment to `spm` command, example:
```
# SPM_ROOT=/mnt/rootfs spm -i pkgname#pkgversion-pkgrelease.spm
# SPM_FORCEINSTALL=1 SPM_ROOT=/mnt/rootfs spm -i pkgname#pkgversion-pkgrelease.spm
@@ -119,10 +113,9 @@ autils
apkg
----
-`apkg` is a main package manager that can solve dependencies, batch install/upgrade/remove packages, perform system upgrades, trigger necessary caches, etc. `apkg` can be run inside or outside the package template.
-
-When running outside the package template, `apkg` will need 'package names' as arguments, and those 'package names' will search through the `APKG_REPO` environment:
+`apkg` is a main package manager that can solve dependencies, batch install/upgrade/remove packages, system upgrades, trigger necessary caches, and etc. `apkg` can be run inside or outside package template.
+When running outside package template, `apkg` will need 'package names' as arguments, and those 'package names' will search through `APKG_REPO` environment. Example:
```
# apkg testpkg testpkg2 (build testpkg and testpkg2)
# apkg testpkg testpkg2 -i (build and install testpkg and testpkg2)
@@ -130,39 +123,36 @@ When running outside the package template, `apkg` will need 'package names' as a
# apkg -f -u testpkg testpkg2 (force rebuild then upgrade/reinstall testpkg and testpkg2)
```
-When running inside package template, `apkg` will perform the operation within the current directory package. Example:
-
+When running inside package template, `apkg` will do operation for current directory package. Example:
```
# cd /path/to/local/testpkg
# apkg (build testpkg)
# apkg -i (build and install testpkg)
# apkg -u (upgrade/reinstall testpkg)
# apkg -u -f (force rebuild then upgrade/reinstall testpkg)
-
```
apkg - usage
------------
-
```
- -i <pkg(s)> install package(s)
- -I <pkg(s)> install packages(s) with dependencies
- -d <pkg> list <pkg> dependencies
- -D <pkg(s)> list all dependencies
- -j <pkg> list all dependents
- -u <pkg(s)> upgrade package(s)
- -t [pkg(s)] trigger system cache/db updates
- -U update system
- -f force rebuild
- -o <pkg(s)> download source
- -p <pkg> print package path
- -s <pattern> search packages
- -h print this help message
+-i <pkg(s)> install package(s)
+-I <pkg(s)> install packages(s) with dependencies
+-d <pkg> list <pkg> dependencies
+-D <pkg(s)> list all dependencies
+-j <pkg> list all dependents
+-u <pkg(s)> upgrade package(s)
+-t [pkg(s)] trigger system cache/db updates
+-U update system
+-f force rebuild
+-o <pkg(s)> download source
+-p <pkg> print package path
+-s <pattern> search packages
+-h print this help message
```
-Here are some quick tips/tricks to using `apkg`:
+I won't explain details on every each options here, but I will give quick tips/tricks to use `apkg`
-- installing package and its dependencies (mind the uppercase `i`)
+installing package and its dependencies (mind the uppercase `i`):
```
# apkg -I sway
[...] Solving dependencies...
@@ -171,7 +161,7 @@ Here are some quick tips/tricks to using `apkg`:
[...] Press Ctrl + C to abort.
```
-- search available packages
+search available packages:
```
$ apkg -s sway
swaybg
@@ -181,7 +171,7 @@ swayidle
swayfx
```
-- install all package with 'sway' name and its dependencies
+install all package with 'sway' name and its dependencies:
```
# apkg -I $(apkg -s sway)
...
@@ -196,14 +186,14 @@ swayfx
[...] Press Ctrl + C to abort.
```
-- install package without solving dependencies (note the lowercase `i` and theres no prompt for this option)
+install package without solving dependencies (mind the lowercase `i` and theres no prompt for this option):
```
# apkg -i wlroots mesa
[...] Package 'wlroots' already installed.
[...] Package 'mesa' already installed.
```
-- list all installed packages
+list all installed packages:
```
$ apkg -a
...
@@ -217,7 +207,7 @@ rust
...
```
-- list all installed packages with filter (will only print installed package containing the word filter)
+list all installed packages with filter (will only print installed package contains word filter):
```
$ apkg -a sway
swaybg
@@ -226,7 +216,7 @@ swayidle
swaylock
```
-- list dependencies of a package
+list dependencies of a package:
```
$ apkg -d sway
wlroots
@@ -234,7 +224,7 @@ json-c
pango
```
-- list all dependencies tree of package(s)
+list all dependencies tree of package(s):
```
$ apkg -D sway dwm
...
@@ -247,7 +237,7 @@ util-macros
...
```
-- upgrade/reinstall packages
+upgrade/reinstall package(s):
```
# apkg -u wlroots cwm pango
[wlroots] Verify package...
@@ -264,7 +254,7 @@ util-macros
[pango] Package 'pango#1.54.0-1' upgraded.
```
-- full system upgrades (note the uppercase `u` and will prompt first if there is a package update available)
+full system upgrades (mind uppercase `u` and will prompt first if theres package updates):
```
# apkg -U
[...] Checking for outdated packages...
@@ -274,24 +264,23 @@ util-macros
[...] Press Ctrl + C to abort.
```
-- make full system rebuild in dependencies order (`-f`: force rebuild, `-u`: upgrade/reinstall, `-D`: solve dependency order, `-a`: list all installed package)
+make full system rebuild in dependencies order (`-f`: force rebuild, `-u`: upgrade/reinstall, `-D`: solve dependency order, `-a`: list all installed package(s)):
```
# apkg -f -u $(apkg -D $(apkg -a))
...
-(start rebuilding package here)
+(start rebuilding package in dependencies order here)
...
```
-- remove installed packages
+remove installed packages:
```
# apkg -r wlroots pango sway
[...] Package 'wlroots' removed.
[...] Package 'pango' removed.
[...] Package 'sway' removed.
-
```
-- print package path
+print package path:
```
$ apkg -p sway
/home/emmett/codeberg/alicelinux/repos/wayland/sway
@@ -301,28 +290,25 @@ apkg - environment
------------------
You can pass environment to `apkg` to override defaults and in `/etc/apkg.conf`. Available environment and its default value as follows:
-
----
-|env|default value|description|
-|-|-|-|
-|APKG_ROOT|/|root for package installation|
-|APKG_CONF|/etc/apkg.conf|apkg's config file|
-|APKG_REPO| |defaults is empty, template repo path, space separated variable|
-|APKG_PACKAGE_DIR|$PWD|prebuilt package directory path|
-|APKG_SOURCE_DIR|$PWD|package source directory path|
-|APKG_WORK_DIR|$PWD|package working directory path|
-|APKG_NOPROMPT| |skip prompt, use any value|
-
+```
+ env default value description
+APKG_ROOT / root for package installation
+APKG_CONF /etc/apkg.conf apkg's config file
+APKG_REPO defaults is empty, template repo path, space separated variable
+APKG_PACKAGE_DIR $PWD prebuilt package directory path
+APKG_SOURCE_DIR $PWD package source directory path
+APKG_WORK_DIR $PWD package working directory path
+APKG_NOPROMPT defaults is empty, skip prompt, use any value
+```
You can add these environment into `apkg` config file.
-apkg - config file
+/etc/apkg.conf
------------------
-`apkg` can work without its config file by using all default values. Default config path for `apkg` is `/etc/apkg.conf`. You can change config path by appending `APKG_CONF` to `apkg`:
+`apkg` can work without its config file by using all default value. Default config path for `apkg` is `/etc/apkg.conf`. You can override config path by append `APKG_CONF` to `apkg`, example:
```
# APKG_CONF=/etc/apkg-local.conf apkg <args>
```
-
revdep
------
@@ -337,10 +323,11 @@ $ revdep
$ revdep -v
```
-You can combine with `apkg` to rebuild broken packages:
+You can combine with `apkg` to rebuild broken packages, example;
```
# apkg -f -u $(revdep)
```
+
> NOTE: `revdep` does not solve dependencies, so you might need manually rebuild broken packages instead combine with `apkg`.
updateconf
@@ -351,7 +338,6 @@ updateconf
apkg-chroot
-----------
Script to entering chroot environment of custom root location.
-
```
# apkg-chroot <customroot path>
# apkg-chroot <customroot path> <command>
@@ -363,8 +349,8 @@ Print out old package and source caches.
Options:
```
- -s print sources only
- -p print packages only
+-s print sources only
+-p print packages only
```
Usage:
@@ -382,7 +368,7 @@ Usage:
apkg-deps
---------
-Script to find runtime linked dependencies of installed package. It is recommended to use this when writing a package template.
+Script to find runtime linked dependencies of installed package. Its good to figure out dependenciess when writing package template.
Usage:
```
@@ -416,9 +402,9 @@ $ apkg-orphan
apkg-redundantdeps
------------------
-Script to print package's redundant dependencies. It is recommended to use this when writing package template for minimizing dependencies and speed up `apkg` dependencies solving.
+Script to print package's redundant dependencies. Its good to use when writing package template for minimizing dependencies and speed up `apkg` dependencies solving.
-Usage:
+usage:
```
(print package contains redundant dependencies)
$ apkg-redundantdeps
diff --git a/docs/readme.md b/docs/readme.md
new file mode 100644
index 00000000..51b04348
--- /dev/null
+++ b/docs/readme.md
@@ -0,0 +1,3 @@
+Here lies documentation for **Alice Linux**.
+
+If you found any typo or error in docs, or even wan't to contribute, feel free to [open issue](https://codeberg.org/emmett1/alicelinux/issues) :D
diff --git a/docs/repos.md b/docs/repos.md
deleted file mode 100644
index 2837ccba..00000000
--- a/docs/repos.md
+++ /dev/null
@@ -1,11 +0,0 @@
-PACKAGE REPOSITORY
-==================
-
-Theres 4 repos available in Alice:
-
-- core: contains base packages for Alice (required)
-- wayland: contains packages that required wayland installed
-- xorg: contains packages that required xorg installed
-- extra: contains packages that can be built with or without either wayland and xorg
-
-For `wayland` and `xorg` repo, you can choose either one or enabled both. If both is enabled, packages will be built against both. So you can have either 'pure wayland', 'pure xorg' or 'hybrid'. \ No newline at end of file