Merge pull request 'updated some funcs in pm' (#1) from update into main

Reviewed-on: https://gitea.home.com:3000/TolaMironcenko/pm/pulls/1
This commit was merged in pull request #1.
This commit is contained in:
wt
2024-12-25 17:52:49 +03:00
3 changed files with 26 additions and 6 deletions
+3
View File
@@ -0,0 +1,3 @@
pm.pkg
pm.pkg.gz
rootfs
+11 -1
View File
@@ -11,6 +11,7 @@ install:
fi
if [ ! -d ${DESTDIR}/usr/bin ]; then \
mkdir -pv ${DESTDIR}/usr/bin; \
cp -v src/pm ${DESTDIR}/usr/bin/pm; \
fi
if [ ! -d ${DESTDIR}/usr/share/pm ]; then \
mkdir -pv ${DESTDIR}/usr/share/pm/{packages,repos}; \
@@ -32,4 +33,13 @@ uninstall:
fi
if [ -f ${DESTDIR}/usr/bin/pm ]; then \
rm -v ${DESTDIR}/usr/bin/pm; \
fi
fi
package:
mkdir -pv pm.pkg/usr/bin
mkdir -pv pm.pkg/etc/pm
mkdir -pv pm.pkg/var/cache/pm/pkg
mkdir -pv pm.pkg/usr/share/pm/{repos,packages}
echo usr/bin/pm > pm.pkg/list
cp -v src/pm pm.pkg/usr/bin/pm
tar -czvf pm.pkg.gz pm.pkg
+12 -5
View File
@@ -12,7 +12,7 @@
## ## ##
#---------------- variables --------------------------
rootdir=/home/tola/Documents/linux/pm/rootfs
export rootdir=/
repofile=$rootdir/etc/pm/repo
packagesqueryfile=$rootdir/usr/share/pm/query
reposquerydir=$rootdir/usr/share/pm/repos
@@ -108,15 +108,19 @@ unpack() {
packagename=${packagename#*pkg/}
printf "$YELLOW**$GREEN Installing ${packagename%.pkg*}\n$RESET"
if [[ "$(/usr/bin/cat $packagesqueryfile | grep ${packagename%.pkg*})" != "" ]]; then
printf "$YELLOW**$RESET Package already installed:$YELLOW reinstalling\n"
printf "$YELLOW**$RESET Package already installed:$YELLOW reinstalling\n$RESET"
fi
tar -xvf $1 -C $rootdir/tmp &> /dev/null
cd $rootdir/tmp/$packagename
mkdir $installedpackagesdir/$packagename &> /dev/null
mv -v list $installedpackagesdir/$packagename &> /dev/null
cp -rv ./* $rootdir &> /dev/null
cp -r ./* $rootdir/
if [ -f $rootdir/post_install ]; then
rm $rootdir/post_install
fi
printf "$YELLOW**$GREEN post_install script ${packagename%.pkg*}\n$RESET"
if [ -f $rootdir/tmp/$packagename/post_install ]; then
sh -c $rootdir/tmp/$packagename/post_install
/usr/bin/sh -c $rootdir/tmp/$packagename/post_install &> /dev/null
fi
if [[ "$(/usr/bin/cat $packagesqueryfile | grep ${packagename%.pkg*})" == "" ]]; then
echo ${packagename%.pkg*} >> $packagesqueryfile
@@ -138,7 +142,10 @@ del() {
printf "$YELLOW**$BRED error:$RESET package not installed\n"
exit 0
fi
rm -v $rootdir/$(/usr/bin/cat $installedpackagesdir/$i.pkg/list) &> /dev/null
for file in $(/usr/bin/cat $installedpackagesdir/$i.pkg/list); do
rm -v $rootdir/$file
done
# rm -v $rootdir/$(/usr/bin/cat $installedpackagesdir/$i.pkg/list)
rm -rv $installedpackagesdir/$i.pkg &> /dev/null
sed -i "/$i/d" $packagesqueryfile
printf "$YELLOW**$GREEN delete $i successful\n$RESET"