forked from artix/artools
		
	Compare commits
	
		
			13 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 4363421ce8 | ||
|   | 4b96a54347 | ||
|   | 0ad953ead8 | ||
|   | 45ebe43272 | ||
|   | 1c64fe7f69 | ||
|   | c2a030b016 | ||
|   | 94670e18e7 | ||
|   | 5c835b6e2c | ||
|   | 3f803be6b8 | ||
|   | 70b81d7ff8 | ||
|   | 12a34bd5a2 | ||
|   | 11504d3267 | ||
|   | 203df20e76 | 
							
								
								
									
										3
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								Makefile
									
									
									
									
									
								
							| @@ -35,7 +35,8 @@ BIN_PKG = \ | ||||
| 	bin/buildpkg \ | ||||
| 	bin/buildtree \ | ||||
| 	bin/deploypkg \ | ||||
| 	bin/commitpkg | ||||
| 	bin/commitpkg \ | ||||
| 	bin/mkpkgclean | ||||
|  | ||||
| LIBS_PKG = \ | ||||
| 	$(wildcard lib/util-pkg*.sh) | ||||
|   | ||||
| @@ -55,15 +55,15 @@ show_version_table(){ | ||||
|     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 | ||||
|             local artixrepo=$(find_repo "$pkg_path") | ||||
|             local artixrepo=$(find_repo "$pkg_path" "${unstable}") | ||||
|             if [[ -d $pkg_path/repos/$artixrepo ]];then | ||||
|                 source $pkg_path/trunk/PKGBUILD 2>/dev/null | ||||
|                 source $pkg_path/repos/$artixrepo/PKGBUILD 2>/dev/null | ||||
|                 local pkg=${pkg_path##*/} | ||||
|                 local artixver=$(get_full_version $pkg) | ||||
|                 local src=$(get_import_path "$tree" "$pkg") | ||||
|                 local archrepo=$(find_repo "$src/$pkg") | ||||
|                 local archrepo=$(find_repo "$src/$pkg" "${unstable}") | ||||
|                 if [[ -d $src/$pkg/repos/$archrepo ]];then | ||||
|                     source $src/$pkg/trunk/PKGBUILD 2>/dev/null | ||||
|                     source $src/$pkg/repos/$archrepo/PKGBUILD 2>/dev/null | ||||
|                     local archver=$(get_full_version $pkg) | ||||
|                 fi | ||||
|                 if [ $(vercmp $artixver $archver) -lt 0 ];then | ||||
| @@ -87,19 +87,18 @@ show_artix_table(){ | ||||
|     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 | ||||
|             local artixrepo=$(find_repo "$pkg_path") | ||||
|             local artixrepo=$(find_repo "$pkg_path" "${unstable}") | ||||
|             if [[ -d $pkg_path/repos/$artixrepo ]];then | ||||
|                 source $pkg_path/repos/$artixrepo/PKGBUILD 2>/dev/null | ||||
|                 local pkg=${pkg_path##*/} | ||||
|                 local artixver=$(get_full_version $pkg) | ||||
|                 local src=$(get_import_path "$tree" "$pkg") | ||||
|                 local archrepo=$(find_repo "$src/$pkg") | ||||
|                 local archrepo=$(find_repo "$src/$pkg" "${unstable}") | ||||
|                 if [[ -d $src/$pkg/repos/$archrepo ]];then | ||||
|                     source $src/$pkg/repos/$archrepo/PKGBUILD 2>/dev/null | ||||
|                     local archver=$(get_full_version $pkg) | ||||
|                 fi | ||||
|                 if [ $(vercmp $artixver $archver) -eq 0 ] || [ $(vercmp $artixver $archver) -gt 0 ];then | ||||
|  | ||||
|                     local ar=$(arch_to_artix_repo "$artixrepo") | ||||
|                     case $ar in | ||||
|                         *goblins) | ||||
| @@ -125,6 +124,21 @@ show_artix_table(){ | ||||
|     done | ||||
| } | ||||
|  | ||||
| show_deps(){ | ||||
|     local src="$1" | ||||
|     source $src/PKGBUILD 2>/dev/null | ||||
|     [[ $arch == 'any' ]] && CARCH=any | ||||
|     local archver=$(get_full_version $pkg) | ||||
|     msg "git tree: %s" "$git_tree_arch" | ||||
|     msg2 "Package Name: %s" "$pkg" | ||||
|     msg2 "Arch Version: %s" "$archver" | ||||
|     msg2 "arch: %s" "$CARCH" | ||||
|     [[ -n ${makedepends[@]} ]] && msg2 "makedepends: %s" "${makedepends[*]}" | ||||
|     [[ -n ${checkdepends[@]} ]] && msg2 "checkdepends: %s" "${checkdepends[*]}" | ||||
|     [[ -n ${depends[@]} ]] && msg2 "depends: %s" "${depends[*]}" | ||||
|     [[ -n ${optdepends[@]} ]] && msg2 "optdepends: %s" "${optdepends[@]}" | ||||
| } | ||||
|  | ||||
| from_arch(){ | ||||
|     local pkg="$1" src= dest= | ||||
|     local git_tree_arch=$(find_tree "${tree_dir_arch}" "$pkg") | ||||
| @@ -136,14 +150,7 @@ from_arch(){ | ||||
|  | ||||
|     cd ${tree_dir_arch}/$git_tree_arch | ||||
|  | ||||
|     source $src/PKGBUILD 2>/dev/null | ||||
|     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[*]}" | ||||
|     show_deps "$src" | ||||
|  | ||||
|     if [[ -d $dest ]];then | ||||
|         cd ${tree_dir_artix}/$git_tree_artix | ||||
| @@ -170,6 +177,15 @@ from_arch(){ | ||||
|     fi | ||||
| } | ||||
|  | ||||
| view_build(){ | ||||
|     local pkg="$1" src= | ||||
|     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 | ||||
|  | ||||
|     show_deps "$src" | ||||
| } | ||||
|  | ||||
| sync_repos(){ | ||||
|     ${sync_arch} && pull_tree_arch | ||||
|     pull_tree_artix | ||||
| @@ -190,6 +206,7 @@ display_settings(){ | ||||
|     msg2 "downgrades: %s" "${downgrades}" | ||||
|     msg2 "artix: %s" "${artix}" | ||||
|     msg2 "import: %s" "${import}" | ||||
|     msg2 "view: %s" "${view}" | ||||
|  | ||||
|     msg "PATHS:" | ||||
|     msg2 "tree_dir_artix: %s" "${tree_dir_artix}" | ||||
| @@ -206,10 +223,12 @@ pretend=false | ||||
| sync=false | ||||
| sync_arch=true | ||||
| compare=false | ||||
| unstable=true | ||||
| upgrades=true | ||||
| downgrades=false | ||||
| artix=false | ||||
| import=false | ||||
| view=false | ||||
| package='' | ||||
|  | ||||
| rsync_args=(-aWxvci --progress --delete-before --no-R --no-implied-dirs) | ||||
| @@ -220,10 +239,12 @@ usage() { | ||||
|     echo "    -s            Clone or pull repos" | ||||
|     echo "    -z            Don't clone or pull arch repos" | ||||
|     echo '    -c            Compare packages' | ||||
|     echo '    -x            Compare packages without unstable kde and gnome' | ||||
|     echo '    -u            Show upgrade packages' | ||||
|     echo '    -d            Show downgrade packages' | ||||
|     echo '    -a            Show artix specific packages' | ||||
|     echo '    -i            Import a package from arch' | ||||
|     echo '    -v            View package depends' | ||||
|     echo '    -q            Query settings' | ||||
|     echo '    -h            This help' | ||||
|     echo '' | ||||
| @@ -233,7 +254,7 @@ usage() { | ||||
|  | ||||
| orig_argv=("$0" "$@") | ||||
|  | ||||
| opts='p:csudaizqh' | ||||
| opts='p:csudaizxvqh' | ||||
|  | ||||
| while getopts "${opts}" arg; do | ||||
|     case "${arg}" in | ||||
| @@ -245,6 +266,8 @@ while getopts "${opts}" arg; do | ||||
|         d) downgrades=true ;; | ||||
|         a) artix=true ;; | ||||
|         i) import=true ;; | ||||
|         v) view=true ;; | ||||
|         x) unstable=false ;; | ||||
|         q) pretend=true ;; | ||||
|         h|?) usage 0 ;; | ||||
|         *) echo "invalid argument '${arg}'"; usage 1 ;; | ||||
| @@ -260,6 +283,8 @@ ${pretend} && display_settings && exit 1 | ||||
|  | ||||
| ${sync} && sync_repos | ||||
|  | ||||
| ${view} && view_build "${package}" | ||||
|  | ||||
| ${compare} && show_version_table | ||||
|  | ||||
| ${artix} && show_artix_table | ||||
|   | ||||
| @@ -71,14 +71,16 @@ symlink_commit_pkg(){ | ||||
|  | ||||
|             [[ -d repos/$dest ]] && git rm -r repos/$dest | ||||
|             [[ ! -d repos ]] && mkdir repos | ||||
|             [[ ! -d repos/$dest ]] && mkdir repos/$dest | ||||
|  | ||||
|             cp -r trunk repos/$dest | ||||
|             cp trunk/* repos/$dest/ | ||||
|         else | ||||
|             local action='move' | ||||
|             local dest=${target_repo}-$CARCH | ||||
|  | ||||
|             [[ -d repos/$dest ]] && git rm -r repos/$dest | ||||
|             [[ ! -d repos ]] && mkdir repos | ||||
|             cd repos | ||||
|                 [[ -d $dest ]] && git rm -r $dest | ||||
|                 git mv ${source_repo}-$CARCH $dest | ||||
|             cd .. | ||||
|         fi | ||||
|   | ||||
| @@ -50,7 +50,8 @@ add_to_repo(){ | ||||
|                 signfile ${pkgfile} | ||||
|             fi | ||||
|             ln -sf ${pkgfile}{,.sig} $repo_path/ | ||||
|             repo-add -R $repo_path/$repo.db.tar.xz $pkgfile | ||||
|             cd $repo_path | ||||
|             repo-add -R $repo.db.tar.xz ${pkgfile##*/} | ||||
|         fi | ||||
|     done | ||||
| } | ||||
|   | ||||
| @@ -235,9 +235,11 @@ download_sources() { | ||||
|     local builddir | ||||
|     builddir="$(mktemp -d)" | ||||
|     chmod 1777 "$builddir" | ||||
| #     chown "$makepkg_user:$makepkg_user" "$builddir" | ||||
|  | ||||
|     # Ensure sources are downloaded | ||||
|     sudo -u "$makepkg_user" env SRCDEST="$SRCDEST" BUILDDIR="$builddir" \ | ||||
|     sudo -u "$makepkg_user" --preserve-env=GNUPGHOME \ | ||||
|         env SRCDEST="$SRCDEST" BUILDDIR="$builddir" \ | ||||
|         makepkg --config="$copydir/etc/makepkg.conf" --verifysource -o || | ||||
|         die "Could not download sources." | ||||
|  | ||||
| @@ -329,7 +331,7 @@ main() { | ||||
|     [[ -n $makepkg_user && -z $(id -u "$makepkg_user") ]] && die 'Invalid makepkg user.' | ||||
|     makepkg_user=${makepkg_user:-${SUDO_USER:-$USER}} | ||||
|  | ||||
|     check_root | ||||
|     check_root SOURCE_DATE_EPOCH,GNUPGHOME | ||||
|  | ||||
|     # Canonicalize chrootdir, getting rid of trailing / | ||||
|     chrootdir=$(readlink -e "$passeddir") | ||||
|   | ||||
							
								
								
									
										93
									
								
								bin/mkpkgclean.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								bin/mkpkgclean.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,93 @@ | ||||
| #!/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[@]}" | ||||
| @@ -68,6 +68,11 @@ patch_pkg(){ | ||||
|                 updpkgsums | ||||
|             cd ../.. | ||||
|         ;; | ||||
|         gstreamer|gst-plugins-*) | ||||
|             sed -e 's|https://www.archlinux.org/|https://www.artixlinux.org/|' \ | ||||
|                 -e 's|(Arch Linux)|(Artix Linux)|' \ | ||||
|                 -i $pkg/trunk/PKGBUILD | ||||
|         ;; | ||||
|     esac | ||||
| } | ||||
|  | ||||
| @@ -119,7 +124,7 @@ is_valid_repo(){ | ||||
| } | ||||
|  | ||||
| find_repo(){ | ||||
|     local pkg="$1" repo= | ||||
|     local pkg="$1" unstable="${2:-true}" repo= | ||||
|  | ||||
|     if [[ -d $pkg/repos/core-x86_64 ]];then | ||||
|         repo=core-x86_64 | ||||
| @@ -175,6 +180,7 @@ find_repo(){ | ||||
|         repo=multilib-staging-x86_64 | ||||
|     fi | ||||
|  | ||||
|     if $unstable;then | ||||
|         if [[ -d $pkg/repos/gnome-unstable-x86_64 ]];then | ||||
|             repo=gnome-unstable-x86_64 | ||||
|         elif [[ -d $pkg/repos/gnome-unstable-any ]];then | ||||
| @@ -186,7 +192,7 @@ find_repo(){ | ||||
|         elif [[ -d $pkg/repos/kde-unstable-any ]];then | ||||
|             repo=kde-unstable-any | ||||
|         fi | ||||
|  | ||||
|     fi | ||||
|     echo $repo | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user