-
Notifications
You must be signed in to change notification settings - Fork 5.6k
/
catub
117 lines (106 loc) · 3.81 KB
/
catub
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
#!/bin/bash
_get_zlink () {
local regex
regex='(https?)://github.com/.+/.+'
if [[ $UPSTREAM_REPO == "goodcat" ]]
then
echo "aHR0cHM6Ly9naXRodWIuY29tL1RnQ2F0VUIvY2F0dXNlcmJvdC9hcmNoaXZlL21hc3Rlci56aXA=" | base64 -d
elif [[ $UPSTREAM_REPO == "badcat" ]]
then
echo "aHR0cHM6Ly9naXRodWIuY29tL2ppc2FuMDkvY2F0dXNlcmJvdC9hcmNoaXZlL21hc3Rlci56aXA=" | base64 -d
elif [[ $UPSTREAM_REPO =~ $regex ]]
then
if [[ $UPSTREAM_REPO_BRANCH ]]
then
echo "${UPSTREAM_REPO}/archive/${UPSTREAM_REPO_BRANCH}.zip"
else
echo "${UPSTREAM_REPO}/archive/master.zip"
fi
else
echo "aHR0cHM6Ly9naXRodWIuY29tL1RnQ2F0VUIvY2F0dXNlcmJvdC9hcmNoaXZlL21hc3Rlci56aXA=" | base64 -d
fi
}
_get_repolink () {
local regex
local rlink
regex='(https?)://github.com/.+/.+'
if [[ $UPSTREAM_REPO == "goodcat" ]]
then
rlink=`echo "aHR0cHM6Ly9naXRodWIuY29tL1RnQ2F0VUIvY2F0dXNlcmJvdA==" | base64 -d`
elif [[ $UPSTREAM_REPO == "badcat" ]]
then
rlink=`echo "aHR0cHM6Ly9naXRodWIuY29tL0ppc2FuMDkvY2F0dXNlcmJvdA==" | base64 -d`
elif [[ $UPSTREAM_REPO =~ $regex ]]
then
rlink=`echo "${UPSTREAM_REPO}"`
else
rlink=`echo "aHR0cHM6Ly9naXRodWIuY29tL1RnQ2F0VUIvY2F0dXNlcmJvdA==" | base64 -d`
fi
echo "$rlink"
}
_run_python_code() {
python3${pVer%.*} -c "$1"
}
_run_catpackgit() {
$(_run_python_code 'from git import Repo
import sys
OFFICIAL_UPSTREAM_REPO = "https://github.com/TgCatUB/nekopack"
ACTIVE_BRANCH_NAME = "master"
repo = Repo.init()
origin = repo.create_remote("temponame", OFFICIAL_UPSTREAM_REPO)
origin.fetch()
repo.create_head(ACTIVE_BRANCH_NAME, origin.refs[ACTIVE_BRANCH_NAME])
repo.heads[ACTIVE_BRANCH_NAME].checkout(True) ')
}
_run_catgit() {
local repolink=$(_get_repolink)
$(_run_python_code 'from git import Repo
import sys
OFFICIAL_UPSTREAM_REPO="'$repolink'"
ACTIVE_BRANCH_NAME = "'$UPSTREAM_REPO_BRANCH'" or "master"
repo = Repo.init()
origin = repo.create_remote("temponame", OFFICIAL_UPSTREAM_REPO)
origin.fetch()
repo.create_head(ACTIVE_BRANCH_NAME, origin.refs[ACTIVE_BRANCH_NAME])
repo.heads[ACTIVE_BRANCH_NAME].checkout(True) ')
}
_start_bot () {
local zippath
zippath="catuserbot.zip"
echo " Downloading source code ..."
wget -q $(_get_zlink) -O "$zippath"
echo " Unpacking Data ..."
CATPATH=$(zipinfo -1 "$zippath" | grep -v "/.");
unzip -qq "$zippath"
echo "Done"
echo " Cleaning ..."
rm -rf "$zippath"
_run_catpackgit
cd $CATPATH
_run_catgit
python3 ../setup/updater.py ../requirements.txt requirements.txt
chmod -R 755 bin
echo " Starting CatUserBot "
echo "
:'######:::::'###::::'########::::
'##... ##:::'## ##:::... ##..:::::
##:::..:::'##:. ##::::: ##:::::::
##:::::::'##:::. ##:::: ##:::::::
##::::::: #########:::: ##:::::::
##::: ##: ##.... ##:::: ##:::::::
. ######:: ##:::: ##:::: ##:::::::
:......:::..:::::..:::::..::::::::
"
echo "
'##::::'##::'######::'########:'########::'########:::'#######::'########:
##:::: ##:'##... ##: ##.....:: ##.... ##: ##.... ##:'##.... ##:... ##..::
##:::: ##: ##:::..:: ##::::::: ##:::: ##: ##:::: ##: ##:::: ##:::: ##::::
##:::: ##:. ######:: ######::: ########:: ########:: ##:::: ##:::: ##::::
##:::: ##::..... ##: ##...:::: ##.. ##::: ##.... ##: ##:::: ##:::: ##::::
##:::: ##:'##::: ##: ##::::::: ##::. ##:: ##:::: ##: ##:::: ##:::: ##::::
. #######::. ######:: ########: ##:::. ##: ########::. #######::::: ##::::
:.......::::......:::........::..:::::..::........::::.......::::::..:::::
"
python3 -m userbot
}
_start_bot