Compare commits

...

12 Commits
0.4.1 ... 0.4.2

Author SHA1 Message Date
artoo
525460b6ed Merge pull request #19 from artix-linux/devel
Devel-0.4.2
2017-08-02 23:47:41 +02:00
udeved
b0166d330e deploypkg: fix typos 2017-08-02 23:46:04 +02:00
udeved
cb4f83d765 cleaning 2017-08-02 23:32:33 +02:00
udeved
3134c3a4e8 deploypkg: add move mode 2017-08-02 23:30:31 +02:00
udeved
53c2b55044 remove heavy docbook depend 2017-08-02 19:46:46 +02:00
udeved
5d330d8f0a buildiso: default to base profile
buildyaml: default to base profile
deployiso: default to base profile
2017-08-02 17:09:33 +02:00
udeved
de93035152 data: don't import linux-lts in archlinux branch 2017-08-02 16:55:43 +02:00
udeved
4349f297a8 util-iso: include profile name in iso filename 2017-08-02 12:58:15 +02:00
udeved
81c8b63f0a buildpkg: display repo name 2017-08-01 19:52:01 +02:00
udeved
554f7611ba data: update artools.conf 2017-08-01 19:51:33 +02:00
udeved
754617f711 doc: update artools.conf.xml 2017-08-01 19:51:06 +02:00
udeved
0acc0a180a util-pkg-chroot: chown repo 2017-08-01 19:50:32 +02:00
20 changed files with 48 additions and 1420 deletions

View File

@@ -71,16 +71,6 @@ CPIOINST = \
CPIO = \
initcpio/script/artix_shutdown
MAN_XML = \
buildpkg.xml \
buildtree.xml \
buildiso.xml \
deployiso.xml \
deploypkg.xml \
buildyaml.xml \
artools.conf.xml \
profile.conf.xml
BIN_YAML = \
bin/buildyaml
@@ -91,7 +81,7 @@ LIBS_YAML = \
SHARED_YAML = \
data/linux.preset
all: $(BIN_BASE) $(BIN_PKG) $(BIN_ISO) $(BIN_YAML) doc
all: $(BIN_BASE) $(BIN_PKG) $(BIN_ISO) $(BIN_YAML)
edit = sed -e "s|@datadir[@]|$(DESTDIR)$(PREFIX)/share/artools|g" \
-e "s|@sysconfdir[@]|$(DESTDIR)$(SYSCONFDIR)/artools|g" \
@@ -105,13 +95,8 @@ edit = sed -e "s|@datadir[@]|$(DESTDIR)$(PREFIX)/share/artools|g" \
@chmod a-w "$@"
@chmod +x "$@"
doc:
mkdir -p man
$(foreach var,$(MAN_XML),xsltproc /usr/share/docbook2X/xslt/man/docbook.xsl docbook/$(var) | db2x_manxml --output-dir man ;)
clean:
rm -f $(BIN_BASE) ${BIN_PKG} ${BIN_ISO}
rm -rf man
install_base:
install -dm0755 $(DESTDIR)$(SYSCONFDIR)/artools
@@ -147,10 +132,6 @@ install_pkg:
install -dm0755 $(DESTDIR)$(PREFIX)/share/artools
install -m0644 ${SHARED_PKG} $(DESTDIR)$(PREFIX)/share/artools
install -dm0755 $(DESTDIR)$(PREFIX)/share/man/man1
gzip -c man/buildpkg.1 > $(DESTDIR)$(PREFIX)/share/man/man1/buildpkg.1.gz
gzip -c man/buildtree.1 > $(DESTDIR)$(PREFIX)/share/man/man1/buildtree.1.gz
install_iso:
install -dm0755 $(DESTDIR)$(PREFIX)/bin
install -m0755 ${BIN_ISO} $(DESTDIR)$(PREFIX)/bin
@@ -170,14 +151,6 @@ install_iso:
install -dm0755 $(DESTDIR)$(PREFIX)/share/artools
install -m0644 ${SHARED_ISO} $(DESTDIR)$(PREFIX)/share/artools
install -dm0755 $(DESTDIR)$(PREFIX)/share/man/man1
gzip -c man/buildiso.1 > $(DESTDIR)$(PREFIX)/share/man/man1/buildiso.1.gz
gzip -c man/deployiso.1 > $(DESTDIR)$(PREFIX)/share/man/man1/deployiso.1.gz
install -dm0755 $(DESTDIR)$(PREFIX)/share/man/man5
gzip -c man/artools.conf.5 > $(DESTDIR)$(PREFIX)/share/man/man5/artools.conf.5.gz
gzip -c man/profile.conf.5 > $(DESTDIR)$(PREFIX)/share/man/man5/profile.conf.5.gz
install_yaml:
install -dm0755 $(DESTDIR)$(PREFIX)/bin
install -m0755 ${BIN_YAML} $(DESTDIR)$(PREFIX)/bin
@@ -188,9 +161,6 @@ install_yaml:
install -dm0755 $(DESTDIR)$(PREFIX)/share/artools
install -m0644 ${SHARED_YAML} $(DESTDIR)$(PREFIX)/share/artools
install -dm0755 $(DESTDIR)$(PREFIX)/share/man/man1
gzip -c man/buildyaml.1 > $(DESTDIR)$(PREFIX)/share/man/man1/buildyaml.1.gz
uninstall_base:
for f in ${SYSCONF}; do rm -f $(DESTDIR)$(SYSCONFDIR)/artools/$$f; done
for f in ${BIN_BASE}; do rm -f $(DESTDIR)$(PREFIX)/bin/$$f; done
@@ -205,8 +175,6 @@ uninstall_pkg:
rm -f $(DESTDIR)$(PREFIX)/bin/find-libprovides
for f in ${SHARED_PKG}; do rm -f $(DESTDIR)$(PREFIX)/share/artools/$$f; done
for f in ${LIBS_PKG}; do rm -f $(DESTDIR)$(PREFIX)/lib/artools/$$f; done
rm -f $(DESTDIR)$(PREFIX)/share/man/man1/buildpkg.1.gz
rm -f $(DESTDIR)$(PREFIX)/share/man/man1/buildtree.1.gz
uninstall_iso:
for f in ${BIN_ISO}; do rm -f $(DESTDIR)$(PREFIX)/bin/$$f; done
@@ -216,16 +184,11 @@ uninstall_iso:
for f in ${CPIOHOOKS}; do rm -f $(DESTDIR)$(SYSCONFDIR)/initcpio/hooks/$$f; done
for f in ${CPIOINST}; do rm -f $(DESTDIR)$(SYSCONFDIR)/initcpio/install/$$f; done
for f in ${CPIO}; do rm -f $(DESTDIR)$(SYSCONFDIR)/initcpio/$$f; done
rm -f $(DESTDIR)$(PREFIX)/share/man/man1/buildiso.1.gz
rm -f $(DESTDIR)$(PREFIX)/share/man/man1/deployiso.1.gz
rm -f $(DESTDIR)$(PREFIX)/share/man/man5/artools.conf.5.gz
rm -f $(DESTDIR)$(PREFIX)/share/man/man5/profile.conf.5.gz
uninstall_yaml:
for f in ${BIN_YAML}; do rm -f $(DESTDIR)$(PREFIX)/bin/$$f; done
for f in ${LIBS_YAML}; do rm -f $(DESTDIR)$(PREFIX)/lib/artools/$$f; done
for f in ${SHARED_YAML}; do rm -f $(DESTDIR)$(PREFIX)/share/artools/$$f; done
rm -f $(DESTDIR)$(PREFIX)/share/man/man1/buildyaml.1.gz
install: install_base install_pkg install_iso install_yaml

View File

@@ -79,7 +79,6 @@ verbose=false
persist=false
mkchroot_args=()
profile=lxqt
usage() {
echo "Usage: ${0##*/} [options]"

View File

@@ -41,6 +41,7 @@ display_settings(){
msg "OPTIONS:"
msg2 "arch: %s" "${target_arch}"
${repo_add} && msg2 "repository: %s" "${repository}"
msg2 "chroots_pkg: %s" "${chroots_pkg}"
msg "ARGS:"

View File

@@ -71,7 +71,6 @@ calamares=false
pretend=false
group=false
cache_dir_netinstall="${workspace_dir}/netinstall"
profile=lxqt
usage() {
echo "Usage: ${0##*/} [options]"

View File

@@ -57,7 +57,6 @@ pretend=false
update=false
verbose=false
torrent=false
profile=lxqt
rsync_args=(-aP --progress -e ssh)

View File

@@ -60,6 +60,7 @@ verbose=false
verbose=false
add_pkg=false
del_pkg=false
move=false
package=''
rsync_args=(-rtxisP --progress --delete -e ssh)
@@ -70,6 +71,7 @@ usage() {
echo " -r Repository to sync [default:${repository}]"
echo " -u Upload repository"
echo ' -d Download repository'
echo ' -m Move package from repository to pool'
echo " -p Package name to add/delete"
echo ' -x Add package to repository'
echo ' -y Delete package from repository'
@@ -83,7 +85,7 @@ usage() {
orig_argv=("$0" "$@")
opts='p:a:r:xyduvqh'
opts='p:a:r:xymduvqh'
while getopts "${opts}" arg; do
case "${arg}" in
@@ -93,6 +95,7 @@ while getopts "${opts}" arg; do
x) add_pkg=true ;;
y) del_pkg=true ;;
d) download=true ;;
m) move=true ;;
u) upload=true; rsync_args+=(-L) ;;
v) verbose=true; rsync_args+=(-v --stats) ;;
q) pretend=true; rsync_args+=(-n) ;;
@@ -109,6 +112,8 @@ prepare_dir "${repos_local}"
${pretend} && display_settings #&& exit 1
${move} && move_to_pool "${repository}" "${target_arch}" "${package}"
${add_pkg} && repo_update "${repository}" "${target_arch}" "${package}" "add"
${del_pkg} && repo_update "${repository}" "${target_arch}" "${package}" "remove"

View File

@@ -1,6 +1,6 @@
######################################################
################ artools.conf ##################
######################################################
#############################################
################ artools-base ###############
#############################################
# default taget arch: auto detect
# target_arch=$(uname -m)
@@ -23,7 +23,9 @@
# the workspace directory
# workspace_dir="/home/${OWNER}/artools-workspace"
################ buildtree ###############
#############################################
################ artools-pkg ################
#############################################
# artix package tree
# repo_tree_artix=('system' 'world' 'galaxy')
@@ -35,12 +37,18 @@
# host_tree_arch=git://projects.archlinux.org/svntogit
################ buildpkg ################
# default pkg build list; name without .list extension
# build_list=default
################ buildiso ################
# default repos root
# repos_local=${workspace_dir}/repos
#############################################
################ artools-iso ################
#############################################
# the default profile
# profile=base
# the dist release; default: auto
# dist_release=rolling
@@ -57,8 +65,6 @@
# gpg key; leave empty or commented to skip sfs signing
# gpgkey=""
################ deployiso ################
# set upload bandwidth limit in kB/s
# limit=100

View File

@@ -90,7 +90,6 @@ links
linux-api-headers
linux-atm
linux-firmware
linux-lts
lz4
lzo
m4

View File

@@ -1,298 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="profile.conf" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>profile.conf-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>artools.conf</refentrytitle>
<manvolnum>5</manvolnum>
</refmeta>
<refnamediv>
<refname>artools.conf</refname>
<refpurpose>general configuration file for artools</refpurpose>
</refnamediv>
<refsynopsisdiv>
<para><filename>artools.conf</filename></para>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>artools.conf is a general configuration file for all artools binaries. </para>
<para>By default all the options in the file are commented, with a value equal to the
default value. To change it just uncomment and put the desired value.</para>
</refsect1>
<refsect1>
<title>General options for all tools</title>
<para>The following options are understood and used for various tools:</para>
<variablelist>
<varlistentry>
<term><varname>target_arch=</varname></term>
<listitem><para>Takes <option>i686</option> or <option>x86_64</option>.
By default it will try to autodetect the current architecture.
It defines in witch architecture the packages will be built with
buildpkg.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>workspace_dir=</varname></term>
<listitem><para>Workspace dir where packages, iso, repos or build tree. Default is "/home/$OWNER/artools-workspace".
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>chroots_dir=</varname></term>
<listitem><para>Build dir where buildpkg or buildiso chroot
environment will be created. Default is "/var/lib/artools".
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>build_mirror=</varname></term>
<listitem><para>Default mirror to be used when building
packages or iso.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>account=</varname></term>
<listitem><para>Default user to be used for upload.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>project=</varname></term>
<listitem><para>Default SF project name to be used for upload.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>host_mirrors=</varname></term>
<listitem><para>Array of host mirrors.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Options for buildtree</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><varname>repo_tree_artix=</varname></term>
<listitem><para>Artix package tree. Default is
"('system' 'world' 'galaxy')".
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>host_tree_artix=</varname></term>
<listitem><para>Host tree. Default is "https://github.com/artix-linux".
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>repo_tree_arch=</varname></term>
<listitem><para>Archlinux package tree. Default is
"('packages' 'community')".
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>host_tree_arch=</varname></term>
<listitem><para>Host tree for archlinux. Default is
"https://projects.archlinux.org/git/svntogit".
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Options for buildpkg</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><varname>build_list=</varname></term>
<listitem><para>Default list for buildpkg without the .list
extension.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Options for buildiso</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><varname>dist_release=</varname></term>
<listitem><para>Release version of the distribution.
</para></listitem>
</varlistentry>
<varlistentry>
<!-- TODO: We should tell where exactly this is used -->
<term><varname>dist_branding=</varname></term>
<listitem><para>Branding of the distribution.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>gpgkey=</varname></term>
<listitem><para>If the gpgkey is supplied, the sfs images on iso will be signed.
If the key is left empty or commented, signing will be skipped.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>initsys=</varname></term>
<listitem><para>Takes <option>openrc</option> (the default)
or <option>notyetimplemented</option>. Selecting and option will change
how the hostname, the displaymanager and services will be configured.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>kernel=</varname></term>
<listitem><para>Takes a string corresponding to an
artix kernel package.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Options for deployiso</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><varname>tracker_url=</varname></term>
<listitem><para>Default tracker announce for the torrent.
The tracker url can also contain comma separated urls.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>piece_size=</varname></term>
<listitem><para>Default priece size for the torrent in 2^n.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>uplimit=</varname></term>
<listitem><para>Default upload bandwidth limit in kb/s.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>Options for deploypkg</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><varname>repos_local=</varname></term>
<listitem><para>The local repository root. Default is "${workspace_dir}/repos".
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>profiles.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>buildiso</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>deployiso</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>buildtree</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>deploypkg</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>buildpkg</refentrytitle><manvolnum>1</manvolnum></citerefentry>
</para>
</refsect1>
</refentry>

View File

@@ -1,181 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="buildiso" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>buildiso-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>buildiso</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>buildiso</refname>
<refpurpose>buildiso is used to build a particular ISO or a set of ISOs. </refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>buildiso</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><command>buildiso</command> is used to build a particular ISO or a set of ISOs. </para>
<para>With buildiso you can build ISOs suitable to be booted from a removable media
like a DVD o a USB Stick, it will automatically create the necessary files to
install this ISO using calamares.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><option>-p PROFILE...</option></term>
<listitem><para>Name of the name of the directory
you will build. It needs to contain a
folder with a valid profile.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-a i686|x86_64</option></term>
<listitem><para>Architecture that the iso will be built. Can be i686 or x86_64.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-r DIR</option></term>
<listitem><para>Root working directory where the iso will be built.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-t DIR</option></term>
<listitem><para>Iso target directory where the final iso will be stored.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-i openrc|s6|runit</option></term>
<listitem><para>The init system on the iso</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-g KEY</option></term>
<listitem><para>The GPG key to use to sign the sfs images.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-k linuxXXX</option></term>
<listitem><para>The kernel on the iso</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-c</option></term>
<listitem><para>Disable clean working directory step.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-m</option></term>
<listitem><para>Enable persistence mode.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-x</option></term>
<listitem><para>Only build images, without creating an ISO file.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-z</option></term>
<listitem><para>Generate iso from already created images, for example created with the -x option.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-v</option></term>
<listitem><para>Verbose output to log file, show profile detail in combination with pretend.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option></term>
<listitem><para>Query settings and pretend build.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option></term>
<listitem><para>Help.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<!--<refsect1>
<title>Exit status</title>
<para>On success, 0 is returned, a non-zero failure code
otherwise.</para>
</refsect1>
-->
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>profiles.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -1,160 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="buildpkg" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>buildpkg-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>buildpkg</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>buildpkg</refname>
<refpurpose>buildpkg is used to build packages in a clean chroot. </refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>buildpkg</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><command>buildpkg</command> is used to build a particular package or a set of packages. </para>
<para>With buildpkg you can build packages in a clean chroot environment.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><option>-p PROFILE...</option></term>
<listitem><para>Name of the build list or name of the directory
you will build. It needs to cantain a existing build list or a
folder with a valid PKGBUILD.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-a i686|x86_64|multilib</option></term>
<listitem><para>Architecture that the iso will be built. Can be i686, x86_64 or multilib.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-r DIR</option></term>
<listitem><para>Root working directory where the package will be built.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-i PKG</option></term>
<listitem><para>Install packages into the working copy of the chroot.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-o</option></term>
<listitem><para>Create chroot.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-d</option></term>
<listitem><para>Delete chroot.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-c</option></term>
<listitem><para>Clean chroot copy.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-u</option></term>
<listitem><para>Update chroot copy.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-w</option></term>
<listitem><para>Clean up cache and sources.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-n</option></term>
<listitem><para>Install built package in chroot and run namcap check.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-s</option></term>
<listitem><para>Sign package.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option></term>
<listitem><para>Query settings and pretend build.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option></term>
<listitem><para>Help.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -1,111 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="buildtree" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>buildtree-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>buildtree</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>buildtree</refname>
<refpurpose>buildtree is used to sync the cromnix and arch package build tree. </refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>buildtree</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><command>buildtree</command> is used to sync package trees. </para>
<para>With buildtree, you can sync the cromnix and arch linux packae build trees.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><option>-s</option></term>
<listitem><para>Sync Manjaro linux tree.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-a</option></term>
<listitem><para>Sync Arch linux tree.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-c</option></term>
<listitem><para>Clean package trees.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option></term>
<listitem><para>Query settings.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option></term>
<listitem><para>Help.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -1,146 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="buildyaml" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>buildyaml-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>buildyaml</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>buildyaml</refname>
<refpurpose>buildyaml is used to generate and validate yaml files used by calamares. </refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>buildyaml</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><command>buildyaml</command> is used to generate and validate yaml files used by calamares.</para>
<para>buildyaml is a script to generate and validate yaml files by yaml schemas. Buildiso generates these files also, but buildyaml is a standalone version without the need to build the entire iso.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><option>-p PROFILE...</option></term>
<listitem><para>Name of the profile directory.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-a i686|x86_64</option></term>
<listitem><para>Architecture that the yaml will be created for. Can be i686 or x86_64.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-i openrc|s6|runit</option></term>
<listitem><para>The init system the yaml will be created for.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-k linuxXXX</option></term>
<listitem><para>The kernel the yaml will be created for.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-c</option></term>
<listitem><para>Create calamares yaml conf files.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-g</option></term>
<listitem><para>Generate a packman group netgroup yaml file.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-v</option></term>
<listitem><para>Validate the yaml file by yaml schema.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option></term>
<listitem><para>Query settings.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option></term>
<listitem><para>Help.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<!--<refsect1>
<title>Exit status</title>
<para>On success, 0 is returned, a non-zero failure code
otherwise.</para>
</refsect1>
-->
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>profiles.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -1,135 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="deployiso" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>deployiso-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>deployiso</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>deployiso</refname>
<refpurpose>deployiso is used to upload a particular ISO or a set of ISOs. </refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>deployiso</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><command>deployiso</command> is used to upload a particular ISO or a set of ISOs. </para>
<para>deployiso is a script to upload a specific iso or a buiildset to SF.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><option>-p PROFILE...</option></term>
<listitem><para>Name of the iso profile directory
you will upload.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-l</option></term>
<listitem><para>Limit bandwidth in kB/s.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-u</option></term>
<listitem><para>Update remote iso.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-t</option></term>
<listitem><para>Create a torrent from iso file.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-v</option></term>
<listitem><para>Verbose output.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option></term>
<listitem><para>Query settings and pretend upload.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option></term>
<listitem><para>Help.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<!--<refsect1>
<title>Exit status</title>
<para>On success, 0 is returned, a non-zero failure code
otherwise.</para>
</refsect1>
-->
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>profiles.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -1,145 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="deploypkg" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>deploypkg-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>deploypkg</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>deploypkg</refname>
<refpurpose>deploypkg is used to sync package repositories. </refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>deploypkg</command>
<arg choice="opt" rep="repeat">OPTIONS</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><command>deploypkg</command> is used to sync package repositories. </para>
<para>deploypkg is a script to sync a specific repoitory with SF.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><option>-r REPOSITORY...</option></term>
<listitem><para>Name of the repo to sync.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-p PACKAGE...</option></term>
<listitem><para>Name of the package to add or delete.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-x</option></term>
<listitem><para>Add a package to the repo db.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-y</option></term>
<listitem><para>Delete a package from the repo.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-u</option></term>
<listitem><para>Upload a repo.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-d</option></term>
<listitem><para>Download a repo.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-v</option></term>
<listitem><para>Verbose output.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option></term>
<listitem><para>Query settings and pretend upload.</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option></term>
<listitem><para>Help.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<!--<refsect1>
<title>Exit status</title>
<para>On success, 0 is returned, a non-zero failure code
otherwise.</para>
</refsect1>
-->
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -1,156 +0,0 @@
<?xml version='1.0'?> <!--*-nxml-*-->
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<!--
This file is part of artools.
Copyright 2015 Manjaro Developers
Copyright 2017 Artoo
artools is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
artools is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with artools; If not, see <http://www.gnu.org/licenses/>.
-->
<refentry id="profile.conf" xmlns:xi="http://www.w3.org/2001/XInclude">
<refentryinfo>
<title>profile.conf-+</title>
<productname>artools</productname>
<authorgroup>
<author>
<contrib></contrib>
<firstname></firstname>
<surname></surname>
<email></email>
</author>
</authorgroup>
</refentryinfo>
<refmeta>
<refentrytitle>profile.conf</refentrytitle>
<manvolnum>5</manvolnum>
</refmeta>
<refnamediv>
<refname>profile.conf</refname>
<refpurpose>configuration file for the individual profiles </refpurpose>
</refnamediv>
<refsynopsisdiv>
<para><filename>profile.conf</filename></para>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>profile.conf is a configuration file used to modify how the ISO will be built. </para>
<para>By default all the options in the file are commented, with a value equal to the
default value. To change it just uncomment and put the desired value.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following options are understood:</para>
<variablelist>
<varlistentry>
<term><varname>displaymanager=</varname></term>
<listitem><para>Takes a value of
<option>lightdm</option>,
<option>sddm</option>,
<option>gdm</option>,
<option>mdm</option>,
<option>lxdm</option>. Defaults to "none" value,
which won't configure any display manager.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>autologin=</varname></term>
<listitem><para>Accepts
<option>true</option> (the default)
<option>false</option>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>openrc_boot=</varname></term>
<listitem><para>Array of services that will be
enabled in openrc boot runlevel.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>openrc_default=</varname></term>
<listitem><para>Array of services that will be
enabled in openrc default runlevel.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>hostname=</varname></term>
<listitem><para>Hostname for the ISO.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>username=</varname></term>
<listitem><para>Username of the default user
that will be created in the live-cd.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>password=</varname></term>
<listitem><para>Password of the default user
that will be created in the live-cd.
</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>addgroups=</varname></term>
<listitem><para>Default groups of the default user
in the live-cd and the user created while installing
the iso using calamares.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<citerefentry project='artools'><refentrytitle>artools.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry project='artools'><refentrytitle>buildiso</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
</para>
</refsect1>
</refentry>

View File

@@ -227,7 +227,7 @@ make_iso() {
gen_iso_fn(){
local vars=() name
vars+=("${os_id}")
# vars+=("${profile}")
vars+=("${profile}")
vars+=("${dist_release}")
vars+=("${target_arch}")
for n in ${vars[@]};do
@@ -431,14 +431,6 @@ build(){
msg "Start building [%s]" "${profile}"
if ${clean_first};then
chroot_clean "${chroots_iso}/${profile}/${target_arch}"
local unused_arch='i686'
if [[ ${target_arch} == 'i686' ]];then
unused_arch='x86_64'
fi
if [[ -d "${chroots_iso}/${profile}/${unused_arch}" ]];then
chroot_clean "${chroots_iso}/${profile}/${unused_arch}"
fi
clean_iso_root "${iso_root}"
fi

View File

@@ -90,6 +90,7 @@ post_build(){
move_to_cache "$src"
if ${repo_add};then
deploypkg -r "${repository}" -x -p "$src"
user_own "${repos_local}/${repository}" -R
fi
done
}

View File

@@ -19,7 +19,16 @@ repo_update(){
fi
ln -s ${cache_dir_pkg}/$arch/$pkg{,.sig} ${repos_local}/$repo/os/$arch/
fi
repo-$action -R ${repos_local}/$repo/os/$arch/$repo.db.tar.xz ${repos_local}/$repo/os/$arch/$pkg
local dest=${repos_local}/$repo/os/$arch/$pkg
if [[ $action == "remove" ]];then
dest=$pkg
fi
repo-$action -R ${repos_local}/$repo/os/$arch/$repo.db.tar.xz $dest
}
move_to_pool(){
local repo="$1" arch="$2" pkg="$3"
cp ${repos_local}/$repo/os/$arch/$pkg{,.sig} ${cache_dir_pkg}/$arch/
}
update_lock(){

View File

@@ -62,7 +62,7 @@ get_osid(){
echo "${ID}"
}
init_common(){
init_artools_base(){
[[ -z ${target_arch} ]] && target_arch=$(uname -m)
@@ -87,7 +87,7 @@ init_common(){
prepare_dir "${workspace_dir}"
}
init_buildtree(){
init_artools_pkg(){
[[ -z ${tree_dir_artix} ]] && tree_dir_artix=${workspace_dir}/artix
@@ -104,9 +104,7 @@ init_buildtree(){
list_dir_import="${SYSCONFDIR}/import.list.d"
[[ -d ${AT_USERCONFDIR}/import.list.d ]] && list_dir_import=${AT_USERCONFDIR}/import.list.d
}
init_buildpkg(){
chroots_pkg="${chroots_dir}/buildpkg"
list_dir_pkg="${SYSCONFDIR}/pkg.list.d"
@@ -120,16 +118,22 @@ init_buildpkg(){
cache_dir_pkg=${workspace_dir}/pkg
prepare_dir "${cache_dir_pkg}"
repository='system'
[[ -z ${repos_local} ]] && repos_local="${workspace_dir}/repos"
repos_remote="/${repos_local##*/}"
}
init_buildiso(){
init_artools_iso(){
chroots_iso="${chroots_dir}/buildiso"
cache_dir_iso="${workspace_dir}/iso"
prepare_dir "${cache_dir_iso}"
##### iso settings #####
[[ -z ${profile} ]] && profile='base'
[[ -z ${dist_release} ]] && dist_release=$(get_release)
@@ -144,9 +148,6 @@ init_buildiso(){
[[ -z ${kernel} ]] && kernel="linux-lts"
[[ -z ${gpgkey} ]] && gpgkey=''
}
init_deployiso(){
[[ -z ${uplimit} ]] && uplimit=100
@@ -157,14 +158,6 @@ init_deployiso(){
torrent_meta="$(get_osname)"
}
init_deploypkg(){
repository='system'
[[ -z ${repos_local} ]] && repos_local="${workspace_dir}/repos"
repos_remote="/${repos_local##*/}"
}
load_config(){
@@ -174,17 +167,11 @@ load_config(){
[[ -r ${artools_conf} ]] && source ${artools_conf}
init_common
init_artools_base
init_buildtree
init_artools_pkg
init_buildpkg
init_buildiso
init_deployiso
init_deploypkg
init_artools_iso
return 0
}