mirror of
https://github.com/AdnanHodzic/auto-cpufreq.git
synced 2025-07-28 16:14:14 +02:00
added optional path in --update (#538)
* add --dir * add to path option to --update * optional add to path in --update * update * update README.md * resolve bugs
This commit is contained in:
parent
20a1a9d3a6
commit
7e02a0769d
@ -364,9 +364,11 @@ If the install has been performed as part of snap package, daemon status can be
|
|||||||
|
|
||||||
### Update - auto-cpufreq update
|
### Update - auto-cpufreq update
|
||||||
|
|
||||||
Update functionality works by cloning auto-cpufreq repo to /home directory of currently logged in user, installing it using [auto-cpufreq-installer](#auto-cpufreq-installer) and performing [auto-cpufreq daemon install](#install---auto-cpufreq-daemon) with [latest version](https://github.com/AdnanHodzic/auto-cpufreq/releases) changes.
|
Update functionality works by cloning auto-cpufreq repo, installing it using [auto-cpufreq-installer](#auto-cpufreq-installer) and performing [auto-cpufreq daemon install](#install---auto-cpufreq-daemon) with [latest version](https://github.com/AdnanHodzic/auto-cpufreq/releases) changes.
|
||||||
|
|
||||||
Update the package by running: `sudo auto-cpufreq --update`
|
Update auto-cpufreq by running: `sudo auto-cpufreq --update`. Latest revision is cloned to default location `/opt/auto-cpufreq/source`, thus maintaining existing dir structure.
|
||||||
|
|
||||||
|
Update and clone to custom directory by running: `sudo auto-cpufreq --update=/path/to/directory`.
|
||||||
|
|
||||||
### Remove - auto-cpufreq daemon
|
### Remove - auto-cpufreq daemon
|
||||||
|
|
||||||
|
@ -20,9 +20,9 @@ fi
|
|||||||
|
|
||||||
#separator
|
#separator
|
||||||
function separator {
|
function separator {
|
||||||
local COLUMNS="`tput cols`"
|
local COLOUMNS="`tput cols`"
|
||||||
echo -e "\n"
|
echo -e "\n"
|
||||||
printf "%0.s─" $(seq $COLUMNS)
|
printf "%0.s─" $(seq $COLOUMNS)
|
||||||
echo -e "\n"
|
echo -e "\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -37,8 +37,8 @@ function root_check {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function header {
|
function header {
|
||||||
local COLUMNS="`tput cols`"
|
local COLOUMNS="`tput cols`"
|
||||||
MID="$((COLUMNS / 2))"
|
MID="$((COLOUMNS / 2))"
|
||||||
HEADER="$1"
|
HEADER="$1"
|
||||||
printf "%0.s─" $(seq $((MID-(${#HEADER}/2)- 1)))
|
printf "%0.s─" $(seq $((MID-(${#HEADER}/2)- 1)))
|
||||||
echo -n " $HEADER "
|
echo -n " $HEADER "
|
||||||
|
@ -186,19 +186,14 @@ def verify_update():
|
|||||||
print(f"Updates are available,\nCurrent version: {installed_version}\nLatest version: {latest_version}")
|
print(f"Updates are available,\nCurrent version: {installed_version}\nLatest version: {latest_version}")
|
||||||
print("Note that your previous custom settings might be erased with the following update")
|
print("Note that your previous custom settings might be erased with the following update")
|
||||||
|
|
||||||
def new_update():
|
def new_update(custom_dir):
|
||||||
username = os.getlogin()
|
os.chdir(custom_dir)
|
||||||
home_dir = "/home/" + username
|
print(f"Cloning the latest release to {custom_dir}")
|
||||||
os.chdir(home_dir)
|
|
||||||
current_working_directory = os.getcwd()
|
|
||||||
print("Cloning the latest release to the home directory: ")
|
|
||||||
print(os.getcwd())
|
|
||||||
run(["git", "clone", "https://github.com/AdnanHodzic/auto-cpufreq.git"])
|
run(["git", "clone", "https://github.com/AdnanHodzic/auto-cpufreq.git"])
|
||||||
os.chdir("auto-cpufreq")
|
os.chdir("auto-cpufreq")
|
||||||
print("package cloned to directory ", current_working_directory)
|
print(f"package cloned to directory {custom_dir}")
|
||||||
run(['./auto-cpufreq-installer'], input='i\n', encoding='utf-8')
|
run(['./auto-cpufreq-installer'], input='i\n', encoding='utf-8')
|
||||||
|
|
||||||
|
|
||||||
# return formatted version for a better readability
|
# return formatted version for a better readability
|
||||||
def get_formatted_version():
|
def get_formatted_version():
|
||||||
literal_version = pkg_resources.require("auto-cpufreq")[0].version
|
literal_version = pkg_resources.require("auto-cpufreq")[0].version
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
# core import
|
# core import
|
||||||
import sys
|
import sys
|
||||||
import time
|
import time
|
||||||
import click
|
from click import UsageError
|
||||||
from subprocess import call, run
|
from subprocess import call, run
|
||||||
|
|
||||||
sys.path.append("../")
|
sys.path.append("../")
|
||||||
@ -18,8 +18,8 @@ from auto_cpufreq.power_helper import *
|
|||||||
@click.command()
|
@click.command()
|
||||||
@click.option("--monitor", is_flag=True, help="Monitor and see suggestions for CPU optimizations")
|
@click.option("--monitor", is_flag=True, help="Monitor and see suggestions for CPU optimizations")
|
||||||
@click.option("--live", is_flag=True, help="Monitor and make (temp.) suggested CPU optimizations")
|
@click.option("--live", is_flag=True, help="Monitor and make (temp.) suggested CPU optimizations")
|
||||||
@click.option("--update", is_flag=True, help="Update daemon and package for (permanent) automatic CPU optimizations")
|
|
||||||
@click.option("--install", is_flag=True, help="Install daemon for (permanent) automatic CPU optimizations")
|
@click.option("--install", is_flag=True, help="Install daemon for (permanent) automatic CPU optimizations")
|
||||||
|
@click.option("--update", is_flag=False, help="Update daemon and package for (permanent) automatic CPU optimizations", flag_value="--update")
|
||||||
@click.option("--remove", is_flag=True, help="Remove daemon for (permanent) automatic CPU optimizations")
|
@click.option("--remove", is_flag=True, help="Remove daemon for (permanent) automatic CPU optimizations")
|
||||||
|
|
||||||
@click.option("--stats", is_flag=True, help="View live stats of CPU optimizations made by daemon")
|
@click.option("--stats", is_flag=True, help="View live stats of CPU optimizations made by daemon")
|
||||||
@ -89,7 +89,7 @@ def main(config, daemon, debug, update, install, remove, live, log, monitor, sta
|
|||||||
else:
|
else:
|
||||||
pass
|
pass
|
||||||
#"daemon_not_found" is not defined
|
#"daemon_not_found" is not defined
|
||||||
daemon_not_found()
|
#daemon_not_found()
|
||||||
elif monitor:
|
elif monitor:
|
||||||
config_info_dialog()
|
config_info_dialog()
|
||||||
root_check()
|
root_check()
|
||||||
@ -226,9 +226,22 @@ def main(config, daemon, debug, update, install, remove, live, log, monitor, sta
|
|||||||
remove_complete_msg()
|
remove_complete_msg()
|
||||||
elif update:
|
elif update:
|
||||||
root_check()
|
root_check()
|
||||||
|
custom_dir = "/opt/auto-cpufreq/source"
|
||||||
|
for arg in sys.argv:
|
||||||
|
if arg.startswith("--update="):
|
||||||
|
custom_dir = arg.split("=")[1]
|
||||||
|
sys.argv.remove(arg)
|
||||||
|
|
||||||
|
if "--update" in sys.argv:
|
||||||
|
update = True
|
||||||
|
sys.argv.remove("--update")
|
||||||
|
if len(sys.argv) == 2:
|
||||||
|
custom_dir = sys.argv[1]
|
||||||
|
|
||||||
if os.getenv("PKG_MARKER") == "SNAP":
|
if os.getenv("PKG_MARKER") == "SNAP":
|
||||||
print("Detected auto-cpufreq was installed using snap")
|
print("Detected auto-cpufreq was installed using snap")
|
||||||
# refresh snap directly using this command
|
# refresh snap directly using this command
|
||||||
|
# path wont work in this case
|
||||||
|
|
||||||
print("Please update using snap package manager, i.e: `sudo snap refresh auto-cpufreq`.")
|
print("Please update using snap package manager, i.e: `sudo snap refresh auto-cpufreq`.")
|
||||||
#check for AUR
|
#check for AUR
|
||||||
@ -238,19 +251,21 @@ def main(config, daemon, debug, update, install, remove, live, log, monitor, sta
|
|||||||
verify_update()
|
verify_update()
|
||||||
ans = input ("Do you want to update auto-cpufreq to the latest release? [y/n]: ")
|
ans = input ("Do you want to update auto-cpufreq to the latest release? [y/n]: ")
|
||||||
valid_options = ['y', 'Y', 'yes', 'YES', 'Yes']
|
valid_options = ['y', 'Y', 'yes', 'YES', 'Yes']
|
||||||
|
if not os.path.exists(custom_dir):
|
||||||
|
os.makedirs(custom_dir)
|
||||||
|
if os.path.exists(os.path.join(custom_dir, "auto-cpufreq")):
|
||||||
|
shutil.rmtree(os.path.join(custom_dir, "auto-cpufreq"))
|
||||||
if ans.lower() in valid_options:
|
if ans.lower() in valid_options:
|
||||||
remove_daemon()
|
remove_daemon()
|
||||||
remove_complete_msg()
|
remove_complete_msg()
|
||||||
new_update()
|
new_update(custom_dir)
|
||||||
else:
|
|
||||||
print("incorrect input\n")
|
|
||||||
print("Aborted")
|
|
||||||
print("enabling daemon")
|
print("enabling daemon")
|
||||||
run(["auto-cpufreq", "--install"])
|
run(["auto-cpufreq", "--install"])
|
||||||
print("auto-cpufreq is installed with the latest version")
|
print("auto-cpufreq is installed with the latest version")
|
||||||
app_version()
|
run(["auto-cpufreq", "--version"])
|
||||||
|
else:
|
||||||
|
print("incorrect input\n")
|
||||||
|
print("Aborted")
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
main()
|
main()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user