forked from artix/artools
		
	Compare commits
	
		
			23 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					b46b5c626e | ||
| 
						 | 
					9ac4576666 | ||
| 
						 | 
					a88f196217 | ||
| 
						 | 
					c0e8ef4c26 | ||
| 
						 | 
					02b28e82ef | ||
| 
						 | 
					fb6d1d4c1b | ||
| 
						 | 
					9fc3fbd14d | ||
| 
						 | 
					72f2781cb9 | ||
| 
						 | 
					9ddd73c8b4 | ||
| 
						 | 
					3c92d5c87a | ||
| 
						 | 
					bc8f17cc86 | ||
| 
						 | 
					1ceb6926e9 | ||
| 
						 | 
					4d3a993a72 | ||
| 
						 | 
					a52bdc9799 | ||
| 
						 | 
					b62e90f778 | ||
| 
						 | 
					5d2fda793d | ||
| 
						 | 
					550663cfd1 | ||
| 
						 | 
					6c117fb97d | ||
| 
						 | 
					7e6d832314 | ||
| 
						 | 
					6fc7b124fc | ||
| 
						 | 
					a011005901 | ||
| 
						 | 
					5da4fea263 | ||
| 
						 | 
					e1b8a0493b | 
							
								
								
									
										5
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								Makefile
									
									
									
									
									
								
							@@ -1,5 +1,7 @@
 | 
			
		||||
Version=0.7
 | 
			
		||||
 | 
			
		||||
Chroot_version=0.7
 | 
			
		||||
 | 
			
		||||
PREFIX = /usr/local
 | 
			
		||||
SYSCONFDIR = /etc
 | 
			
		||||
 | 
			
		||||
@@ -97,7 +99,8 @@ all: $(BIN_BASE) $(BIN_PKG) $(BIN_ISO)
 | 
			
		||||
edit = sed -e "s|@datadir[@]|$(DESTDIR)$(PREFIX)/share/artools|g" \
 | 
			
		||||
	-e "s|@sysconfdir[@]|$(DESTDIR)$(SYSCONFDIR)/artools|g" \
 | 
			
		||||
	-e "s|@libdir[@]|$(DESTDIR)$(PREFIX)/lib/artools|g" \
 | 
			
		||||
	-e "s|@version@|${Version}|"
 | 
			
		||||
	-e "s|@version@|${Version}|" \
 | 
			
		||||
	-e "s|@chroot_version@|${Chroot_version}|"
 | 
			
		||||
 | 
			
		||||
%: %.in Makefile
 | 
			
		||||
	@echo "GEN $@"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										105
									
								
								bin/buildtree.in
									
									
									
									
									
								
							
							
						
						
									
										105
									
								
								bin/buildtree.in
									
									
									
									
									
								
							@@ -19,42 +19,17 @@ DATADIR='@datadir@'
 | 
			
		||||
import ${LIBDIR}/util.sh
 | 
			
		||||
import ${LIBDIR}/util-pkg.sh
 | 
			
		||||
 | 
			
		||||
pull_tree(){
 | 
			
		||||
    local branch="master" tree="$1"
 | 
			
		||||
    local local_head=$(get_local_head "$branch")
 | 
			
		||||
    local remote_head=$(get_remote_head "$branch")
 | 
			
		||||
    local timer=$(get_timer)
 | 
			
		||||
    msg "Checking [%s] ..." "$tree"
 | 
			
		||||
    msg2 "local: %s" "${local_head}"
 | 
			
		||||
    msg2 "remote: %s" "${remote_head}"
 | 
			
		||||
    if [[ "${local_head}" == "${remote_head}" ]]; then
 | 
			
		||||
        info "nothing to do"
 | 
			
		||||
    else
 | 
			
		||||
        info "needs pull"
 | 
			
		||||
        git pull origin $branch
 | 
			
		||||
    fi
 | 
			
		||||
    msg "Done [%s]" "$tree"
 | 
			
		||||
    show_elapsed_time "${FUNCNAME}" "${timer}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
clone_tree(){
 | 
			
		||||
    local timer=$(get_timer) tree="$1" host_tree="$2"
 | 
			
		||||
    msg "Preparing [%s] ..." "$tree"
 | 
			
		||||
    info "clone"
 | 
			
		||||
    git clone $host_tree.git
 | 
			
		||||
    msg "Done [%s]" "$tree"
 | 
			
		||||
    show_elapsed_time "${FUNCNAME}" "${timer}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pull_tree_arch(){
 | 
			
		||||
    cd ${tree_dir_arch}
 | 
			
		||||
    for tree in packages community;do
 | 
			
		||||
        if [[ -d ${tree} ]];then
 | 
			
		||||
            cd ${tree}
 | 
			
		||||
                pull_tree "${tree}"
 | 
			
		||||
                msg "Checking (%s)" "${tree}"
 | 
			
		||||
                pull_tree
 | 
			
		||||
            cd ..
 | 
			
		||||
        else
 | 
			
		||||
            clone_tree "${tree}" "${host_tree_arch}/${tree}"
 | 
			
		||||
            msg "Cloning (%s) ..." "$tree"
 | 
			
		||||
            clone_tree "${host_tree_arch}/${tree}"
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
}
 | 
			
		||||
@@ -65,10 +40,12 @@ pull_tree_artix(){
 | 
			
		||||
        if [[ -d ${tree} ]];then
 | 
			
		||||
            cd ${tree}
 | 
			
		||||
                git config --bool pull.rebase true
 | 
			
		||||
                pull_tree "${tree}"
 | 
			
		||||
                msg "Checking (%s)" "${tree}"
 | 
			
		||||
                pull_tree
 | 
			
		||||
            cd ..
 | 
			
		||||
        else
 | 
			
		||||
            clone_tree "${tree}" "${host_tree_artix}/${tree}"
 | 
			
		||||
            msg "Cloning (%s) ..." "$tree"
 | 
			
		||||
            clone_tree "${host_tree_artix}/${tree}"
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
}
 | 
			
		||||
@@ -106,7 +83,7 @@ show_version_table(){
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
show_artix_table(){
 | 
			
		||||
     msg_table_header "%-20s %-20s %-25s %-30s %-30s" "Arch Repo" "Artix Repo" "Package" "Arch version" "Artix version"
 | 
			
		||||
    msg_table_header "%-20s %-20s %-25s %-30s %-30s" "Arch Repo" "Artix Repo" "Package" "Arch version" "Artix version"
 | 
			
		||||
    for tree in packages packages-galaxy;do
 | 
			
		||||
        local git=$(find ${tree_dir_artix}/$tree/ -mindepth 1 -maxdepth 1 -type d)
 | 
			
		||||
        for pkg_path in ${git[@]}; do
 | 
			
		||||
@@ -149,32 +126,45 @@ show_artix_table(){
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
from_arch(){
 | 
			
		||||
    local pkg="$1" archtree="$2" artixtree="$3" src= dest=
 | 
			
		||||
    src=${tree_dir_arch}/$archtree/$pkg/trunk
 | 
			
		||||
    dest=${tree_dir_artix}/$artixtree/$pkg/trunk
 | 
			
		||||
    local pkg="$1" src= dest=
 | 
			
		||||
    local git_tree_arch=$(find_tree "${tree_dir_arch}" "$pkg")
 | 
			
		||||
    [[ -z $git_tree_arch ]] && die "Package '%s' does not exist!" "$pkg"
 | 
			
		||||
    src=${tree_dir_arch}/$git_tree_arch/$pkg/trunk
 | 
			
		||||
 | 
			
		||||
    local git_tree_artix=$(find_tree "${tree_dir_artix}" "$pkg")
 | 
			
		||||
    dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk
 | 
			
		||||
 | 
			
		||||
    cd ${tree_dir_arch}/$git_tree_arch
 | 
			
		||||
 | 
			
		||||
    source $src/PKGBUILD 2>/dev/null
 | 
			
		||||
    cd ${tree_dir_arch}/$archtree
 | 
			
		||||
    msg "Package: %s" "$pkg"
 | 
			
		||||
    local archver=$(get_full_version $pkg)
 | 
			
		||||
 | 
			
		||||
    msg "Package: %s" "$pkg"
 | 
			
		||||
    msg2 "Arch Version: %s" "$archver"
 | 
			
		||||
    [[ -n ${makedepends[@]} ]] && msg2 "makedepends: %s" "${makedepends[*]}"
 | 
			
		||||
    [[ -n ${checkdepends[@]} ]] && msg2 "depends: %s" "${checkdepends[*]}"
 | 
			
		||||
    [[ -n ${depends[@]} ]] && msg2 "depends: %s" "${depends[*]}"
 | 
			
		||||
 | 
			
		||||
    if [[ -d $dest ]];then
 | 
			
		||||
        cd ${tree_dir_artix}/$git_tree_artix
 | 
			
		||||
 | 
			
		||||
        source $dest/PKGBUILD 2>/dev/null
 | 
			
		||||
        cd ${tree_dir_artix}/$artixtree
 | 
			
		||||
        local artixver=$(get_full_version $pkg)
 | 
			
		||||
 | 
			
		||||
        msg2 "Artix Version: %s" "$artixver"
 | 
			
		||||
        if [ $(vercmp $artixver $archver) -lt 0 ];then
 | 
			
		||||
            info "Importing from archlinux (%s)" "$archtree"
 | 
			
		||||
            rsync "${rsync_args[@]}" $src/ $dest/
 | 
			
		||||
            patch_pkg "$pkg" "$tree"
 | 
			
		||||
        else
 | 
			
		||||
            warning "Versions match! Nothing to do!"
 | 
			
		||||
        fi
 | 
			
		||||
        info "Update from archlinux (%s)" "$git_tree_arch"
 | 
			
		||||
        rsync "${rsync_args[@]}" $src/ $dest/
 | 
			
		||||
        patch_pkg "$pkg" "$tree"
 | 
			
		||||
    else
 | 
			
		||||
        cd ${tree_dir_artix}/$artixtree
 | 
			
		||||
        info "Importing from archlinux (%s)" "$archtree"
 | 
			
		||||
        [[ $git_tree_arch == 'packages' ]] && git_tree_artix=$git_tree_arch
 | 
			
		||||
        [[ $git_tree_arch == 'community' ]] && git_tree_artix='packages-galaxy'
 | 
			
		||||
 | 
			
		||||
        cd ${tree_dir_artix}/$git_tree_artix
 | 
			
		||||
 | 
			
		||||
        dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk
 | 
			
		||||
        mkdir $pkg
 | 
			
		||||
 | 
			
		||||
        info "Import from archlinux (%s)" "$git_tree_arch"
 | 
			
		||||
        rsync "${rsync_args[@]}" $src/ $dest/
 | 
			
		||||
        patch_pkg "$pkg" "$tree"
 | 
			
		||||
    fi
 | 
			
		||||
@@ -198,8 +188,7 @@ display_settings(){
 | 
			
		||||
    msg2 "upgrades: %s" "${upgrades}"
 | 
			
		||||
    msg2 "downgrades: %s" "${downgrades}"
 | 
			
		||||
    msg2 "artix: %s" "${artix}"
 | 
			
		||||
    msg2 "import_packages: %s" "${import_packages}"
 | 
			
		||||
    msg2 "import_community: %s" "${import_community}"
 | 
			
		||||
    msg2 "import: %s" "${import}"
 | 
			
		||||
 | 
			
		||||
    msg "PATHS:"
 | 
			
		||||
    msg2 "tree_dir_artix: %s" "${tree_dir_artix}"
 | 
			
		||||
@@ -218,13 +207,9 @@ compare=false
 | 
			
		||||
upgrades=true
 | 
			
		||||
downgrades=false
 | 
			
		||||
artix=false
 | 
			
		||||
import_packages=false
 | 
			
		||||
import_community=false
 | 
			
		||||
import=false
 | 
			
		||||
package=''
 | 
			
		||||
 | 
			
		||||
git_artix='packages'
 | 
			
		||||
git_arch='packages'
 | 
			
		||||
 | 
			
		||||
rsync_args=(-aWxvci --progress --delete-before --no-R --no-implied-dirs)
 | 
			
		||||
 | 
			
		||||
usage() {
 | 
			
		||||
@@ -235,8 +220,7 @@ usage() {
 | 
			
		||||
    echo '    -u            Show upgrade packages'
 | 
			
		||||
    echo '    -d            Show downgrade packages'
 | 
			
		||||
    echo '    -a            Show artix specific packages'
 | 
			
		||||
    echo '    -i            Import from arch packages'
 | 
			
		||||
    echo '    -j            Import from arch community'
 | 
			
		||||
    echo '    -i            Import a package from arch'
 | 
			
		||||
    echo '    -q            Query settings'
 | 
			
		||||
    echo '    -h            This help'
 | 
			
		||||
    echo ''
 | 
			
		||||
@@ -246,7 +230,7 @@ usage() {
 | 
			
		||||
 | 
			
		||||
orig_argv=("$0" "$@")
 | 
			
		||||
 | 
			
		||||
opts='p:csudaijqh'
 | 
			
		||||
opts='p:csudaiqh'
 | 
			
		||||
 | 
			
		||||
while getopts "${opts}" arg; do
 | 
			
		||||
    case "${arg}" in
 | 
			
		||||
@@ -256,8 +240,7 @@ while getopts "${opts}" arg; do
 | 
			
		||||
        u) upgrades=false ;;
 | 
			
		||||
        d) downgrades=true ;;
 | 
			
		||||
        a) artix=true ;;
 | 
			
		||||
        i) import_packages=true ;;
 | 
			
		||||
        j) import_community=true; git_artix='packages-galaxy'; git_arch='community' ;;
 | 
			
		||||
        i) import=true ;;
 | 
			
		||||
        q) pretend=true ;;
 | 
			
		||||
        h|?) usage 0 ;;
 | 
			
		||||
        *) echo "invalid argument '${arg}'"; usage 1 ;;
 | 
			
		||||
@@ -277,6 +260,4 @@ ${compare} && show_version_table
 | 
			
		||||
 | 
			
		||||
${artix} && show_artix_table
 | 
			
		||||
 | 
			
		||||
${import_packages} && from_arch "${package}" "${git_arch}" "${git_artix}"
 | 
			
		||||
 | 
			
		||||
${import_community} && from_arch "${package}" "${git_arch}" "${git_artix}"
 | 
			
		||||
${import} && from_arch "${package}"
 | 
			
		||||
 
 | 
			
		||||
@@ -11,6 +11,8 @@
 | 
			
		||||
 | 
			
		||||
version=@version@
 | 
			
		||||
 | 
			
		||||
chroot_version=@chroot_version@
 | 
			
		||||
 | 
			
		||||
LIBDIR='@libdir@'
 | 
			
		||||
 | 
			
		||||
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
 | 
			
		||||
@@ -92,6 +94,7 @@ copy_hostconf () {
 | 
			
		||||
 | 
			
		||||
chroot_extra_mount() {
 | 
			
		||||
    chroot_mount "/etc/resolv.conf" "$1/etc/resolv.conf" -B
 | 
			
		||||
    chroot_mount "/etc/hosts" "$1/etc/hosts" -B
 | 
			
		||||
    chroot_mount_conditional "[[ -e $1/etc/machine-id ]]" "/etc/machine-id" "$1/etc/machine-id" -B
 | 
			
		||||
    chroot_mount "${cache_dirs[0]}" "$1${cache_dirs[0]}" -B
 | 
			
		||||
 | 
			
		||||
@@ -113,8 +116,8 @@ umask 0022
 | 
			
		||||
# Sanity check
 | 
			
		||||
if [[ ! -f "$working_dir/.artools" ]]; then
 | 
			
		||||
    die "'%s' does not appear to be an artix chroot." "$working_dir"
 | 
			
		||||
elif [[ $(cat "$working_dir/.artools") != $version ]]; then
 | 
			
		||||
    die "chroot '%s' is not at version %s. Please rebuild." "$working_dir" "$version"
 | 
			
		||||
elif [[ $(cat "$working_dir/.artools") != $chroot_version ]]; then
 | 
			
		||||
    die "chroot '%s' is not at version %s. Please rebuild." "$working_dir" "$chroot_version"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
chroot_api_mount "${working_dir}" || die "failed to setup API filesystems in chroot %s" "${working_dir}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										117
									
								
								bin/commitpkg.in
									
									
									
									
									
								
							
							
						
						
									
										117
									
								
								bin/commitpkg.in
									
									
									
									
									
								
							@@ -17,59 +17,83 @@ DATADIR='@datadir@'
 | 
			
		||||
 | 
			
		||||
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
 | 
			
		||||
import ${LIBDIR}/util.sh
 | 
			
		||||
import ${LIBDIR}/util-pkg.sh
 | 
			
		||||
 | 
			
		||||
commit_pkg(){
 | 
			
		||||
    cd ${tree_dir_artix}/${git_tree}/${package}
 | 
			
		||||
    source trunk/PKGBUILD
 | 
			
		||||
    local ver=$(get_full_version ${package})
 | 
			
		||||
    if ${remove};then
 | 
			
		||||
        local action='remove'
 | 
			
		||||
        local pkg=${package}-$ver
 | 
			
		||||
        if [[ "${source_repo}" == 'trunk' ]];then
 | 
			
		||||
            pkg=${package}
 | 
			
		||||
            info "[%s] '%s' %s" "${source_repo}" "$pkg" "${action}"
 | 
			
		||||
            git rm -r trunk
 | 
			
		||||
    local git_tree=$(find_tree "${tree_dir_artix}" "${package}")
 | 
			
		||||
    if [[ -n ${git_tree} ]];then
 | 
			
		||||
        cd ${tree_dir_artix}/${git_tree}/${package}
 | 
			
		||||
 | 
			
		||||
        source trunk/PKGBUILD
 | 
			
		||||
        [[ $arch == 'any' ]] && CARCH=any
 | 
			
		||||
        local ver=$(get_full_version "${package}")
 | 
			
		||||
 | 
			
		||||
        if ${remove};then
 | 
			
		||||
            local action='remove'
 | 
			
		||||
            if [[ "${source_repo}" == 'trunk' ]];then
 | 
			
		||||
                local pkg=${package}
 | 
			
		||||
                git rm -r trunk
 | 
			
		||||
            else
 | 
			
		||||
                local pkg=${package}-$ver
 | 
			
		||||
                git rm -r repos/${source_repo}-$CARCH
 | 
			
		||||
            fi
 | 
			
		||||
            msg "Action: [%s] '%s' %s" "${source_repo}" "$pkg" "${action}"
 | 
			
		||||
            git commit -m "[${source_repo}] '$pkg' ${action}"
 | 
			
		||||
        else
 | 
			
		||||
            info "[%s] '%s' %s" "${source_repo}" "$pkg" "${action}"
 | 
			
		||||
            git rm -r repos/${source_repo}-$CARCH
 | 
			
		||||
            local action='modify'
 | 
			
		||||
            msg "Action: [%s] '%s' %s" "${source_repo}" "${package}-$ver" "${action}"
 | 
			
		||||
            git add .
 | 
			
		||||
            git commit -m "[${source_repo}] '${package}-$ver' ${action}"
 | 
			
		||||
        fi
 | 
			
		||||
 | 
			
		||||
        if ${push};then
 | 
			
		||||
            msg "Checking (%s)" "${git_tree}"
 | 
			
		||||
            git pull origin master
 | 
			
		||||
            git push origin master
 | 
			
		||||
        fi
 | 
			
		||||
        git commit -m "[${source_repo}] '$pkg' ${action}"
 | 
			
		||||
        ${push} && git push origin master
 | 
			
		||||
    else
 | 
			
		||||
        local action='modify'
 | 
			
		||||
        info "[%s] '%s' %s" "${source_repo}" "${package}-$ver" "${action}"
 | 
			
		||||
        git add .
 | 
			
		||||
        git commit -m "[${source_repo}] '${package}-$ver' ${action}"
 | 
			
		||||
        ${push} && git push origin master
 | 
			
		||||
        error "Package '%s' does not exist!" "${package}"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
release_pkg(){
 | 
			
		||||
    if [[ -d ${tree_dir_artix}/${git_tree}/${package} ]];then
 | 
			
		||||
symlink_commit_pkg(){
 | 
			
		||||
    local git_tree=$(find_tree "${tree_dir_artix}" "${package}")
 | 
			
		||||
    if [[ -n ${git_tree} ]];then
 | 
			
		||||
        cd ${tree_dir_artix}/${git_tree}/${package}
 | 
			
		||||
 | 
			
		||||
        source trunk/PKGBUILD
 | 
			
		||||
        [[ $arch == 'any' ]] && CARCH=any
 | 
			
		||||
        if [[ ${source_repo} != 'trunk' ]];then
 | 
			
		||||
            cd repos
 | 
			
		||||
            dest=${target_repo}-$CARCH
 | 
			
		||||
            action='move'
 | 
			
		||||
            [[ -d $dest ]] && git rm -r $dest
 | 
			
		||||
            git mv ${source_repo}-$CARCH $dest
 | 
			
		||||
            cd ..
 | 
			
		||||
        else
 | 
			
		||||
            dest=${target_repo}-$CARCH
 | 
			
		||||
            action='add'
 | 
			
		||||
            [[ ! -d repos ]] && mkdir repos
 | 
			
		||||
            cd repos
 | 
			
		||||
        local ver=$(get_full_version "${package}")
 | 
			
		||||
 | 
			
		||||
        if [[ ${source_repo} == 'trunk' ]];then
 | 
			
		||||
            local action='add'
 | 
			
		||||
            local dest=${target_repo}-$CARCH
 | 
			
		||||
 | 
			
		||||
            [[ -d repos/$dest ]] && git rm -r repos/$dest
 | 
			
		||||
            cd ..
 | 
			
		||||
            [[ ! -d repos ]] && mkdir repos
 | 
			
		||||
 | 
			
		||||
            cp -r trunk repos/$dest
 | 
			
		||||
        else
 | 
			
		||||
            local action='move'
 | 
			
		||||
            local dest=${target_repo}-$CARCH
 | 
			
		||||
 | 
			
		||||
            cd repos
 | 
			
		||||
                [[ -d $dest ]] && git rm -r $dest
 | 
			
		||||
                git mv ${source_repo}-$CARCH $dest
 | 
			
		||||
            cd ..
 | 
			
		||||
        fi
 | 
			
		||||
        local ver=$(get_full_version ${package})
 | 
			
		||||
        info "[%s] -> [%s] '%s' %s" "${source_repo}" "${target_repo}" "${package}-$ver" "${action}"
 | 
			
		||||
 | 
			
		||||
        msg "Action: [%s] -> [%s] '%s' %s" "${source_repo}" "${target_repo}" "${package}-$ver" "${action}"
 | 
			
		||||
        git add .
 | 
			
		||||
        git commit -m "[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}"
 | 
			
		||||
        ${push} && git push origin master
 | 
			
		||||
 | 
			
		||||
        if ${push};then
 | 
			
		||||
            msg "Checking (%s)" "${git_tree}"
 | 
			
		||||
            git pull origin master
 | 
			
		||||
            git push origin master
 | 
			
		||||
        fi
 | 
			
		||||
    else
 | 
			
		||||
        error "Package '%s' does not exist!" "${package}"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -78,7 +102,6 @@ display_settings(){
 | 
			
		||||
    show_config
 | 
			
		||||
 | 
			
		||||
    msg "OPTIONS:"
 | 
			
		||||
    msg2 "git_tree: %s" "${git_tree}"
 | 
			
		||||
    msg2 "source_repo: %s" "${source_repo}"
 | 
			
		||||
    msg2 "target_repo: %s" "${target_repo}"
 | 
			
		||||
    msg2 "package: %s" "${package}"
 | 
			
		||||
@@ -100,20 +123,14 @@ remove=false
 | 
			
		||||
push=false
 | 
			
		||||
pretend=false
 | 
			
		||||
 | 
			
		||||
git_tree='packages'
 | 
			
		||||
 | 
			
		||||
cmd=${0##*/}
 | 
			
		||||
target_repo=${cmd%pkg}
 | 
			
		||||
 | 
			
		||||
case ${target_repo} in
 | 
			
		||||
    community*|multilib*) git_tree='packages-galaxy' ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
usage() {
 | 
			
		||||
    echo "Usage: ${0##*/} [options]"
 | 
			
		||||
    echo "    -s <name>          Source repository [default:${source_repo}]"
 | 
			
		||||
    echo '    -p <pkg>           Package name'
 | 
			
		||||
    echo '    -r                 Delete from repo'
 | 
			
		||||
    echo '    -r                 Delete from repo (commitpkg only)'
 | 
			
		||||
    echo '    -u                 Push'
 | 
			
		||||
    echo '    -q                 Query settings and pretend'
 | 
			
		||||
    echo '    -h                 This help'
 | 
			
		||||
@@ -142,8 +159,12 @@ shift $(($OPTIND - 1))
 | 
			
		||||
 | 
			
		||||
${pretend} && display_settings && exit 1
 | 
			
		||||
 | 
			
		||||
if [[ "${cmd}" == 'commitpkg' ]];then
 | 
			
		||||
    commit_pkg
 | 
			
		||||
if $(is_valid_repo "${source_repo}");then
 | 
			
		||||
    if [[ "${cmd}" == 'commitpkg' ]];then
 | 
			
		||||
        commit_pkg
 | 
			
		||||
    else
 | 
			
		||||
        symlink_commit_pkg
 | 
			
		||||
    fi
 | 
			
		||||
else
 | 
			
		||||
    release_pkg
 | 
			
		||||
    error "source repository '%s' is not valid!" "${source_repo}"
 | 
			
		||||
fi
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,8 @@ del_from_repo(){
 | 
			
		||||
        if pkgfile=$(find_cached_package "$name" "$ver" "$CARCH");then
 | 
			
		||||
            info "pkgfile: %s" "${pkgfile##*/}"
 | 
			
		||||
            repo-remove -R $repo_path/$repo.db.tar.xz $name
 | 
			
		||||
            [[ -f $repo_path/${pkgfile##*/}{,.sig} ]] && rm -v $repo_path/${pkgfile##*/}{,.sig}
 | 
			
		||||
            [[ -e $repo_path/${pkgfile##*/} ]] && rm -v $repo_path/${pkgfile##*/}
 | 
			
		||||
            [[ -e $repo_path/${pkgfile##*/}.sig ]] && rm -v $repo_path/${pkgfile##*/}.sig
 | 
			
		||||
        fi
 | 
			
		||||
    done
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -11,6 +11,8 @@
 | 
			
		||||
 | 
			
		||||
version=@version@
 | 
			
		||||
 | 
			
		||||
chroot_version=@chroot_version@
 | 
			
		||||
 | 
			
		||||
LIBDIR='@libdir@'
 | 
			
		||||
 | 
			
		||||
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
 | 
			
		||||
@@ -104,7 +106,7 @@ done < <(declare -x | sed -r 's/^declare -x ([^=]*)=.*/\1/' | grep -i '_proxy$')
 | 
			
		||||
env -i "${_env[@]}" \
 | 
			
		||||
basestrap "${basestrap_args[@]}" "$working_dir" ${cache_dirs[@]/#/--cachedir=} "$@" || die 'Failed to install all packages'
 | 
			
		||||
 | 
			
		||||
echo "$version" > "$working_dir/.artools"
 | 
			
		||||
echo "$chroot_version" > "$working_dir/.artools"
 | 
			
		||||
 | 
			
		||||
default_locale "set" "$working_dir"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -202,11 +202,15 @@ _chrootbuild() {
 | 
			
		||||
    # No coredumps
 | 
			
		||||
    ulimit -c 0
 | 
			
		||||
 | 
			
		||||
    exec </dev/console
 | 
			
		||||
    # Work around chroot-run not giving a ctty
 | 
			
		||||
    # exec </dev/console
 | 
			
		||||
 | 
			
		||||
    . /etc/profile
 | 
			
		||||
 | 
			
		||||
    export LANG=en_US.UTF-8
 | 
			
		||||
 | 
			
		||||
    # workaround meson locale errors
 | 
			
		||||
    # supposedly fixed with coming python-3.7
 | 
			
		||||
    locale-gen &> /dev/null
 | 
			
		||||
 | 
			
		||||
    sudo --preserve-env=SOURCE_DATE_EPOCH -iu builduser bash -c 'cd /startdir; makepkg "$@"' -bash "$@"
 | 
			
		||||
 
 | 
			
		||||
@@ -33,7 +33,7 @@
 | 
			
		||||
# initsys="openrc"
 | 
			
		||||
 | 
			
		||||
# unset defaults to given value
 | 
			
		||||
# kernel="linux-lts"
 | 
			
		||||
# kernel="linux"
 | 
			
		||||
 | 
			
		||||
# custom additional kernel args
 | 
			
		||||
# kernel_args=""
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										56
									
								
								data/missing
									
									
									
									
									
								
							
							
						
						
									
										56
									
								
								data/missing
									
									
									
									
									
								
							@@ -1,20 +1,46 @@
 | 
			
		||||
extra/python-crypto
 | 
			
		||||
extra/python-nose
 | 
			
		||||
extra/python-requests
 | 
			
		||||
extra/python-urllib3
 | 
			
		||||
 | 
			
		||||
extra/pygobject2-devel
 | 
			
		||||
extra/python2-gobject2
 | 
			
		||||
 | 
			
		||||
extra/perl-locale-gettext
 | 
			
		||||
extra/help2man
 | 
			
		||||
extra/autogen
 | 
			
		||||
extra/libmp4v2
 | 
			
		||||
extra/libmpdclient
 | 
			
		||||
extra/audiofile
 | 
			
		||||
extra/libid3tag
 | 
			
		||||
extra/idnkit
 | 
			
		||||
extra/neon
 | 
			
		||||
extra/sbc
 | 
			
		||||
extra/enchant
 | 
			
		||||
extra/chromaprint
 | 
			
		||||
extra/ttf-liberation
 | 
			
		||||
extra/pygobject2-devel
 | 
			
		||||
extra/python2-gobject2
 | 
			
		||||
extra/faac
 | 
			
		||||
extra/mjpegtools
 | 
			
		||||
extra/mpg123
 | 
			
		||||
extra/tinycdb
 | 
			
		||||
 | 
			
		||||
extra/speexdsp
 | 
			
		||||
extra/spandsp
 | 
			
		||||
extra/soundtouch
 | 
			
		||||
extra/sbc
 | 
			
		||||
extra/neon
 | 
			
		||||
extra/mjpegtools
 | 
			
		||||
extra/libmp4v2
 | 
			
		||||
extra/js
 | 
			
		||||
extra/gst-plugins-bad
 | 
			
		||||
extra/faac
 | 
			
		||||
extra/enchant
 | 
			
		||||
extra/chromaprint
 | 
			
		||||
extra/python-appdirs
 | 
			
		||||
extra/python-beaker
 | 
			
		||||
extra/python-mako
 | 
			
		||||
extra/python-markupsafe
 | 
			
		||||
extra/python-packaging
 | 
			
		||||
extra/python-pyparsing
 | 
			
		||||
extra/ttf-liberation
 | 
			
		||||
 | 
			
		||||
extra/appstream-glib
 | 
			
		||||
extra/opencl-headers
 | 
			
		||||
 | 
			
		||||
# openrc-world deps
 | 
			
		||||
extra/dnsmasq
 | 
			
		||||
extra/postgresql-libs
 | 
			
		||||
extra/postfix
 | 
			
		||||
extra/wicd
 | 
			
		||||
extra/mpd
 | 
			
		||||
extra/bitlbee
 | 
			
		||||
extra/bind
 | 
			
		||||
extra/lirc
 | 
			
		||||
extra/transmission-cli
 | 
			
		||||
 
 | 
			
		||||
@@ -28,18 +28,11 @@ qt5-remoteobjects
 | 
			
		||||
qt5-webchannel
 | 
			
		||||
qt5-websockets
 | 
			
		||||
qt5-webglplugin
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
qt5-tools
 | 
			
		||||
qt5-translations
 | 
			
		||||
qt5-doc
 | 
			
		||||
qt5-examples
 | 
			
		||||
 | 
			
		||||
qt5-webengine
 | 
			
		||||
qt5-webview
 | 
			
		||||
 | 
			
		||||
qt5-webkit
 | 
			
		||||
 | 
			
		||||
python2-pyqt5
 | 
			
		||||
python-pyqt5
 | 
			
		||||
pyqt5-common
 | 
			
		||||
pyqt5
 | 
			
		||||
 
 | 
			
		||||
@@ -71,6 +71,36 @@ patch_pkg(){
 | 
			
		||||
    esac
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
find_tree(){
 | 
			
		||||
    local tree="$1" pkg="$2"
 | 
			
		||||
    local result=$(find $tree -mindepth 2 -maxdepth 2 -type d -name "$pkg")
 | 
			
		||||
    result=${result%/*}
 | 
			
		||||
    echo ${result##*/}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
clone_tree(){
 | 
			
		||||
    local timer=$(get_timer) host_tree="$1"
 | 
			
		||||
    git clone $host_tree.git
 | 
			
		||||
    show_elapsed_time "${FUNCNAME}" "${timer}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pull_tree(){
 | 
			
		||||
    local branch="master"
 | 
			
		||||
    local local_head=$(get_local_head "$branch")
 | 
			
		||||
    local remote_head=$(get_remote_head "$branch")
 | 
			
		||||
    if [[ "${local_head}" == "${remote_head}" ]]; then
 | 
			
		||||
        msg2 "remote changes: no"
 | 
			
		||||
    else
 | 
			
		||||
        msg2 "remote changes: yes"
 | 
			
		||||
        git pull origin "$branch"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
push_tree(){
 | 
			
		||||
    local branch="master"
 | 
			
		||||
    git push origin "$branch"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
get_import_path(){
 | 
			
		||||
    local tree="$1" import_path=
 | 
			
		||||
    case $tree in
 | 
			
		||||
@@ -80,6 +110,14 @@ get_import_path(){
 | 
			
		||||
    echo $import_path
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
is_valid_repo(){
 | 
			
		||||
    local src="$1"
 | 
			
		||||
    case $src in
 | 
			
		||||
        core|extra|community|multilib|testing|staging|community-testing|community-staging|multilib-testing|multilib-staging|trunk) return 0 ;;
 | 
			
		||||
        *) return 1 ;;
 | 
			
		||||
    esac
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
find_repo(){
 | 
			
		||||
    local pkg="$1" repo=
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -95,7 +95,7 @@ init_artools_iso(){
 | 
			
		||||
 | 
			
		||||
    [[ -z ${initsys} ]] && initsys="openrc"
 | 
			
		||||
 | 
			
		||||
    [[ -z ${kernel} ]] && kernel="linux-lts"
 | 
			
		||||
    [[ -z ${kernel} ]] && kernel="linux"
 | 
			
		||||
 | 
			
		||||
    [[ -z ${kernel_args} ]] && kernel_args=""
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user