summaryrefslogtreecommitdiff
path: root/src/frontend/cli
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-06-24 21:55:37 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-06-24 21:55:37 +0100
commitf7e54cc8a29e5fa319ce21d6ec268e210397740a (patch)
tree5078d7a5f7f2393aa3b5068d980b0d3598bff878 /src/frontend/cli
parent2faa4c83dbaca3958feb092c9776f016a0133e8f (diff)
write a proper Makefile, rearrange source code a bit
Diffstat (limited to 'src/frontend/cli')
-rwxr-xr-xsrc/frontend/cli/sisyphus-cli.py33
-rwxr-xr-xsrc/frontend/cli/sisyphus-cli.sh116
2 files changed, 149 insertions, 0 deletions
diff --git a/src/frontend/cli/sisyphus-cli.py b/src/frontend/cli/sisyphus-cli.py
new file mode 100755
index 0000000..3d4fb3a
--- /dev/null
+++ b/src/frontend/cli/sisyphus-cli.py
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+
+import sys
+import subprocess
+from libsisyphus import *
+
+check_if_srcmode()
+
+if "__main__" == __name__:
+ if "install" in sys.argv[1:]:
+ sisyphus_pkg_install()
+ elif "uninstall" in sys.argv[1:]:
+ sisyphus_pkg_uninstall()
+ elif "force-uninstall" in sys.argv[1:]:
+ sisyphus_pkg_force_uninstall()
+ elif "remove-orphans" in sys.argv[1:]:
+ sisyphus_pkg_remove_orphans()
+ elif "upgrade" in sys.argv[1:]:
+ sisyphus_pkg_system_upgrade()
+ elif "auto-install" in sys.argv[1:]:
+ sisyphus_pkg_auto_install()
+ elif "auto-uninstall" in sys.argv[1:]:
+ sisyphus_pkg_auto_uninstall()
+ elif "auto-force-uninstall" in sys.argv[1:]:
+ sisyphus_pkg_auto_force_uninstall()
+ elif "auto-remove-orphans" in sys.argv[1:]:
+ sisyphus_pkg_auto_remove_orphans()
+ elif "auto-upgrade" in sys.argv[1:]:
+ sisyphus_pkg_auto_system_upgrade()
+ elif "search" in sys.argv[1:]:
+ sisyphus_pkg_search()
+ elif "update" in sys.argv[1:]:
+ sisyphus_pkg_system_update()
diff --git a/src/frontend/cli/sisyphus-cli.sh b/src/frontend/cli/sisyphus-cli.sh
new file mode 100755
index 0000000..79023aa
--- /dev/null
+++ b/src/frontend/cli/sisyphus-cli.sh
@@ -0,0 +1,116 @@
+#!/usr/bin/env bash
+
+source /usr/lib/sisyphus/libsisyphus.sh
+
+checksystemmode
+
+action=$1
+shift
+
+case "$action" in
+ install)
+ checksync
+ localdbcsvpre
+ emerge -a "$@"
+ updatelocaldb
+ ;;
+ uninstall)
+ checksync
+ localdbcsvpre
+ emerge --depclean -a "$@"
+ updatelocaldb
+ ;;
+ force-uninstall)
+ checksync
+ localdbcsvpre
+ emerge --unmerge -a "$@"
+ updatelocaldb
+ ;;
+ remove-orphans)
+ checksync
+ localdbcsvpre
+ emerge --depclean -a
+ updatelocaldb
+ ;;
+ upgrade)
+ checksync
+ localdbcsvpre
+ emerge -uDaN --with-bdeps=y @system @world "$@"
+ updatelocaldb
+ ;;
+ auto-install)
+ redcoresync
+ localdbcsvpre
+ emerge "$@"
+ updatelocaldb
+ ;;
+ auto-uninstall)
+ redcoresync
+ localdbcsvpre
+ emerge --depclean "$@"
+ updatelocaldb
+ ;;
+ auto-force-uninstall)
+ redcoresync
+ localdbcsvpre
+ emerge --unmerge "$@"
+ updatelocaldb
+ ;;
+ auto-remove-orphans)
+ redcoresync
+ localdbcsvpre
+ emerge --depclean -q
+ updatelocaldb
+ ;;
+ auto-upgrade)
+ redcoresync
+ localdbcsvpre
+ emerge -uDN --with-bdeps=y @system @world "$@"
+ updatelocaldb
+ ;;
+ search)
+ emerge -s "$@"
+ ;;
+ update)
+ redcoresync
+ ;;
+ belongs)
+ equery belongs "$@"
+ ;;
+ depends)
+ equery depends "$@"
+ ;;
+ files)
+ equery files "$@"
+ ;;
+ sysinfo)
+ emerge --info
+ ;;
+ *)
+ cat <<-"EOH"
+ Usage: sisyphus command [package(s)]
+
+ sisyphus is a simple wrapper around portage, gentoolkit, and portage-utils that provides an
+ apt-get/yum-alike interface to these commands, to assist people transitioning from
+ Debian/RedHat-based systems to Gentoo.
+
+ Commands :
+ install - Install new packages
+ uninstall - Uninstall packages safely
+ force-uninstall - *Unsafely* uninstall packages
+ remove-orphans - Uninstall packages that are no longer needed
+ upgrade - Upgrade system
+ auto-install - Install new packages (no confirmation)
+ auto-uninstall - Uninstall packages safely (no confirmation)
+ auto-force-uninstall - *Unsafely* uninstall packages (no confirmation)
+ auto-remove-orphans - Uninstall packages that are no longer needed (no confirmation)
+ auto-upgrade - Upgrade system (no confirmation)
+ search - Search for packages
+ update - Resync portage tree, portage config && redcore overlay
+ belongs - List what package FILE(s) belong to
+ depends - List all packages directly depending on given package
+ files - List all files installed by package
+ sysinfo - Display information about installed core packages and portage configuration
+ EOH
+ ;;
+esac