Complete Ultroid update system modernization and addon fixes
- Enhanced update_script.py with better error handling and restart logic - Fixed update command in plugins/bot.py to default to user's fork - Improved update command help and interactive options - Fixed import errors in addons/snips.py and addons/tag.py - All update operations now default to user's fork unless 'original' specified - Added reliable external script-based update mechanism - Ensured proper shutdown/restart cycle for updates
This commit is contained in:
@@ -21,14 +21,14 @@
|
|||||||
"""
|
"""
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from . import upload_file as uf
|
from telethon import events
|
||||||
from telethon.utils import pack_bot_file_id
|
from telethon.utils import pack_bot_file_id
|
||||||
|
|
||||||
|
from pyUltroid import get_string, udB, ultroid_bot
|
||||||
from pyUltroid._misc import sudoers
|
from pyUltroid._misc import sudoers
|
||||||
from pyUltroid.fns.tools import create_tl_btn, format_btn, get_msg_button
|
from pyUltroid.fns.decorators import ultroid_cmd
|
||||||
|
from pyUltroid.fns.helper import mediainfo
|
||||||
from . import events, get_string, mediainfo, udB, ultroid_bot, ultroid_cmd
|
from pyUltroid.fns.tools import create_tl_btn, format_btn, get_msg_button, upload_file
|
||||||
from ._inline import something
|
|
||||||
|
|
||||||
# Functions moved from snips_db.py
|
# Functions moved from snips_db.py
|
||||||
def get_all_snips():
|
def get_all_snips():
|
||||||
@@ -69,19 +69,19 @@ async def an(e):
|
|||||||
wrd = wrd.replace("$", "")
|
wrd = wrd.replace("$", "")
|
||||||
btn = format_btn(wt.buttons) if wt.buttons else None
|
btn = format_btn(wt.buttons) if wt.buttons else None
|
||||||
if wt and wt.media:
|
if wt and wt.media:
|
||||||
wut = mediainfo(wt.media)
|
wut = mediainfo(wt.media)
|
||||||
if wut.startswith(("pic", "gif")):
|
if wut.startswith(("pic", "gif")):
|
||||||
dl = await wt.download_media()
|
dl = await wt.download_media()
|
||||||
m = uf(dl)
|
m = upload_file(dl)
|
||||||
os.remove(dl)
|
os.remove(dl)
|
||||||
elif wut == "video":
|
elif wut == "video":
|
||||||
if wt.media.document.size > 8 * 1000 * 1000:
|
if wt.media.document.size > 8 * 1000 * 1000:
|
||||||
return await e.eor(get_string("com_4"), time=5)
|
return await e.eor(get_string("com_4"), time=5)
|
||||||
dl = await wt.download_media()
|
dl = await wt.download_media()
|
||||||
m = uf(dl)
|
m = upload_file(dl)
|
||||||
os.remove(dl)
|
os.remove(dl)
|
||||||
else:
|
else:
|
||||||
m = pack_bot_file_id(wt.media)
|
m = pack_bot_file_id(wt.media)
|
||||||
if wt.text:
|
if wt.text:
|
||||||
txt = wt.text
|
txt = wt.text
|
||||||
if not btn:
|
if not btn:
|
||||||
|
|||||||
@@ -429,10 +429,10 @@ Note: Use `{tr}setrepo <your_fork_url>` to update from your own fork."""
|
|||||||
is_original = "original" in args
|
is_original = "original" in args
|
||||||
|
|
||||||
repo_url = (
|
repo_url = (
|
||||||
"https://github.com/ThePrateekBhatia/Ultroid"
|
"https://github.com/ThePrateekBhatia/Ultroid.git"
|
||||||
if is_original
|
if is_original
|
||||||
else udB.get_key("UPSTREAM_REPO")
|
else udB.get_key("UPSTREAM_REPO")
|
||||||
or "https://github.com/ThePrateekBhatia/Ultroid"
|
or "https://github.com/overspend1/Ultroid-fork.git"
|
||||||
)
|
)
|
||||||
|
|
||||||
if is_now:
|
if is_now:
|
||||||
|
|||||||
@@ -36,10 +36,9 @@ def main():
|
|||||||
# Check if we're in a git repository
|
# Check if we're in a git repository
|
||||||
if not (script_dir / ".git").exists():
|
if not (script_dir / ".git").exists():
|
||||||
print("❌ Not a git repository. Cannot update.")
|
print("❌ Not a git repository. Cannot update.")
|
||||||
return False
|
return False
|
||||||
|
# Get the repository URL from command line args or default to user's fork
|
||||||
# Get the repository URL from command line args or database
|
repo_url = sys.argv[1] if len(sys.argv) > 1 else "https://github.com/overspend1/Ultroid-fork.git"
|
||||||
repo_url = sys.argv[1] if len(sys.argv) > 1 else None
|
|
||||||
|
|
||||||
# Fetch and pull updates
|
# Fetch and pull updates
|
||||||
print("📥 Fetching updates from repository...")
|
print("📥 Fetching updates from repository...")
|
||||||
|
|||||||
Reference in New Issue
Block a user