Compare commits
	
		
			44 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| ce481f6b07 | |||
| b6a4619ab3 | |||
| 88ebc5c476 | |||
| c27c516610 | |||
| 42ee8522dd | |||
| b7f05f4dd2 | |||
| f58e8b6c15 | |||
| d432ffee3f | |||
| 961bc2cd59 | |||
| 92aeff61d8 | |||
| 64725482f8 | |||
| 11cd590529 | |||
| bb22741aa1 | |||
| 28e4b73964 | |||
| 7ea0d6f475 | |||
| bdcc22fd46 | |||
| 3c2e97f915 | |||
| ba77c20d77 | |||
| c376041a07 | |||
| bd29d360b4 | |||
| 7e1b1ee238 | |||
| 221218ba2a | |||
| 697d18da82 | |||
| 27d0230ed7 | |||
| 41fdcb68fb | |||
| 37b02c08bc | |||
| 31200d7765 | |||
| 60844ee0ea | |||
| 2c2e6b41a1 | |||
| 52c81a0e61 | |||
| 6667147b77 | |||
| 26635e3a10 | |||
| 1d5a565ed8 | |||
| 4e54b48903 | |||
| 2f16cd73c9 | |||
| 9fd6ac3531 | |||
| 2f5acc6e3c | |||
| d73b6d9178 | |||
| d5404ac2fa | |||
| d250b967ba | |||
| 5715eecf0c | |||
| b6ef4d1895 | |||
| 3fd33eca4a | |||
| eceed82a61 | 
							
								
								
									
										82
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										82
									
								
								Makefile
									
									
									
									
									
								
							| @@ -1,4 +1,4 @@ | |||||||
| VERSION=0.8 | VERSION=0.9 | ||||||
|  |  | ||||||
| CHROOT_VERSION=0.8 | CHROOT_VERSION=0.8 | ||||||
|  |  | ||||||
| @@ -22,17 +22,6 @@ M4 = m4 -P | |||||||
| CHMODAW = chmod a-w | CHMODAW = chmod a-w | ||||||
| CHMODX = chmod +x | CHMODX = chmod +x | ||||||
|  |  | ||||||
| ifdef WITH-PKG |  | ||||||
| WITH-PKG = no |  | ||||||
| else |  | ||||||
| WITH-PKG = yes |  | ||||||
| endif |  | ||||||
| ifdef WITH-ISO |  | ||||||
| WITH-ISO = no |  | ||||||
| else |  | ||||||
| WITH-ISO = yes |  | ||||||
| endif |  | ||||||
|  |  | ||||||
| CPIODIR = $(SYSCONFDIR)/initcpio | CPIODIR = $(SYSCONFDIR)/initcpio | ||||||
|  |  | ||||||
| SYSCONF = \ | SYSCONF = \ | ||||||
| @@ -65,8 +54,7 @@ BIN_PKG = \ | |||||||
| 	bin/buildpkg \ | 	bin/buildpkg \ | ||||||
| 	bin/buildtree \ | 	bin/buildtree \ | ||||||
| 	bin/deploypkg \ | 	bin/deploypkg \ | ||||||
| 	bin/commitpkg \ | 	bin/commitpkg | ||||||
| 	bin/mkpkgclean |  | ||||||
|  |  | ||||||
| LIBS_PKG = \ | LIBS_PKG = \ | ||||||
| 	$(wildcard lib/util-pkg*.sh) | 	$(wildcard lib/util-pkg*.sh) | ||||||
| @@ -103,19 +91,7 @@ LIBS_ISO = \ | |||||||
| SHARED_ISO = \ | SHARED_ISO = \ | ||||||
| 	data/mkinitcpio.conf | 	data/mkinitcpio.conf | ||||||
|  |  | ||||||
| ifeq ($(WITH-PKG),yes) | all: $(BIN_BASE) $(BIN_PKG) $(BIN_ISO) | ||||||
|  |  | ||||||
| all: $(BIN_PKG) |  | ||||||
|  |  | ||||||
| endif |  | ||||||
|  |  | ||||||
| ifeq ($(WITH-ISO),yes) |  | ||||||
|  |  | ||||||
| all: $(BIN_ISO) |  | ||||||
|  |  | ||||||
| endif |  | ||||||
|  |  | ||||||
| all: $(BIN_BASE) |  | ||||||
|  |  | ||||||
| EDIT = sed -e "s|@datadir[@]|$(DATADIR)/$(TOOLS)|g" \ | EDIT = sed -e "s|@datadir[@]|$(DATADIR)/$(TOOLS)|g" \ | ||||||
| 	-e "s|@sysconfdir[@]|$(SYSCONFDIR)/$(TOOLS)|g" \ | 	-e "s|@sysconfdir[@]|$(SYSCONFDIR)/$(TOOLS)|g" \ | ||||||
| @@ -177,54 +153,6 @@ install_iso: install_cpio | |||||||
| 	install $(DIRMODE) $(DESTDIR)$(DATADIR)/$(TOOLS) | 	install $(DIRMODE) $(DESTDIR)$(DATADIR)/$(TOOLS) | ||||||
| 	install $(FILEMODE) $(SHARED_ISO) $(DESTDIR)$(DATADIR)/$(TOOLS) | 	install $(FILEMODE) $(SHARED_ISO) $(DESTDIR)$(DATADIR)/$(TOOLS) | ||||||
|  |  | ||||||
| uninstall_base: | install: install_base install_pkg install_iso | ||||||
| 	for f in $(notdir $(SYSCONF)); do $(RM) $(DESTDIR)$(SYSCONFDIR)/$(TOOLS)/$$f; done |  | ||||||
| 	for f in $(notdir $(BIN_BASE)); do $(RM) $(DESTDIR)$(BINDIR)/$$f; done |  | ||||||
| 	for f in $(notdir $(LIBS_BASE)); do $(RM) $(DESTDIR)$(LIBDIR)/$(TOOLS)/$$f; done |  | ||||||
| 	for f in $(notdir $(SHARED_BASE)); do $(RM) $(DESTDIR)$(DATADIR)/$(TOOLS)/$$f; done |  | ||||||
| 	$(RMD) $(DESTDIR)$(SYSCONFDIR)/$(TOOLS) |  | ||||||
| 	$(RMD) $(DESTDIR)$(LIBDIR)/$(TOOLS) |  | ||||||
| 	$(RMD) $(DESTDIR)$(DATADIR)/$(TOOLS) |  | ||||||
|  |  | ||||||
| uninstall_pkg: | .PHONY: all clean install | ||||||
| 	for f in $(notdir $(BIN_PKG)); do $(RM) $(DESTDIR)$(BINDIR)/$$f; done |  | ||||||
| 	$(RM) $(DESTDIR)$(BINDIR)/find-libprovides |  | ||||||
| 	for l in $(COMMITPKG_SYMS); do $(RM) $(DESTDIR)$(BINDIR)/$$l; done |  | ||||||
| 	for f in $(notdir $(LIBS_PKG)); do $(RM) $(DESTDIR)$(LIBDIR)/$(TOOLS)/$$f; done |  | ||||||
| 	for f in $(notdir $(PATCHES)); do $(RM) $(DESTDIR)$(DATADIR)/$(TOOLS)/patches/$$f; done |  | ||||||
| 	for f in $(notdir $(SHARED_PKG)); do $(RM) $(DESTDIR)$(DATADIR)/$(TOOLS)/$$f; done |  | ||||||
|  |  | ||||||
| uninstall_cpio: |  | ||||||
| 	+make CPIODIR=$(CPIODIR) DESTDIR=$(DESTDIR) -C initcpio uninstall |  | ||||||
|  |  | ||||||
| uninstall_iso: uninstall_cpio |  | ||||||
| 	for f in $(notdir $(BIN_ISO)); do $(RM) $(DESTDIR)$(BINDIR)/$$f; done |  | ||||||
| 	for l in $(notdir $(BIN_ISO_SYMS)); do $(RM) $(DESTDIR)$(BINDIR)/$$l; done |  | ||||||
| 	for f in $(notdir $(LIBS_ISO)); do $(RM) $(DESTDIR)$(LIBDIR)/$(TOOLS)/$$f; done |  | ||||||
| 	for f in $(notdir $(SHARED_ISO)); do $(RM) $(DESTDIR)$(DATADIR)/$(TOOLS)/$$f; done |  | ||||||
|  |  | ||||||
| ifeq ($(WITH-PKG),yes) |  | ||||||
|  |  | ||||||
| install: install_pkg |  | ||||||
|  |  | ||||||
| uninstall: uninstall_pkg |  | ||||||
|  |  | ||||||
| endif |  | ||||||
|  |  | ||||||
| ifeq ($(WITH-ISO),yes) |  | ||||||
|  |  | ||||||
| install: install_iso |  | ||||||
|  |  | ||||||
| uninstall: uninstall_iso |  | ||||||
|  |  | ||||||
| endif |  | ||||||
|  |  | ||||||
| install: install_base |  | ||||||
|  |  | ||||||
| uninstall: uninstall_base |  | ||||||
|  |  | ||||||
| dist: |  | ||||||
| 	git archive --format=tar --prefix=$(TOOLS)-$(VERSION)/ $(VERSION) | gzip -9 > $(TOOLS)-$(VERSION).tar.gz |  | ||||||
| 	gpg --detach-sign --use-agent $(TOOLS)-$(VERSION).tar.gz |  | ||||||
|  |  | ||||||
| .PHONY: all clean install uninstall dist |  | ||||||
|   | |||||||
| @@ -6,9 +6,6 @@ artools | |||||||
|  |  | ||||||
| * PREFIX=/usr/local (default if defined) | * PREFIX=/usr/local (default if defined) | ||||||
| * SYSCONFDIR=/etc | * SYSCONFDIR=/etc | ||||||
| * WITH-PKG=yes |  | ||||||
| * WITH-ISO=yes |  | ||||||
|  |  | ||||||
|  |  | ||||||
| #### Dependencies | #### Dependencies | ||||||
|  |  | ||||||
| @@ -21,7 +18,6 @@ artools | |||||||
| ##### Runtime: | ##### Runtime: | ||||||
|  |  | ||||||
| - base: | - base: | ||||||
|  |  | ||||||
|   * openssh |   * openssh | ||||||
|   * rsync |   * rsync | ||||||
|   * haveged |   * haveged | ||||||
| @@ -30,16 +26,14 @@ artools | |||||||
|   * pacman |   * pacman | ||||||
|  |  | ||||||
| - pkg: | - pkg: | ||||||
|  |  | ||||||
|   * namcap |   * namcap | ||||||
|   * git |   * git-subrepo | ||||||
|  |  | ||||||
| - iso: | - iso: | ||||||
|   * dosfstools |   * dosfstools | ||||||
|   * libisoburn |   * libisoburn | ||||||
|   * squashfs-tools |   * squashfs-tools | ||||||
|   * mkinitcpio |   * mkinitcpio | ||||||
|   * mktorrent |  | ||||||
|   * grub |   * grub | ||||||
|  |  | ||||||
| #### Configuration | #### Configuration | ||||||
|   | |||||||
| @@ -20,6 +20,36 @@ SYSCONFDIR='@sysconfdir@' | |||||||
| import ${LIBDIR}/util.sh | import ${LIBDIR}/util.sh | ||||||
| import ${LIBDIR}/util-mount.sh | import ${LIBDIR}/util-mount.sh | ||||||
|  |  | ||||||
|  | select_os(){ | ||||||
|  |     local os_list=( $(detect) ) count=${#os_list[@]} | ||||||
|  |     if [[ ${count} > 1 ]];then | ||||||
|  |         msg "Detected systems:" | ||||||
|  |         local i=0 | ||||||
|  |         for os in ${os_list[@]};do | ||||||
|  |             local last=${os##*:} | ||||||
|  |             case $last in | ||||||
|  |                 'efi') count=$((count-1)) ;; | ||||||
|  |                 *) info "$i) $(get_os_name $os)"; i=$((i+1)) ;; | ||||||
|  |             esac | ||||||
|  |         done | ||||||
|  |         i=0 | ||||||
|  |         msg "Select system to mount [0-%s] : " "$((count-1))" | ||||||
|  |         read select | ||||||
|  |     else | ||||||
|  |         select=0 | ||||||
|  |     fi | ||||||
|  |     local os_str=${os_list[$select]} type | ||||||
|  |     type=$os_str | ||||||
|  |     root=${os_str%%:*} | ||||||
|  |     type=${type##*:} | ||||||
|  |     if [[ "${type##*:}" == 'linux' ]];then | ||||||
|  |         msg "Mounting (%s) [%s]" "$(get_os_name $os_str)" "$root" | ||||||
|  |         mount_os "$1" "$root" | ||||||
|  |     else | ||||||
|  |         die "You can't mount %s!" "$select" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
| display_settings(){ | display_settings(){ | ||||||
|     show_version |     show_version | ||||||
|     show_config |     show_config | ||||||
|   | |||||||
| @@ -35,7 +35,7 @@ prepare_build(){ | |||||||
|  |  | ||||||
|     iso_file=$(gen_iso_fn).iso |     iso_file=$(gen_iso_fn).iso | ||||||
|  |  | ||||||
|     mkchroot_args+=(-C ${pacman_conf}) |     mkchroot_args+=(-C ${pacman_conf} -m) | ||||||
|     work_dir=${chroots_iso}/${profile}/${target_arch} |     work_dir=${chroots_iso}/${profile}/${target_arch} | ||||||
|  |  | ||||||
|     iso_dir="${iso_pool}/${profile}" |     iso_dir="${iso_pool}/${profile}" | ||||||
| @@ -44,6 +44,7 @@ prepare_build(){ | |||||||
|     mnt_dir=${chroots_iso}/${profile}/mnt |     mnt_dir=${chroots_iso}/${profile}/mnt | ||||||
|     prepare_dir "${mnt_dir}" |     prepare_dir "${mnt_dir}" | ||||||
|     prepare_dir "${iso_dir}" |     prepare_dir "${iso_dir}" | ||||||
|  |     prepare_dir "${iso_root}" | ||||||
| } | } | ||||||
|  |  | ||||||
| show_profile(){ | show_profile(){ | ||||||
|   | |||||||
| @@ -18,14 +18,16 @@ DATADIR='@datadir@' | |||||||
| [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh | [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh | ||||||
| import ${LIBDIR}/util.sh | import ${LIBDIR}/util.sh | ||||||
| import ${LIBDIR}/util-pkg.sh | import ${LIBDIR}/util-pkg.sh | ||||||
|  | import ${LIBDIR}/util-pkg-gitea.sh | ||||||
|  | import ${LIBDIR}/util-pkg-subrepo.sh | ||||||
|  |  | ||||||
| pull_tree_arch(){ | pull_tree_arch(){ | ||||||
|     cd ${tree_dir_arch} |     cd ${tree_dir_arch} | ||||||
|     for tree in packages community;do |     for tree in packages community;do | ||||||
|         if [[ -d ${tree} ]];then |         if [[ -d ${tree} ]];then | ||||||
|             cd ${tree} |             cd ${tree} | ||||||
|                 msg "Checking (%s)" "${tree}" |             msg "Checking (%s)" "${tree}" | ||||||
|                 pull_tree |             pull_tree | ||||||
|             cd .. |             cd .. | ||||||
|         else |         else | ||||||
|             msg "Cloning (%s) ..." "$tree" |             msg "Cloning (%s) ..." "$tree" | ||||||
| @@ -34,24 +36,32 @@ pull_tree_arch(){ | |||||||
|     done |     done | ||||||
| } | } | ||||||
|  |  | ||||||
|  | config_tree(){ | ||||||
|  |     local tree="$1" | ||||||
|  |     cd $tree | ||||||
|  |         git config --bool pull.rebase true | ||||||
|  |         git config commit.gpgsign true | ||||||
|  |         if [[ -n "${GPGKEY}" ]];then | ||||||
|  |             git config user.signingkey "${GPGKEY}" | ||||||
|  |         else | ||||||
|  |             warning "No GPGKEY configured in makepkg.conf!" | ||||||
|  |         fi | ||||||
|  |     cd .. | ||||||
|  | } | ||||||
|  |  | ||||||
| pull_tree_artix(){ | pull_tree_artix(){ | ||||||
|     cd ${tree_dir_artix} |     cd ${tree_dir_artix} | ||||||
|     for tree in packages packages-galaxy;do |     for tree in packages packages-galaxy;do | ||||||
|         if [[ -d ${tree} ]];then |         if [[ -d ${tree} ]];then | ||||||
|  |             config_tree "${tree}" | ||||||
|             cd ${tree} |             cd ${tree} | ||||||
|                 git config --bool pull.rebase true |             msg "Checking (%s)" "${tree}" | ||||||
|                 git config commit.gpgsign true |             pull_tree | ||||||
|                 if [[ -n "${GPGKEY}" ]];then |  | ||||||
|                     git config user.signingkey "${GPGKEY}" |  | ||||||
|                 else |  | ||||||
|                     warning "No GPGKEY configured in makepkg.conf!" |  | ||||||
|                 fi |  | ||||||
|                 msg "Checking (%s)" "${tree}" |  | ||||||
|                 pull_tree |  | ||||||
|             cd .. |             cd .. | ||||||
|         else |         else | ||||||
|             msg "Cloning (%s) ..." "$tree" |             msg "Cloning (%s) ..." "$tree" | ||||||
|             clone_tree "${host_tree_artix}/${tree}" |             clone_tree "${host_tree_artix}/${tree}" | ||||||
|  |             config_tree "${tree}" | ||||||
|         fi |         fi | ||||||
|     done |     done | ||||||
| } | } | ||||||
| @@ -61,13 +71,13 @@ show_version_table(){ | |||||||
|     for tree in packages packages-galaxy;do |     for tree in packages packages-galaxy;do | ||||||
|         local git=$(find ${tree_dir_artix}/$tree/ -mindepth 1 -maxdepth 1 -type d) |         local git=$(find ${tree_dir_artix}/$tree/ -mindepth 1 -maxdepth 1 -type d) | ||||||
|         for pkg_path in ${git[@]}; do |         for pkg_path in ${git[@]}; do | ||||||
|             local artixrepo=$(find_repo "$pkg_path" "${unstable}") |             local artixrepo=$(find_repo "$pkg_path" "${unstable}" "${staging}") | ||||||
|             if [[ -d $pkg_path/repos/$artixrepo ]];then |             if [[ -d $pkg_path/repos/$artixrepo ]];then | ||||||
|                 source $pkg_path/repos/$artixrepo/PKGBUILD 2>/dev/null |                 source $pkg_path/repos/$artixrepo/PKGBUILD 2>/dev/null | ||||||
|                 local pkg=${pkg_path##*/} |                 local pkg=${pkg_path##*/} | ||||||
|                 local artixver=$(get_full_version $pkg) |                 local artixver=$(get_full_version $pkg) | ||||||
|                 local src=$(get_import_path "$tree" "$pkg") |                 local src=$(get_import_path "$tree" "$pkg") | ||||||
|                 local archrepo=$(find_repo "$src/$pkg" "${unstable}") |                 local archrepo=$(find_repo "$src/$pkg" "${unstable}" "${staging}") | ||||||
|                 if [[ -d $src/$pkg/repos/$archrepo ]];then |                 if [[ -d $src/$pkg/repos/$archrepo ]];then | ||||||
|                     source $src/$pkg/repos/$archrepo/PKGBUILD 2>/dev/null |                     source $src/$pkg/repos/$archrepo/PKGBUILD 2>/dev/null | ||||||
|                     local archver=$(get_full_version $pkg) |                     local archver=$(get_full_version $pkg) | ||||||
| @@ -161,7 +171,10 @@ from_arch(){ | |||||||
|         cd ${tree_dir_artix}/$git_tree_artix |         cd ${tree_dir_artix}/$git_tree_artix | ||||||
|  |  | ||||||
|         dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk |         dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk | ||||||
|         mkdir $pkg |  | ||||||
|  |         create_repo "$pkg" | ||||||
|  |         add_repo_to_team "$pkg" "$pkg_path" | ||||||
|  |         subrepo_clone "$pkg" | ||||||
|  |  | ||||||
|         info "Import from archlinux (%s)" "$git_tree_arch" |         info "Import from archlinux (%s)" "$git_tree_arch" | ||||||
|         rsync "${rsync_args[@]}" $src/ $dest/ |         rsync "${rsync_args[@]}" $src/ $dest/ | ||||||
| @@ -201,6 +214,8 @@ display_settings(){ | |||||||
|     msg2 "upgrades: %s" "${upgrades}" |     msg2 "upgrades: %s" "${upgrades}" | ||||||
|     msg2 "downgrades: %s" "${downgrades}" |     msg2 "downgrades: %s" "${downgrades}" | ||||||
|     msg2 "artix: %s" "${artix}" |     msg2 "artix: %s" "${artix}" | ||||||
|  |     msg2 "staging: %s" "${staging}" | ||||||
|  |     msg2 "unstable: %s" "${unstable}" | ||||||
|     msg2 "import: %s" "${import}" |     msg2 "import: %s" "${import}" | ||||||
|     msg2 "view: %s" "${view}" |     msg2 "view: %s" "${view}" | ||||||
|     msg2 "trunk: %s" "${trunk}" |     msg2 "trunk: %s" "${trunk}" | ||||||
| @@ -221,6 +236,7 @@ sync=false | |||||||
| sync_arch=true | sync_arch=true | ||||||
| compare=false | compare=false | ||||||
| unstable=false | unstable=false | ||||||
|  | staging=true | ||||||
| upgrades=false | upgrades=false | ||||||
| downgrades=false | downgrades=false | ||||||
| artix=false | artix=false | ||||||
| @@ -237,10 +253,11 @@ usage() { | |||||||
|     echo "    -s            Clone or pull repos" |     echo "    -s            Clone or pull repos" | ||||||
|     echo "    -z            Don't clone or pull arch repos" |     echo "    -z            Don't clone or pull arch repos" | ||||||
|     echo '    -c            Compare packages' |     echo '    -c            Compare packages' | ||||||
|     echo '    -x            Include unstable kde and gnome' |  | ||||||
|     echo '    -u            Show upgrade packages' |     echo '    -u            Show upgrade packages' | ||||||
|     echo '    -d            Show downgrade packages' |     echo '    -d            Show downgrade packages' | ||||||
|     echo '    -a            Show testing and staging packages' |     echo '    -a            Show testing packages' | ||||||
|  |     echo "    -y            Don't inlcude staging packages" | ||||||
|  |     echo '    -x            Include unstable kde and gnome' | ||||||
|     echo '    -i            Import a package from arch repos' |     echo '    -i            Import a package from arch repos' | ||||||
|     echo '    -t            Import from arch trunk' |     echo '    -t            Import from arch trunk' | ||||||
|     echo '    -v            View package depends' |     echo '    -v            View package depends' | ||||||
| @@ -253,7 +270,7 @@ usage() { | |||||||
|  |  | ||||||
| orig_argv=("$0" "$@") | orig_argv=("$0" "$@") | ||||||
|  |  | ||||||
| opts='p:csudaiztxvqh' | opts='p:csudayiztxvqh' | ||||||
|  |  | ||||||
| while getopts "${opts}" arg; do | while getopts "${opts}" arg; do | ||||||
|     case "${arg}" in |     case "${arg}" in | ||||||
| @@ -264,6 +281,7 @@ while getopts "${opts}" arg; do | |||||||
|         u) upgrades=true ;; |         u) upgrades=true ;; | ||||||
|         d) downgrades=true ;; |         d) downgrades=true ;; | ||||||
|         a) artix=true ;; |         a) artix=true ;; | ||||||
|  |         y) staging=false ;; | ||||||
|         i) import=true ;; |         i) import=true ;; | ||||||
|         t) trunk=true ;; |         t) trunk=true ;; | ||||||
|         v) view=true ;; |         v) view=true ;; | ||||||
|   | |||||||
| @@ -22,7 +22,6 @@ import ${LIBDIR}/util-mount.sh | |||||||
|  |  | ||||||
| working_dir='' | working_dir='' | ||||||
| files=() | files=() | ||||||
| keep_mirrors=false |  | ||||||
| nosetarch=false | nosetarch=false | ||||||
|  |  | ||||||
| usage() { | usage() { | ||||||
|   | |||||||
| @@ -18,6 +18,7 @@ DATADIR='@datadir@' | |||||||
| [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh | [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh | ||||||
| import ${LIBDIR}/util.sh | import ${LIBDIR}/util.sh | ||||||
| import ${LIBDIR}/util-pkg.sh | import ${LIBDIR}/util-pkg.sh | ||||||
|  | import ${LIBDIR}/util-pkg-subrepo.sh | ||||||
|  |  | ||||||
| commit_pkg(){ | commit_pkg(){ | ||||||
|     local git_tree=$(find_tree "${tree_dir_artix}" "${package}") |     local git_tree=$(find_tree "${tree_dir_artix}" "${package}") | ||||||
| @@ -27,6 +28,7 @@ commit_pkg(){ | |||||||
|         source trunk/PKGBUILD |         source trunk/PKGBUILD | ||||||
|         [[ $arch == 'any' ]] && CARCH=any |         [[ $arch == 'any' ]] && CARCH=any | ||||||
|         local ver=$(get_full_version "${package}") |         local ver=$(get_full_version "${package}") | ||||||
|  |         local commit_msg="" | ||||||
|  |  | ||||||
|         if ${remove};then |         if ${remove};then | ||||||
|             local action='remove' |             local action='remove' | ||||||
| @@ -37,20 +39,27 @@ commit_pkg(){ | |||||||
|                 local pkg="${package}-$ver" |                 local pkg="${package}-$ver" | ||||||
|                 git rm -r repos/"${source_repo}-$CARCH" |                 git rm -r repos/"${source_repo}-$CARCH" | ||||||
|             fi |             fi | ||||||
|             msg "Action: [%s] '%s' %s" "${source_repo}" "$pkg" "${action}" |             commit_msg="[${source_repo}] '$pkg' ${action}" | ||||||
|             git commit -m "[${source_repo}] '$pkg' ${action}" |             msg "Action: %s" "$commit_msg" | ||||||
|         else |         else | ||||||
|             local action='modify' |             local action='modify' | ||||||
|             msg "Action: [%s] '%s' %s" "${source_repo}" "${package}-$ver" "${action}" |             commit_msg="[${source_repo}] '${package}-$ver' ${action}" | ||||||
|  |             msg "Action: %s" "$commit_msg" | ||||||
|             git add . |             git add . | ||||||
|             git commit -m "[${source_repo}] '${package}-$ver' ${action}" |  | ||||||
|         fi |         fi | ||||||
|  |         git commit -m "$commit_msg" | ||||||
|  |  | ||||||
|  |         cd ${tree_dir_artix}/${git_tree} | ||||||
|  |  | ||||||
|         if ${push};then |         if ${push};then | ||||||
|             msg "Checking (%s)" "${git_tree}" |             msg "Checking (%s)" "${git_tree}" | ||||||
|             git pull origin master |             git pull origin master | ||||||
|  |             subrepo_push "${package}" | ||||||
|  |             sleep 1 | ||||||
|             git push origin master |             git push origin master | ||||||
|         fi |         fi | ||||||
|  |         git prune | ||||||
|     else |     else | ||||||
|         error "Package '%s' does not exist!" "${package}" |         error "Package '%s' does not exist!" "${package}" | ||||||
|     fi |     fi | ||||||
| @@ -85,16 +94,22 @@ symlink_commit_pkg(){ | |||||||
|             cp repos/$src/* repos/$dest/ |             cp repos/$src/* repos/$dest/ | ||||||
|             git rm -r repos/$src |             git rm -r repos/$src | ||||||
|         fi |         fi | ||||||
|  |         local commit_msg="[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}" | ||||||
|  |         msg "Action: %s" "$commit_msg" | ||||||
|  |  | ||||||
|         msg "Action: [%s] -> [%s] '%s' %s" "${source_repo}" "${target_repo}" "${package}-$ver" "${action}" |  | ||||||
|         git add . |         git add . | ||||||
|         git commit -m "[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}" |         git commit -m "$commit_msg" | ||||||
|  |  | ||||||
|  |         cd ${tree_dir_artix}/${git_tree} | ||||||
|  |  | ||||||
|         if ${push};then |         if ${push};then | ||||||
|             msg "Checking (%s)" "${git_tree}" |             msg "Checking (%s)" "${git_tree}" | ||||||
|             git pull origin master |             git pull origin master | ||||||
|  |             subrepo_push "${package}" | ||||||
|  |             sleep 1 | ||||||
|             git push origin master |             git push origin master | ||||||
|         fi |         fi | ||||||
|  |         git prune | ||||||
|     else |     else | ||||||
|         error "Package '%s' does not exist!" "${package}" |         error "Package '%s' does not exist!" "${package}" | ||||||
|     fi |     fi | ||||||
|   | |||||||
| @@ -16,7 +16,23 @@ SYSCONFDIR='@sysconfdir@' | |||||||
|  |  | ||||||
| [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh | [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh | ||||||
| import ${LIBDIR}/util.sh | import ${LIBDIR}/util.sh | ||||||
| import ${LIBDIR}/util-iso-publish.sh |  | ||||||
|  | connect(){ | ||||||
|  |     local home="/home/frs/project/${project}" | ||||||
|  |     echo "${account},${project}@frs.${file_host}:${home}" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | prepare_transfer(){ | ||||||
|  |     target_dir="/iso/${profile}/" | ||||||
|  |     src_dir="${iso_pool}/${profile}/" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | sync_dir(){ | ||||||
|  |     msg "Start upload [%s] ..." "${profile}" | ||||||
|  |     rsync "${rsync_args[@]}" ${src_dir} $(connect)${target_dir} | ||||||
|  |     msg "Done upload [%s]" "${profile}" | ||||||
|  |     show_elapsed_time "${FUNCNAME}" "${timer_start}" | ||||||
|  | } | ||||||
|  |  | ||||||
| display_settings(){ | display_settings(){ | ||||||
|     show_version |     show_version | ||||||
| @@ -29,14 +45,6 @@ display_settings(){ | |||||||
|     msg "ARGS:" |     msg "ARGS:" | ||||||
|     msg2 "update: %s" "${update}" |     msg2 "update: %s" "${update}" | ||||||
|     msg2 "verbose: %s" "${verbose}" |     msg2 "verbose: %s" "${verbose}" | ||||||
|     msg2 "torrent: %s" "${torrent}" |  | ||||||
|  |  | ||||||
|     if ${torrent};then |  | ||||||
|         msg2 "tracker_url: %s" "${tracker_url}" |  | ||||||
|         msg2 "piece_size: %s" "${piece_size}" |  | ||||||
|         msg2 "host_mirrors: %s" "${host_mirrors[*]}" |  | ||||||
|         msg2 "torrent_meta: %s" "${torrent_meta}" |  | ||||||
|     fi |  | ||||||
|  |  | ||||||
|     msg "REMOTE:" |     msg "REMOTE:" | ||||||
|     msg2 "account: %s" "${account}" |     msg2 "account: %s" "${account}" | ||||||
| @@ -55,7 +63,6 @@ load_config "${AT_USERCONFDIR}/artools.conf" || load_config "${SYSCONFDIR}/artoo | |||||||
| pretend=false | pretend=false | ||||||
| update=false | update=false | ||||||
| verbose=false | verbose=false | ||||||
| torrent=false |  | ||||||
|  |  | ||||||
| rsync_args=(-aP --progress -e ssh) | rsync_args=(-aP --progress -e ssh) | ||||||
|  |  | ||||||
| @@ -64,7 +71,6 @@ usage() { | |||||||
|     echo "    -p                 Source folder to upload [default: ${profile}]" |     echo "    -p                 Source folder to upload [default: ${profile}]" | ||||||
|     echo "    -l                 Limit bandwidth in kB/s [default:${uplimit}]" |     echo "    -l                 Limit bandwidth in kB/s [default:${uplimit}]" | ||||||
|     echo '    -u                 Update remote directory' |     echo '    -u                 Update remote directory' | ||||||
|     echo '    -t                 Create iso torrent' |  | ||||||
|     echo '    -q                 Query settings and pretend upload' |     echo '    -q                 Query settings and pretend upload' | ||||||
|     echo '    -v                 Verbose output' |     echo '    -v                 Verbose output' | ||||||
|     echo '    -h                 This help' |     echo '    -h                 This help' | ||||||
| @@ -73,14 +79,13 @@ usage() { | |||||||
|     exit $1 |     exit $1 | ||||||
| } | } | ||||||
|  |  | ||||||
| opts='p:l:uvtqh' | opts='p:l:uvqh' | ||||||
|  |  | ||||||
| while getopts "${opts}" arg; do | while getopts "${opts}" arg; do | ||||||
|     case "${arg}" in |     case "${arg}" in | ||||||
|         p) profile="$OPTARG" ;; |         p) profile="$OPTARG" ;; | ||||||
|         l) uplimit="$OPTARG" ;; |         l) uplimit="$OPTARG" ;; | ||||||
|         u) update=true; rsync_args+=(-u) ;; |         u) update=true; rsync_args+=(-u) ;; | ||||||
|         t) torrent=true ;; |  | ||||||
|         v) verbose=true; rsync_args+=(-v --stats) ;; |         v) verbose=true; rsync_args+=(-v --stats) ;; | ||||||
|         q) pretend=true; rsync_args+=(-n) ;; |         q) pretend=true; rsync_args+=(-n) ;; | ||||||
|         h|?) usage 0 ;; |         h|?) usage 0 ;; | ||||||
|   | |||||||
| @@ -23,15 +23,17 @@ working_dir='' | |||||||
| files=() | files=() | ||||||
|  |  | ||||||
| nosetarch=false | nosetarch=false | ||||||
|  | copy_mirrorlist=true | ||||||
|  | basestrap_args=(-Gc) | ||||||
|  |  | ||||||
| usage() { | usage() { | ||||||
|     echo "Usage: ${0##*/} [options] working-dir package-list..." |     echo "Usage: ${0##*/} [options] working-dir package-list..." | ||||||
|     echo ' options:' |     echo ' options:' | ||||||
|     echo '    -C <file>     Location of a pacman config file' |     echo '    -C <file>     Location of a pacman config file' | ||||||
|     echo '    -M <file>     Location of a makepkg config file' |     echo '    -M <file>     Location of a makepkg config file' | ||||||
|     echo '    -U <url>      Set a specific mirror' |  | ||||||
|     echo '    -c <dir>      Set pacman cache' |     echo '    -c <dir>      Set pacman cache' | ||||||
|     echo '    -f <file>     Copy file from the host to the chroot' |     echo '    -f <file>     Copy file from the host to the chroot' | ||||||
|  |     echo '    -m            Do not copy mirrorlist to the chroot' | ||||||
|     echo '    -s            Do not run setarch' |     echo '    -s            Do not run setarch' | ||||||
|     echo '    -h            This message' |     echo '    -h            This message' | ||||||
|     exit 1 |     exit 1 | ||||||
| @@ -39,16 +41,16 @@ usage() { | |||||||
|  |  | ||||||
| orig_argv=("$0" "$@") | orig_argv=("$0" "$@") | ||||||
|  |  | ||||||
| opts='hC:M:U:c:f:s' | opts='hC:M:c:f:sm' | ||||||
|  |  | ||||||
| while getopts ${opts} arg; do | while getopts ${opts} arg; do | ||||||
|     case "${arg}" in |     case "${arg}" in | ||||||
|         C) pacman_conf="$OPTARG" ;; |         C) pacman_conf="$OPTARG" ;; | ||||||
|         M) makepkg_conf="$OPTARG" ;; |         M) makepkg_conf="$OPTARG" ;; | ||||||
|         U) mirror="$OPTARG" ;; |  | ||||||
|         c) cache_dir="$OPTARG" ;; |         c) cache_dir="$OPTARG" ;; | ||||||
|         f) files+=("$OPTARG") ;; |         f) files+=("$OPTARG") ;; | ||||||
|         s) nosetarch=true ;; |         s) nosetarch=true ;; | ||||||
|  |         m) copy_mirrorlist=false; basestrap_args+=(-M) ;; | ||||||
|         h|?) usage ;; |         h|?) usage ;; | ||||||
|         *) error "invalid argument '%s'" "$arg"; usage ;; |         *) error "invalid argument '%s'" "$arg"; usage ;; | ||||||
|     esac |     esac | ||||||
| @@ -98,7 +100,7 @@ while read -r varname; do | |||||||
|     _env+=("$varname=${!varname}") |     _env+=("$varname=${!varname}") | ||||||
| done < <(declare -x | sed -r 's/^declare -x ([^=]*)=.*/\1/' | grep -i '_proxy$') | done < <(declare -x | sed -r 's/^declare -x ([^=]*)=.*/\1/' | grep -i '_proxy$') | ||||||
| env -i "${_env[@]}" \ | env -i "${_env[@]}" \ | ||||||
| basestrap -Gc ${pacman_conf:+-C "$pacman_conf"} "$working_dir" ${cache_dirs[@]/#/--cachedir=} "$@" || die 'Failed to install all packages' | basestrap "${basestrap_args[@]}" ${pacman_conf:+-C "$pacman_conf"} "$working_dir" ${cache_dirs[@]/#/--cachedir=} "$@" || die 'Failed to install all packages' | ||||||
|  |  | ||||||
| echo "$chroot_version" > "$working_dir/.artools" | echo "$chroot_version" > "$working_dir/.artools" | ||||||
|  |  | ||||||
|   | |||||||
| @@ -204,11 +204,11 @@ _chrootbuild() { | |||||||
|     ulimit -c 0 |     ulimit -c 0 | ||||||
|  |  | ||||||
|     # Work around chroot-run not giving a ctty |     # Work around chroot-run not giving a ctty | ||||||
|     exec </dev/console |     #exec </dev/console | ||||||
|  |  | ||||||
|     . /etc/profile |     . /etc/profile | ||||||
|  |  | ||||||
|     export LANG=en_US.UTF-8 |     #export LANG=en_US.UTF-8 | ||||||
|  |  | ||||||
|     # workaround meson locale errors |     # workaround meson locale errors | ||||||
|     # supposedly fixed with coming python-3.7 |     # supposedly fixed with coming python-3.7 | ||||||
|   | |||||||
| @@ -1,93 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| # |  | ||||||
| # This program is free software; you can redistribute it and/or modify |  | ||||||
| # it under the terms of the GNU General Public License as published by |  | ||||||
| # the Free Software Foundation; version 2 of the License. |  | ||||||
| # |  | ||||||
| # This program 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 General Public License for more details. |  | ||||||
|  |  | ||||||
| version=@version@ |  | ||||||
|  |  | ||||||
| LIBDIR='@libdir@' |  | ||||||
| SYSCONFDIR='@sysconfdir@' |  | ||||||
|  |  | ||||||
| [[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh |  | ||||||
| import ${LIBDIR}/util.sh |  | ||||||
|  |  | ||||||
| prepare_clean(){ |  | ||||||
|     if [[ -n ${repository} ]];then |  | ||||||
|         storage_dir=${repos_root}/${repository}/os/${target_arch} |  | ||||||
|         paccache_args+=(-c "${storage_dir}" -k 1) |  | ||||||
|     else |  | ||||||
|         if [[ -n ${PKGDEST} ]];then |  | ||||||
|             storage_dir=${PKGDEST} |  | ||||||
|             paccache_args+=(-c "${storage_dir}" -k 4) |  | ||||||
|         else |  | ||||||
|             die "PKGDEST not set in makepkg.conf!" |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
|  |  | ||||||
| display_settings(){ |  | ||||||
|     show_version |  | ||||||
|     show_config |  | ||||||
|  |  | ||||||
|     msg "OPTIONS:" |  | ||||||
|     msg2 "repository: %s" "${repository}" |  | ||||||
|  |  | ||||||
|     msg "PATH:" |  | ||||||
|     msg2 "storage_dir: %s" "${storage_dir}" |  | ||||||
|  |  | ||||||
|     msg "ARGS:" |  | ||||||
|     msg2 "paccache_args: %s" "${paccache_args[*]}" |  | ||||||
|  |  | ||||||
|     paccache "${paccache_args[@]}" |  | ||||||
| } |  | ||||||
|  |  | ||||||
| load_user_info |  | ||||||
|  |  | ||||||
| load_config "${AT_USERCONFDIR}/artools.conf" || load_config "${SYSCONFDIR}/artools.conf" |  | ||||||
| load_vars "${PAC_USERCONFDIR}/makepkg.conf" || load_vars "$USER_HOME/.makepkg.conf" |  | ||||||
| load_vars /etc/makepkg.conf |  | ||||||
|  |  | ||||||
| clean=false |  | ||||||
| pretend=false |  | ||||||
| repository='' |  | ||||||
| storage_dir='' |  | ||||||
| paccache_args=(-v) |  | ||||||
|  |  | ||||||
| usage() { |  | ||||||
|     echo "Usage: ${0##*/} [options]" |  | ||||||
|     echo "    -d <dir>           Directory [default:${repository}]" |  | ||||||
|     echo '    -c                 Clean up' |  | ||||||
|     echo '    -q                 Query settings and pretend cleaning' |  | ||||||
|     echo '    -h                 This help' |  | ||||||
|     echo '' |  | ||||||
|     echo '' |  | ||||||
|     exit $1 |  | ||||||
| } |  | ||||||
|  |  | ||||||
| orig_argv=("$0" "$@") |  | ||||||
|  |  | ||||||
| opts='d:cqh' |  | ||||||
|  |  | ||||||
| while getopts "${opts}" arg; do |  | ||||||
|     case "${arg}" in |  | ||||||
|         d) repository="$OPTARG" ;; |  | ||||||
|         c) clean=true ; paccache_args+=(-r) ;; |  | ||||||
|         q) pretend=true; paccache_args+=(-d) ;; |  | ||||||
|         h|?) usage 0 ;; |  | ||||||
|         *) echo "invalid argument '${arg}'"; usage 1 ;; |  | ||||||
|     esac |  | ||||||
| done |  | ||||||
|  |  | ||||||
| shift $(($OPTIND - 1)) |  | ||||||
|  |  | ||||||
| prepare_clean |  | ||||||
|  |  | ||||||
| ${pretend} && display_settings && exit 1 |  | ||||||
|  |  | ||||||
| ${clean} && paccache "${paccache_args[@]}" |  | ||||||
| @@ -12,7 +12,10 @@ | |||||||
| ################ artools-pkg ################ | ################ artools-pkg ################ | ||||||
| ############################################# | ############################################# | ||||||
|  |  | ||||||
| # host_tree_artix='https://github.com/artix-linux' | # gitea user access token | ||||||
|  | # git_token='' | ||||||
|  |  | ||||||
|  | # host_tree_artix='gitea@gitea.artixlinux.org:artix' | ||||||
|  |  | ||||||
| # host_tree_arch=git://projects.archlinux.org/svntogit | # host_tree_arch=git://projects.archlinux.org/svntogit | ||||||
|  |  | ||||||
| @@ -29,21 +32,15 @@ | |||||||
| # the dist release; default: auto | # the dist release; default: auto | ||||||
| # iso_version=$(date +%Y%m%d) | # iso_version=$(date +%Y%m%d) | ||||||
|  |  | ||||||
| # possible values: openrc, (s6, runit) not yet supported | # possible values: openrc, runit (s6 not yet supported) | ||||||
| # initsys="openrc" | # initsys="openrc" | ||||||
|  |  | ||||||
| # unset defaults to given value |  | ||||||
| # kernel="linux" |  | ||||||
|  |  | ||||||
| # gpg key; leave empty or commented to skip sfs signing | # gpg key; leave empty or commented to skip sfs signing | ||||||
| # gpgkey="" | # gpgkey="" | ||||||
|  |  | ||||||
| # set upload bandwidth limit in kB/s | # set upload bandwidth limit in kB/s | ||||||
| # uplimit=100 | # uplimit=100 | ||||||
|  |  | ||||||
| # the torrent tracker urls, comma separated |  | ||||||
| # tracker_url='udp://mirror.strits.dk:6969' |  | ||||||
|  |  | ||||||
| # file_host="sourceforge.net" | # file_host="sourceforge.net" | ||||||
|  |  | ||||||
| # the server user | # the server user | ||||||
| @@ -51,9 +48,3 @@ | |||||||
|  |  | ||||||
| # the server project | # the server project | ||||||
| # project="artix-linux" | # project="artix-linux" | ||||||
|  |  | ||||||
| # host mirrors |  | ||||||
| # host_mirrors=('netcologne' 'freefr' 'netix' 'kent' '10gbps-io') |  | ||||||
|  |  | ||||||
| # Piece size, 2^n |  | ||||||
| # piece_size=21 |  | ||||||
|   | |||||||
| @@ -32,6 +32,10 @@ _mnt_dmsnapshot() { | |||||||
|  |  | ||||||
|     dmsetup create ${dm_snap_name} --table "0 ${ro_dev_size} snapshot ${ro_dev} ${rw_dev} ${cow_persistent} ${cow_chunksize}" |     dmsetup create ${dm_snap_name} --table "0 ${ro_dev_size} snapshot ${ro_dev} ${rw_dev} ${cow_persistent} ${cow_chunksize}" | ||||||
|  |  | ||||||
|  |     if [[ "${cow_persistent}" != "P" ]]; then | ||||||
|  |         rm -f "/run/artix/cowspace/${cow_directory}/${img_name}.cow" | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     _mnt_dev "/dev/mapper/${dm_snap_name}" "${mnt}" "-w" "defaults" |     _mnt_dev "/dev/mapper/${dm_snap_name}" "${mnt}" "-w" "defaults" | ||||||
|     echo $(readlink -f /dev/mapper/${dm_snap_name}) >> /run/artix/used_block_devices |     echo $(readlink -f /dev/mapper/${dm_snap_name}) >> /run/artix/used_block_devices | ||||||
| } | } | ||||||
|   | |||||||
| @@ -20,6 +20,11 @@ prepare_initcpio(){ | |||||||
| prepare_initramfs(){ | prepare_initramfs(){ | ||||||
|     local mnt="$1" |     local mnt="$1" | ||||||
|     cp ${DATADIR}/mkinitcpio.conf $mnt/etc/mkinitcpio-artix.conf |     cp ${DATADIR}/mkinitcpio.conf $mnt/etc/mkinitcpio-artix.conf | ||||||
|  |  | ||||||
|  |     if [[ "${profile}" != 'base' ]];then | ||||||
|  |         sed -e 's/artix_pxe_common artix_pxe_http artix_pxe_nbd artix_pxe_nfs //' -i $mnt/etc/mkinitcpio-artix.conf | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     if [[ -n ${gpgkey} ]]; then |     if [[ -n ${gpgkey} ]]; then | ||||||
|         user_run "gpg --export ${gpgkey} >${AT_USERCONFDIR}/gpgkey" |         user_run "gpg --export ${gpgkey} >${AT_USERCONFDIR}/gpgkey" | ||||||
|         exec 17<>${AT_USERCONFDIR}/gpgkey |         exec 17<>${AT_USERCONFDIR}/gpgkey | ||||||
| @@ -40,8 +45,12 @@ prepare_initramfs(){ | |||||||
|  |  | ||||||
| prepare_boot_extras(){ | prepare_boot_extras(){ | ||||||
|     local src="$1" dest="$2" |     local src="$1" dest="$2" | ||||||
| #     cp $src/boot/intel-ucode.img $dest/intel_ucode.img |  | ||||||
| #     cp $src/usr/share/licenses/intel-ucode/LICENSE $dest/intel_ucode.LICENSE |     for u in intel amd;do | ||||||
|  |         cp $src/boot/$u-ucode.img $dest/$u-ucode.img | ||||||
|  |         cp $src/usr/share/licenses/$u-ucode/LICENSE $dest/$u-ucode.LICENSE | ||||||
|  |     done | ||||||
|  |  | ||||||
|     cp $src/boot/memtest86+/memtest.bin $dest/memtest |     cp $src/boot/memtest86+/memtest.bin $dest/memtest | ||||||
|     cp $src/usr/share/licenses/common/GPL2/license.txt $dest/memtest.COPYING |     cp $src/usr/share/licenses/common/GPL2/license.txt $dest/memtest.COPYING | ||||||
| } | } | ||||||
| @@ -83,8 +92,13 @@ prepare_grub(){ | |||||||
|     cp -r ${theme}/themes/artix ${grub}/themes/ |     cp -r ${theme}/themes/artix ${grub}/themes/ | ||||||
|     cp -r ${theme}/{locales,tz} ${grub} |     cp -r ${theme}/{locales,tz} ${grub} | ||||||
|  |  | ||||||
|     msg2 "Creating %s ..." "unicode.pf2" |     if [[ -f /usr/share/grub/unicode.pf2 ]];then | ||||||
|     grub-mkfont -o ${grub}/unicode.pf2 /usr/share/fonts/misc/unifont.bdf |         msg2 "Copying %s ..." "unicode.pf2" | ||||||
|  |         cp /usr/share/grub/unicode.pf2 ${grub}/unicode.pf2 | ||||||
|  |     else | ||||||
|  |         msg2 "Creating %s ..." "unicode.pf2" | ||||||
|  |         grub-mkfont -o ${grub}/unicode.pf2 /usr/share/fonts/misc/unifont.bdf | ||||||
|  |     fi | ||||||
|  |  | ||||||
|     local size=4M mnt="${mnt_dir}/efiboot" efi_img="$3/efi.img" |     local size=4M mnt="${mnt_dir}/efiboot" efi_img="$3/efi.img" | ||||||
|     msg2 "Creating fat image of %s ..." "${size}" |     msg2 "Creating fat image of %s ..." "${size}" | ||||||
|   | |||||||
| @@ -1,51 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| # |  | ||||||
| # This program is free software; you can redistribute it and/or modify |  | ||||||
| # it under the terms of the GNU General Public License as published by |  | ||||||
| # the Free Software Foundation; version 2 of the License. |  | ||||||
| # |  | ||||||
| # This program 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 General Public License for more details. |  | ||||||
|  |  | ||||||
| connect(){ |  | ||||||
|     local home="/home/frs/project/${project}" |  | ||||||
|     echo "${account},${project}@frs.${file_host}:${home}" |  | ||||||
| } |  | ||||||
|  |  | ||||||
| gen_webseed(){ |  | ||||||
|     local webseed seed="$1" |  | ||||||
|     for mirror in ${host_mirrors[@]};do |  | ||||||
|         webseed=${webseed:-}${webseed:+,}"https://${mirror}.dl.${seed}" |  | ||||||
|     done |  | ||||||
|     echo ${webseed} |  | ||||||
| } |  | ||||||
|  |  | ||||||
| make_torrent(){ |  | ||||||
|     find ${src_dir} -type f -name "*.torrent" -delete |  | ||||||
|  |  | ||||||
|     if [[ -n $(find ${src_dir} -type f -name "*.iso") ]]; then |  | ||||||
|         for iso in $(ls ${src_dir}/*.iso);do |  | ||||||
|             local seed=${file_host}/project/${project}${target_dir}${iso##*/} |  | ||||||
|             local mktorrent_args=(-c "${torrent_meta}" -p -l ${piece_size} -a ${tracker_url} -w $(gen_webseed ${seed})) |  | ||||||
|             ${verbose} && mktorrent_args+=(-v) |  | ||||||
|             info "mktorrent_args: %s" "${mktorrent_args[@]}" |  | ||||||
|             msg2 "Creating (%s) ..." "${iso##*/}.torrent" |  | ||||||
|             mktorrent ${mktorrent_args[*]} -o ${iso}.torrent ${iso} |  | ||||||
|         done |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
|  |  | ||||||
| prepare_transfer(){ |  | ||||||
|     target_dir="/iso/${profile}/" |  | ||||||
|     src_dir="${iso_pool}/${profile}/" |  | ||||||
|     ${torrent} && make_torrent |  | ||||||
| } |  | ||||||
|  |  | ||||||
| sync_dir(){ |  | ||||||
|     msg "Start upload [%s] ..." "${profile}" |  | ||||||
|     rsync "${rsync_args[@]}" ${src_dir} $(connect)${target_dir} |  | ||||||
|     msg "Done upload [%s]" "${profile}" |  | ||||||
|     show_elapsed_time "${FUNCNAME}" "${timer_start}" |  | ||||||
| } |  | ||||||
| @@ -25,27 +25,45 @@ write_users_conf(){ | |||||||
|     echo "setRootPassword: true" >> "$conf" |     echo "setRootPassword: true" >> "$conf" | ||||||
| #     echo "doReusePassword: false" >> "$conf" # only used in old 'users' module | #     echo "doReusePassword: false" >> "$conf" # only used in old 'users' module | ||||||
|     echo "availableShells: /bin/bash, /bin/zsh" >> "$conf" # only used in new 'users' module |     echo "availableShells: /bin/bash, /bin/zsh" >> "$conf" # only used in new 'users' module | ||||||
|     echo "avatarFilePath:  ~/.face" >> "$conf" | #     echo "avatarFilePath:  ~/.face" >> "$conf" | ||||||
|  | #     echo "passwordRequirements:" >> "$conf" | ||||||
|  | #     echo "    minLength: -1" >> "$conf" | ||||||
|  | #     echo "    maxLength: -1" >> "$conf" | ||||||
|  | #     echo "    libpwquality:" >> "$conf" | ||||||
|  | #     echo "        - minlen=8" >> "$conf" | ||||||
|  | #     echo "        - minclass=80" >> "$conf" | ||||||
| } | } | ||||||
|  |  | ||||||
| write_servicescfg_conf(){ | write_servicescfg_conf(){ | ||||||
|     local init="$2" |     local init="$2" | ||||||
|     local conf="$1"/"$init"cfg.conf state='add' |     local conf="$1"/services-"$init".conf | ||||||
|     msg2 "Writing %s ..." "${conf##*/}" |     msg2 "Writing %s ..." "${conf##*/}" | ||||||
|     echo '---' >  "$conf" |     echo '---' >  "$conf" | ||||||
|     if [[ "$init" == 'runit' ]];then |     case "$init" in | ||||||
|         state='enabled' |         'runit') | ||||||
|         echo 'svdir: /etc/runit/sv' >> "$conf" |             echo 'svDir: /etc/runit/sv' >> "$conf" | ||||||
|         echo '' >> "$conf" |             echo '' >> "$conf" | ||||||
|         echo 'runsvdir: /etc/runit/runsvdir' >> "$conf" |             echo 'runsvDir: /etc/runit/runsvdir' >> "$conf" | ||||||
|     fi |             echo '' >> "$conf" | ||||||
|     echo '' >> "$conf" |             echo 'services:' >> "$conf" | ||||||
|     echo 'services:' >> "$conf" |             echo "    enabled:" >> "$conf" | ||||||
|     echo "    $state:" >> "$conf" |             for svc in ${services[@]};do | ||||||
|     for svc in ${services[@]};do |                 echo "      - name: $svc" >> "$conf" | ||||||
|         echo "      - name: $svc" >> "$conf" |                 echo '        runlevel: default' >> "$conf" | ||||||
|         echo '        runlevel: default' >> "$conf" |             done | ||||||
|     done |         ;; | ||||||
|  |         'openrc') | ||||||
|  |             echo 'initdDir: /etc/init.d' >> "$conf" | ||||||
|  |             echo '' >> "$conf" | ||||||
|  |             echo 'runlevelsDir: /etc/runlevels' >> "$conf" | ||||||
|  |             echo '' >> "$conf" | ||||||
|  |             echo 'services:' >> "$conf" | ||||||
|  |             for svc in ${services[@]};do | ||||||
|  |                 echo "      - name: $svc" >> "$conf" | ||||||
|  |                 echo '        runlevel: default' >> "$conf" | ||||||
|  |             done | ||||||
|  |         ;; | ||||||
|  |     esac | ||||||
| } | } | ||||||
|  |  | ||||||
| write_postcfg_conf(){ | write_postcfg_conf(){ | ||||||
| @@ -53,21 +71,15 @@ write_postcfg_conf(){ | |||||||
|     sed -e "s|openrc|$init|" -i "$conf" |     sed -e "s|openrc|$init|" -i "$conf" | ||||||
| } | } | ||||||
|  |  | ||||||
| write_netinstall_conf(){ |  | ||||||
|     local conf="$1/netinstall.conf" init="$2" |  | ||||||
|     sed -e "s|netgroups-openrc.yaml|netgroups-$init.yaml|" -i "$conf" |  | ||||||
| } |  | ||||||
|  |  | ||||||
| configure_calamares(){ | configure_calamares(){ | ||||||
|     local mods="$1/etc/calamares/modules" init="$2" |     local mods="$1/etc/calamares/modules" init="$2" | ||||||
|     if [[ -d "$mods" ]];then |     if [[ -d "$mods" ]];then | ||||||
|         info "Configuring [Calamares]" |         info "Configuring [Calamares]" | ||||||
|         write_netinstall_conf "$mods" "$init" |  | ||||||
|         write_users_conf "$mods" |         write_users_conf "$mods" | ||||||
|         write_servicescfg_conf "$mods" "$init" |         write_servicescfg_conf "$mods" "$init" | ||||||
|         write_postcfg_conf "$mods" "$init" |         write_postcfg_conf "$mods" "$init" | ||||||
|         local name="$init"cfg |         local name=services-"$init" | ||||||
|         sed -e "s|openrccfg|$name|" -i "$1"/etc/calamares/settings.conf |         sed -e "s|services-openrc|$name|" -i "$1"/etc/calamares/settings.conf | ||||||
|         info "Done configuring [Calamares]" |         info "Done configuring [Calamares]" | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
|   | |||||||
| @@ -87,6 +87,7 @@ error_function() { | |||||||
| # $1: function | # $1: function | ||||||
| run_log(){ | run_log(){ | ||||||
|     local func="$1" log_dir='/var/log/artools' |     local func="$1" log_dir='/var/log/artools' | ||||||
|  |     [[ ! -d $log_dir ]] && mkdir -p $log_dir | ||||||
|     local logfile=${log_dir}/$(gen_iso_fn).$func.log |     local logfile=${log_dir}/$(gen_iso_fn).$func.log | ||||||
|     logpipe=$(mktemp -u "/tmp/$func.pipe.XXXXXXXX") |     logpipe=$(mktemp -u "/tmp/$func.pipe.XXXXXXXX") | ||||||
|     mkfifo "$logpipe" |     mkfifo "$logpipe" | ||||||
| @@ -406,7 +407,10 @@ make_iso() { | |||||||
| gen_iso_fn(){ | gen_iso_fn(){ | ||||||
|     local vars=("artix") name |     local vars=("artix") name | ||||||
|     vars+=("${profile}") |     vars+=("${profile}") | ||||||
|     [[ ${initsys} == 'runit' ]] && vars+=("${initsys}") |     vars+=("${initsys}") | ||||||
|  |     case "${stablility}" in | ||||||
|  |         'gremlins'|'goblins') vars+=("${stablility}") ;; | ||||||
|  |     esac | ||||||
|     vars+=("${iso_version}") |     vars+=("${iso_version}") | ||||||
|     vars+=("${target_arch}") |     vars+=("${target_arch}") | ||||||
|     for n in ${vars[@]};do |     for n in ${vars[@]};do | ||||||
|   | |||||||
| @@ -33,47 +33,11 @@ get_os_name(){ | |||||||
|     echo "$str" |     echo "$str" | ||||||
| } | } | ||||||
|  |  | ||||||
| get_chroot_arch(){ |  | ||||||
|     local elf=$(file $1/usr/bin/file) |  | ||||||
|     elf=${elf//*executable,} |  | ||||||
|     echo ${elf%%,*} |  | ||||||
| } |  | ||||||
|  |  | ||||||
| chroot_part_mount() { | chroot_part_mount() { | ||||||
|     info "mount: [%s]" "$2" |     info "mount: [%s]" "$2" | ||||||
|     mount "$@" && CHROOT_ACTIVE_PART_MOUNTS=("$2" "${CHROOT_ACTIVE_PART_MOUNTS[@]}") |     mount "$@" && CHROOT_ACTIVE_PART_MOUNTS=("$2" "${CHROOT_ACTIVE_PART_MOUNTS[@]}") | ||||||
| } | } | ||||||
|  |  | ||||||
| select_os(){ |  | ||||||
|     local os_list=( $(detect) ) count=${#os_list[@]} |  | ||||||
|     if [[ ${count} > 1 ]];then |  | ||||||
|         msg "Detected systems:" |  | ||||||
|         local i=0 |  | ||||||
|         for os in ${os_list[@]};do |  | ||||||
|             local last=${os##*:} |  | ||||||
|             case $last in |  | ||||||
|                 'efi') count=$((count-1)) ;; |  | ||||||
|                 *) info "$i) $(get_os_name $os)"; i=$((i+1)) ;; |  | ||||||
|             esac |  | ||||||
|         done |  | ||||||
|         i=0 |  | ||||||
|         msg "Select system to mount [0-%s] : " "$((count-1))" |  | ||||||
|         read select |  | ||||||
|     else |  | ||||||
|         select=0 |  | ||||||
|     fi |  | ||||||
|     local os_str=${os_list[$select]} type |  | ||||||
|     type=$os_str |  | ||||||
|     root=${os_str%%:*} |  | ||||||
|     type=${type##*:} |  | ||||||
|     if [[ "${type##*:}" == 'linux' ]];then |  | ||||||
|         msg "Mounting (%s) [%s]" "$(get_os_name $os_str)" "$root" |  | ||||||
|         mount_os "$1" "$root" |  | ||||||
|     else |  | ||||||
|         die "You can't mount %s!" "$select" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
|  |  | ||||||
| trap_setup(){ | trap_setup(){ | ||||||
|     [[ $(trap -p EXIT) ]] && die 'Error! Attempting to overwrite existing EXIT trap' |     [[ $(trap -p EXIT) ]] && die 'Error! Attempting to overwrite existing EXIT trap' | ||||||
|     trap "$1" EXIT |     trap "$1" EXIT | ||||||
| @@ -151,16 +115,6 @@ mount_os(){ | |||||||
|         esac |         esac | ||||||
|     done |     done | ||||||
|  |  | ||||||
|     local chroot_arch=$(get_chroot_arch $1) |  | ||||||
|     [[ ${chroot_arch} == x86-64 ]] && chroot_arch=${chroot_arch/-/_} |  | ||||||
|     case ${target_arch} in |  | ||||||
|         i686) |  | ||||||
|             if [[ ${chroot_arch} == x86_64 ]];then |  | ||||||
|                 die "You can't chroot from %s host into %s!" "${target_arch}" "${chroot_arch}" |  | ||||||
|             fi |  | ||||||
|         ;; |  | ||||||
|     esac |  | ||||||
|  |  | ||||||
|     chroot_setup "$1" |     chroot_setup "$1" | ||||||
|     chroot_add_resolv_conf "$1" |     chroot_add_resolv_conf "$1" | ||||||
| } | } | ||||||
| @@ -171,16 +125,18 @@ chroot_api_mount() { | |||||||
|     chroot_setup "$1" |     chroot_setup "$1" | ||||||
| } | } | ||||||
|  |  | ||||||
| chroot_part_umount() { |  | ||||||
|     info "umount: [%s]" "${CHROOT_ACTIVE_MOUNTS[@]}" |  | ||||||
|     umount "${CHROOT_ACTIVE_MOUNTS[@]}" |  | ||||||
|     info "umount: [%s]" "${CHROOT_ACTIVE_PART_MOUNTS[@]}" |  | ||||||
|     umount "${CHROOT_ACTIVE_PART_MOUNTS[@]}" |  | ||||||
|     unset CHROOT_ACTIVE_PART_MOUNTS CHROOT_ACTIVE_MOUNTS |  | ||||||
| } |  | ||||||
|  |  | ||||||
| chroot_api_umount() { | chroot_api_umount() { | ||||||
|     info "umount: [%s]" "${CHROOT_ACTIVE_MOUNTS[@]}" |     if (( ${#CHROOT_ACTIVE_MOUNTS[@]} )); then | ||||||
|     umount "${CHROOT_ACTIVE_MOUNTS[@]}" |         info "umount: [%s]" "${CHROOT_ACTIVE_MOUNTS[@]}" | ||||||
|  |         umount "${CHROOT_ACTIVE_MOUNTS[@]}" | ||||||
|  |     fi | ||||||
|     unset CHROOT_ACTIVE_MOUNTS |     unset CHROOT_ACTIVE_MOUNTS | ||||||
| } | } | ||||||
|  |  | ||||||
|  | chroot_part_umount() { | ||||||
|  |     chroot_api_umount | ||||||
|  |     info "umount: [%s]" "${CHROOT_ACTIVE_PART_MOUNTS[@]}" | ||||||
|  |     umount "${CHROOT_ACTIVE_PART_MOUNTS[@]}" | ||||||
|  |     unset CHROOT_ACTIVE_PART_MOUNTS | ||||||
|  | } | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										59
									
								
								lib/util-pkg-gitea.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								lib/util-pkg-gitea.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,59 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # | ||||||
|  | # This program is free software; you can redistribute it and/or modify | ||||||
|  | # it under the terms of the GNU General Public License as published by | ||||||
|  | # the Free Software Foundation; version 2 of the License. | ||||||
|  | # | ||||||
|  | # This program 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 General Public License for more details. | ||||||
|  |  | ||||||
|  | get_compliant_name(){ | ||||||
|  |     local gitname="$1" | ||||||
|  |     case $gitname in | ||||||
|  |         *+) gitname=${gitname//+/plus} | ||||||
|  |     esac | ||||||
|  |     echo $gitname | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | create_repo(){ | ||||||
|  |     local pkg="$1" | ||||||
|  |     local gitname=$(get_compliant_name "$pkg") | ||||||
|  |     curl -X POST "${git_url}/api/v1/org/packages/repos?access_token=${git_token}" -H "accept: application/json" -H "content-type: application/json" -d "{ \"auto_init\": true, \"name\":\"$gitname\", \"readme\": \"Default\" }" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | delete_repo(){ | ||||||
|  |     local pkg="$1" | ||||||
|  |     local gitname=$(get_compliant_name "$pkg") | ||||||
|  |     curl -X DELETE "${git_url}/api/v1/repos/packages/$gitname?access_token=${git_token}" -H  "accept: application/json" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | find_team(){ | ||||||
|  |     local pkg="$1" team_id= | ||||||
|  |  | ||||||
|  |     if [[ -f $pkg/repos/core-x86_64/PKGBUILD ]];then | ||||||
|  |         team_id=18 | ||||||
|  |     elif [[ -f $pkg/repos/core-any/PKGBUILD ]];then | ||||||
|  |         team_id=18 | ||||||
|  |     elif [[ -f $pkg/repos/extra-x86_64/PKGBUILD ]];then | ||||||
|  |         team_id=19 | ||||||
|  |     elif [[ -f $pkg/repos/extra-any/PKGBUILD ]];then | ||||||
|  |         team_id=19 | ||||||
|  |     elif [[ -f $pkg/repos/community-x86_64/PKGBUILD ]];then | ||||||
|  |         team_id=20 | ||||||
|  |     elif [[ -f $pkg/repos/community-any/PKGBUILD ]];then | ||||||
|  |         team_id=20 | ||||||
|  |     elif [[ -f $pkg/repos/multilib-x86_64/PKGBUILD ]];then | ||||||
|  |         team_id=21 | ||||||
|  |     fi | ||||||
|  |     echo $team_id | ||||||
|  | } | ||||||
|  |  | ||||||
|  | add_repo_to_team(){ | ||||||
|  |     local pkg="$1" path="$2" | ||||||
|  |     local id=$(find_team "$path") | ||||||
|  |  | ||||||
|  |     curl -X PUT "${git_url}/api/v1/teams/$id/repos/packages/$pkg?access_token=${git_token}" -H  "accept: application/json" | ||||||
|  | } | ||||||
							
								
								
									
										30
									
								
								lib/util-pkg-subrepo.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								lib/util-pkg-subrepo.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # | ||||||
|  | # This program is free software; you can redistribute it and/or modify | ||||||
|  | # it under the terms of the GNU General Public License as published by | ||||||
|  | # the Free Software Foundation; version 2 of the License. | ||||||
|  | # | ||||||
|  | # This program 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 General Public License for more details. | ||||||
|  |  | ||||||
|  | subrepo_init(){ | ||||||
|  |     local pkg="$1" branch=master org=packages | ||||||
|  |     git subrepo init "$pkg" -r gitea@"${git_domain}":"$org"/"$pkg".git -b "$branch" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | subrepo_push(){ | ||||||
|  |     local pkg="$1" branch=master | ||||||
|  |     git subrepo push "$pkg" -u -b "$branch" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | subrepo_pull(){ | ||||||
|  |     local pkg="$1" name="${2:-$1}" branch=master org=packages | ||||||
|  |     git subrepo pull "$pkg" -r gitea@"${git_domain}":"$org"/"$name".git -u -b "$branch" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | subrepo_clone(){ | ||||||
|  |     local pkg="$1" name="${2:-$1}" branch=master org=packages | ||||||
|  |     git subrepo clone gitea@"${git_domain}":"$org"/"$name".git "$pkg" -b "$branch" | ||||||
|  | } | ||||||
| @@ -45,8 +45,7 @@ patch_pkg(){ | |||||||
|         ;; |         ;; | ||||||
|         'linux') |         'linux') | ||||||
|             sed -e 's|-ARCH|-ARTIX|g' -i $pkg/trunk/PKGBUILD |             sed -e 's|-ARCH|-ARTIX|g' -i $pkg/trunk/PKGBUILD | ||||||
|             sed -e 's|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION="-ARTIX"|' \ |             sed -e 's|CONFIG_DEFAULT_HOSTNAME=.*|CONFIG_DEFAULT_HOSTNAME="artixlinux"|' \ | ||||||
|                 -e 's|CONFIG_DEFAULT_HOSTNAME=.*|CONFIG_DEFAULT_HOSTNAME="artixlinux"|' \ |  | ||||||
|                 -e 's|CONFIG_CRYPTO_SPECK=.*|CONFIG_CRYPTO_SPECK=n|' \ |                 -e 's|CONFIG_CRYPTO_SPECK=.*|CONFIG_CRYPTO_SPECK=n|' \ | ||||||
|                 -i $pkg/trunk/config |                 -i $pkg/trunk/config | ||||||
|             cd $pkg/trunk |             cd $pkg/trunk | ||||||
| @@ -77,6 +76,14 @@ patch_pkg(){ | |||||||
|     esac |     esac | ||||||
| } | } | ||||||
|  |  | ||||||
|  | write_jenkinsfile(){ | ||||||
|  |     local pkg="$1" jenkins=Jenkinsfile | ||||||
|  |     echo '@Library(["PackagePipeline", "BuildPkg", "DeployPkg", "Notify", "PostBuild", "RepoPackage"]) import org.artixlinux.RepoPackage' > $pkg/$jenkins | ||||||
|  |     echo '' >> $pkg/$jenkins | ||||||
|  |     echo 'PackagePipeline(new RepoPackage(this))' >> $pkg/$jenkins | ||||||
|  |     echo '' >> $pkg/$jenkins | ||||||
|  | } | ||||||
|  |  | ||||||
| find_tree(){ | find_tree(){ | ||||||
|     local tree="$1" pkg="$2" |     local tree="$1" pkg="$2" | ||||||
|     local result=$(find $tree -mindepth 2 -maxdepth 2 -type d -name "$pkg") |     local result=$(find $tree -mindepth 2 -maxdepth 2 -type d -name "$pkg") | ||||||
| @@ -125,7 +132,7 @@ is_valid_repo(){ | |||||||
| } | } | ||||||
|  |  | ||||||
| find_repo(){ | find_repo(){ | ||||||
|     local pkg="$1" incl="$2" repo= |     local pkg="$1" unst="$2" stag="$3" repo= | ||||||
|  |  | ||||||
|     if [[ -f $pkg/repos/core-x86_64/PKGBUILD ]];then |     if [[ -f $pkg/repos/core-x86_64/PKGBUILD ]];then | ||||||
|         repo=core-x86_64 |         repo=core-x86_64 | ||||||
| @@ -145,10 +152,12 @@ find_repo(){ | |||||||
|         repo=testing-any |         repo=testing-any | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ -f $pkg/repos/staging-x86_64/PKGBUILD ]];then |     if $stag;then | ||||||
|         repo=staging-x86_64 |         if [[ -f $pkg/repos/staging-x86_64/PKGBUILD ]];then | ||||||
|     elif [[ -f $pkg/repos/staging-any/PKGBUILD ]];then |             repo=staging-x86_64 | ||||||
|         repo=staging-any |         elif [[ -f $pkg/repos/staging-any/PKGBUILD ]];then | ||||||
|  |             repo=staging-any | ||||||
|  |         fi | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ -f $pkg/repos/community-x86_64/PKGBUILD ]];then |     if [[ -f $pkg/repos/community-x86_64/PKGBUILD ]];then | ||||||
| @@ -163,10 +172,12 @@ find_repo(){ | |||||||
|         repo=community-testing-any |         repo=community-testing-any | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ -f $pkg/repos/community-staging-x86_64/PKGBUILD ]];then |     if $stag;then | ||||||
|         repo=community-staging-x86_64 |         if [[ -f $pkg/repos/community-staging-x86_64/PKGBUILD ]];then | ||||||
|     elif [[ -f $pkg/repos/community-staging-any/PKGBUILD ]];then |             repo=community-staging-x86_64 | ||||||
|         repo=community-staging-any |         elif [[ -f $pkg/repos/community-staging-any/PKGBUILD ]];then | ||||||
|  |             repo=community-staging-any | ||||||
|  |         fi | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ -f $pkg/repos/multilib-x86_64/PKGBUILD ]];then |     if [[ -f $pkg/repos/multilib-x86_64/PKGBUILD ]];then | ||||||
| @@ -177,11 +188,13 @@ find_repo(){ | |||||||
|         repo=multilib-testing-x86_64 |         repo=multilib-testing-x86_64 | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if [[ -f $pkg/repos/multilib-staging-x86_64/PKGBUILD ]];then |     if $stag;then | ||||||
|         repo=multilib-staging-x86_64 |         if [[ -f $pkg/repos/multilib-staging-x86_64/PKGBUILD ]];then | ||||||
|  |             repo=multilib-staging-x86_64 | ||||||
|  |         fi | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
|     if $incl;then |     if $unst;then | ||||||
|         if [[ -f $pkg/repos/gnome-unstable-x86_64/PKGBUILD ]];then |         if [[ -f $pkg/repos/gnome-unstable-x86_64/PKGBUILD ]];then | ||||||
|             repo=gnome-unstable-x86_64 |             repo=gnome-unstable-x86_64 | ||||||
|         elif [[ -f $pkg/repos/gnome-unstable-any/PKGBUILD ]];then |         elif [[ -f $pkg/repos/gnome-unstable-any/PKGBUILD ]];then | ||||||
|   | |||||||
							
								
								
									
										16
									
								
								lib/util.sh
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								lib/util.sh
									
									
									
									
									
								
							| @@ -60,9 +60,15 @@ init_artools_base(){ | |||||||
|  |  | ||||||
| init_artools_pkg(){ | init_artools_pkg(){ | ||||||
|  |  | ||||||
|  |     git_domain='gitea.artixlinux.org' | ||||||
|  |  | ||||||
|  |     git_url="https://${git_domain}" | ||||||
|  |  | ||||||
|  |     [[ -z ${git_token} ]] && git_token='' | ||||||
|  |  | ||||||
|     [[ -z ${tree_dir_artix} ]] && tree_dir_artix=${workspace_dir}/artix |     [[ -z ${tree_dir_artix} ]] && tree_dir_artix=${workspace_dir}/artix | ||||||
|  |  | ||||||
|     [[ -z ${host_tree_artix} ]] && host_tree_artix='https://github.com/artix-linux' |     [[ -z ${host_tree_artix} ]] && host_tree_artix="gitea@gitea.artixlinux.org:artix" | ||||||
|  |  | ||||||
|     [[ -z ${tree_dir_arch} ]] && tree_dir_arch=${workspace_dir}/archlinux |     [[ -z ${tree_dir_arch} ]] && tree_dir_arch=${workspace_dir}/archlinux | ||||||
|  |  | ||||||
| @@ -92,19 +98,11 @@ init_artools_iso(){ | |||||||
|  |  | ||||||
|     [[ -z ${uplimit} ]] && uplimit=100 |     [[ -z ${uplimit} ]] && uplimit=100 | ||||||
|  |  | ||||||
|     [[ -z ${tracker_url} ]] && tracker_url='udp://mirror.strits.dk:6969' |  | ||||||
|  |  | ||||||
|     [[ -z ${piece_size} ]] && piece_size=21 |  | ||||||
|  |  | ||||||
|     [[ -z ${file_host} ]] && file_host="sourceforge.net" |     [[ -z ${file_host} ]] && file_host="sourceforge.net" | ||||||
|  |  | ||||||
|     [[ -z ${project} ]] && project="artix-linux" |     [[ -z ${project} ]] && project="artix-linux" | ||||||
|  |  | ||||||
|     [[ -z ${account} ]] && account="[SetUser]" |     [[ -z ${account} ]] && account="[SetUser]" | ||||||
|  |  | ||||||
|     [[ -z ${host_mirrors[@]} ]] && host_mirrors=('netcologne' 'freefr' 'netix' 'kent' '10gbps-io') |  | ||||||
|  |  | ||||||
|     torrent_meta="$(get_osname)" |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user