From 71d40463f0fc9c7b2a5bee846da72d4a32ee885b Mon Sep 17 00:00:00 2001 From: Woodpecker CI Date: Mon, 8 Sep 2025 15:14:55 +0000 Subject: Woodpecker CI 6e25ae12ade87673b43442e2d271a9e0f92a8837 [SKIP CI] --- community.html | 75 ----------------------------------------------- community/index.html | 75 +++++++++++++++++++++++++++++++++++++++++++++++ docs.html | 74 ---------------------------------------------- docs/index.html | 76 ++++++++++++++++++++++++++++++++++++++++++++++++ docs/install.html | 42 ++++++++++++++------------ docs/packagemanager.html | 51 ++++++++++++-------------------- donate.html | 76 ------------------------------------------------ donate/donate.html | 76 ++++++++++++++++++++++++++++++++++++++++++++++++ index.html | 4 +-- 9 files changed, 271 insertions(+), 278 deletions(-) delete mode 100644 community.html create mode 100644 community/index.html delete mode 100644 docs.html create mode 100644 docs/index.html delete mode 100644 donate.html create mode 100644 donate/donate.html diff --git a/community.html b/community.html deleted file mode 100644 index 5765c610..00000000 --- a/community.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - Alice Linux - community - - - -
-

community

- home / docs / development / download / iso / community / donate -
-

Come join Alice Linux community:

- -

-

Copyright (C) Alice Linux, 2024

-
- - diff --git a/community/index.html b/community/index.html new file mode 100644 index 00000000..5765c610 --- /dev/null +++ b/community/index.html @@ -0,0 +1,75 @@ + + + + + + Alice Linux - community + + + +
+

community

+ home / docs / development / download / iso / community / donate +
+

Come join Alice Linux community:

+ +

+

Copyright (C) Alice Linux, 2024

+
+ + diff --git a/docs.html b/docs.html deleted file mode 100644 index 0d88459e..00000000 --- a/docs.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - Alice Linux - docs - - - -
-

docs

- home / docs / development / download / iso / community / donate -
- -

-

Copyright (C) Alice Linux, 2024

-
- - diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 00000000..e55f4364 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,76 @@ + + + + + + Alice Linux - docs + + + +
+

docs

+ home / docs / development / download / iso / community / donate +
+

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 :D

+ +

+

Copyright (C) Alice Linux, 2024

+
+ + diff --git a/docs/install.html b/docs/install.html index 6abaaa33..a41a5e0c 100644 --- a/docs/install.html +++ b/docs/install.html @@ -97,23 +97,24 @@ $ curl -O <url>.sha256sum

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
+
# echo 'export CFLAGS="-O3 -march=x86-64 -pipe"' >> /etc/apkg.conf
 

And use whats in CFLAGS for CXXFLAGS.

-
# echo 'export CXXFLAGS="$CFLAGS"' >> /etc/apkg.conf
+
# 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
+
# 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
+
# echo 'export NINJAJOBS="6"' >> /etc/apkg.conf
 

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
+
# 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.

+
+

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:

@@ -134,8 +135,8 @@ $ curl -O <url>.sha256sum

Now run reposync to sync latest package templates.

# reposync
 
-

-After setting up our package repos, make sure apkg can find the packages. We can use apkg -s <pattern> to search for packages.

+

+

After setting up our package repos, make sure apkg can find the packages. We can use apkg -s <pattern> to search for packages.

# apkg -s sway
 swayidle
 swaybg
@@ -155,23 +156,26 @@ sway
 

Before we do, install development packages first.

# apkg -I meson cmake pkgconf libtool automake perl
 
-

NOTE: use upppercase 'i' for solve dependencies, lowecase 'i' without solve dependencies.

+
+

NOTE: use upppercase 'i' for solve dependencies, lowecase 'i' without solve dependencies.

Now lets upgrade our system.

# apkg -U
 
-

NOTE: Use uppercase U for a system upgrade, and lowercase u to upgrade a specific package of your choice.

+
+

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)
 
-

NOTE: Add the -f flag to force rebuild of existing prebuilt package. -NOTE: apkg -a prints all installed packages on the system.

+
+

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 or use the one provided by Alice. -

-

NOTE: The provided kernel will take a lot of time to compile because many options are enabled.

+

You can configure your own kernel from kernel.org or use the one provided by Alice.

+
+

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
@@ -203,10 +207,10 @@ NOTE: apkg -a prints all installed packages on the system.

# 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). -

-

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.

+

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

Add your user:

diff --git a/docs/packagemanager.html b/docs/packagemanager.html index 95a133da..b4978f7b 100644 --- a/docs/packagemanager.html +++ b/docs/packagemanager.html @@ -95,16 +95,12 @@ nsxiv 32-1
(build package)
 $ ./configure --prefix=/usr
 $ make
-
 (install into fake directory)
 $ make DESTDIR=$PWD/fakeroot install
-
 (turn fake directory into package (package.spm))
 # spm -b $PWD/fakeroot 
-
 (mv 'package.spm' into correct format (name#version-release.spm))
 # mv package.spm pkgname#pkgversion-pkgrelease.spm
-
 (install package into system)
 # spm -i pkgname#pkgversion-pkgrelease.spm
 
@@ -137,11 +133,9 @@ linux lib/modules/6.6.41-Alice/build/scripts/dummy-tools/gcc [pkgname] Package 'pkgname#pkgversion-pkgrelease' upgraded.

spm - environment

- - - - -
envdescription
SPM_ROOTuse custom root location for package installation
SPM_FORCEINSTALLset any value to ignore conflicted files
+
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
@@ -273,10 +267,10 @@ util-macros
 

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 in dependencies order here) -...

+... +

remove installed packages:

# apkg -r wlroots pango sway
 [...] Package 'wlroots' removed.
@@ -289,20 +283,18 @@ util-macros
 

apkg - environment

You can pass environment to apkg to override defaults and in /etc/apkg.conf. Available environment and its default value as follows:

- - - - - - - - - -
envdefault valuedescription
APKG_ROOT/root for package installation
APKG_CONF/etc/apkg.confapkg's config file
APKG_REPOdefaults is empty, template repo path, space separated variable
APKG_PACKAGE_DIR$PWDprebuilt package directory path
APKG_SOURCE_DIR$PWDpackage source directory path
APKG_WORK_DIR$PWDpackage working directory path
APKG_NOPROMPTskip 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.

/etc/apkg.conf

-

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 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

@@ -310,14 +302,14 @@ util-macros

Usage:

(print out broken packages)
 $ revdep
-
 (verbosely print missing libraries)
 $ revdep -v
 

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.

+
+

NOTE: revdep does not solve dependencies, so you might need manually rebuild broken packages instead combine with apkg.

updateconf

updateconf is script to update configuration files inside /etc directory. Its recomended to run after packages upgrades.

@@ -335,17 +327,14 @@ $ revdep -v

Usage:

(to remove old packages)
 # apkg-clean -p | xargs rm
-
 (to remove old sources)
 # apkg-clean -s | xargs rm
-
 (to remove both old packages and sources)
 # apkg-clean | xargs rm
 

apkg-deps

Script to find runtime linked dependencies of installed package. Its good to figure out dependenciess when writing package template.

-

Usage: -

+

Usage:

$ apkg-deps <pkg>
 

apkg-foreign

@@ -353,7 +342,6 @@ $ revdep -v

Usage:

(print list foreign packages)
 $ apkg-foreign
-
 (remove foreign packages)
 # apkg -r $(apkg-foreign)
 
@@ -367,7 +355,6 @@ $ apkg-foreign

usage:

(print package contains redundant dependencies)
 $ apkg-redundantdeps
-
 (remove redundant dependencies for depends list)
 $ apkg-redundantdeps -f
 
diff --git a/donate.html b/donate.html deleted file mode 100644 index 7d1e7806..00000000 --- a/donate.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - Alice Linux - donate - - - -
-

donate

- home / docs / development / download / iso / community / donate -
-

Your cups of coffee very helpful for this project :D

- -

-

Copyright (C) Alice Linux, 2024

-
- - diff --git a/donate/donate.html b/donate/donate.html new file mode 100644 index 00000000..7d1e7806 --- /dev/null +++ b/donate/donate.html @@ -0,0 +1,76 @@ + + + + + + Alice Linux - donate + + + +
+

donate

+ home / docs / development / download / iso / community / donate +
+

Your cups of coffee very helpful for this project :D

+ +

+

Copyright (C) Alice Linux, 2024

+
+ + diff --git a/index.html b/index.html index f55dd638..aa7c3abd 100644 --- a/index.html +++ b/index.html @@ -63,8 +63,8 @@

home

home / docs / development / download / iso / community / donate
-

alicelinux -alicelinux

+

alicelinux

+

alicelinux

Alice Linux is my personal daily driver minimal distro that used musl libc, busybox as main core utilities, package manager written in POSIX shell script, Wayland as the gui server and trying to be minimal, lightweight and usable as possible.

  • no systemd
  • -- cgit v1.2.3