Imbunatatiri installer si rezolvare probleme configurare
- Adaugat optiunea --version pentru setarea versiunii in PATCHLEVEL - Rezolvat eroarea regex bash cu grep/sed pentru compatibilitate - Adaugat CPATH pentru calea corecta a configului (rezolva problema cu 'No such file') - Imbunatatit HOST_HIDING cu HOST_HIDING_STYLE pentru ascunderea completa - Modificat clasa Opers cu usermode +Wx pentru notificari WHOIS - Adaugat WHOIS_NOTICE pentru notificari la operatori - Actualizat documentatia cu noua optiune --version Rezolva problemele: 1. Config parse error (CPATH setat corect) 2. Hostname-ul nu se ascunde (HOST_HIDING_STYLE) 3. Operatorii nu primesc +W (usermode +Wx in clasa Opers) 4. Lipsa notificari WHOIS (WHOIS_NOTICE activat)
This commit is contained in:
parent
2fdc9ad105
commit
7ac88d3f80
|
|
@ -80,7 +80,10 @@ Script-ul interactiv te va ghida prin:
|
||||||
# Dezactivare SSL/TLS
|
# Dezactivare SSL/TLS
|
||||||
./install.sh --no-ssl
|
./install.sh --no-ssl
|
||||||
|
|
||||||
# Combinație de opțiuni
|
# Setare versiune la build
|
||||||
|
./install.sh --version 1.0.3
|
||||||
|
|
||||||
|
# Combinatie de optiuni
|
||||||
./install.sh --prefix /opt/ircd --maxcon 16384 --debug
|
./install.sh --prefix /opt/ircd --maxcon 16384 --debug
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -90,12 +93,13 @@ Script-ul interactiv te va ghida prin:
|
||||||
Usage: ./install.sh [OPTIONS]
|
Usage: ./install.sh [OPTIONS]
|
||||||
|
|
||||||
OPTIONS:
|
OPTIONS:
|
||||||
-h, --help Afișează mesajul de ajutor
|
-h, --help Afiseaza mesajul de ajutor
|
||||||
-p, --prefix PATH Calea de instalare (implicit: $HOME/ircd)
|
-p, --prefix PATH Calea de instalare (implicit: $HOME/ircd)
|
||||||
-m, --maxcon NUM Numărul maxim de conexiuni (implicit: 4096)
|
-m, --maxcon NUM Numarul maxim de conexiuni (implicit: 4096)
|
||||||
-d, --debug Activează modul de debug
|
-d, --debug Activeaza modul de debug
|
||||||
-s, --no-ssl Dezactivează suportul SSL/TLS
|
-s, --no-ssl Dezactiveaza suportul SSL/TLS
|
||||||
-c, --config FILE Fișier de configurare inițial
|
-c, --config FILE Fisier de configurare initial
|
||||||
|
-V, --version VER Seteaza versiunea in PATCHLEVEL (ex: 1.0.3)
|
||||||
```
|
```
|
||||||
|
|
||||||
## 📁 Structura Directoarelor Post-Instalare
|
## 📁 Structura Directoarelor Post-Instalare
|
||||||
|
|
|
||||||
70
install.sh
70
install.sh
|
|
@ -20,6 +20,7 @@ ENABLE_SSL=1
|
||||||
MAXCON_SET=0
|
MAXCON_SET=0
|
||||||
SERVER_PORT=4400
|
SERVER_PORT=4400
|
||||||
SSL_PORTS_DEFAULT="6697"
|
SSL_PORTS_DEFAULT="6697"
|
||||||
|
IRCD_VERSION=""
|
||||||
|
|
||||||
# Validare numar pozitiv (doar cifre)
|
# Validare numar pozitiv (doar cifre)
|
||||||
is_positive_int() {
|
is_positive_int() {
|
||||||
|
|
@ -137,22 +138,24 @@ expand_ports() {
|
||||||
# Funcția de afișare a ajutorului
|
# Funcția de afișare a ajutorului
|
||||||
show_help() {
|
show_help() {
|
||||||
cat << EOF
|
cat << EOF
|
||||||
${ALBASTRU}Script de instalare automată pentru UnderChat IRCd${NC}
|
${ALBASTRU}Script de instalare automata pentru UnderChat IRCd${NC}
|
||||||
|
|
||||||
Utilizare: ./install.sh [OPȚIUNI]
|
Utilizare: ./install.sh [OPTIUNI]
|
||||||
|
|
||||||
${GALBEN}OPȚIUNI:${NC}
|
${GALBEN}OPTIUNI:${NC}
|
||||||
-h, --help Afișează acest mesaj de ajutor
|
-h, --help Afiseaza acest mesaj de ajutor
|
||||||
-p, --prefix PATH Calea de instalare (implicit: \$HOME/ircd)
|
-p, --prefix PATH Calea de instalare (implicit: \$HOME/ircd)
|
||||||
-m, --maxcon NUM Numărul maxim de conexiuni (implicit: 4096)
|
-m, --maxcon NUM Numarul maxim de conexiuni (implicit: 4096)
|
||||||
-d, --debug Activează modul de debug
|
-d, --debug Activeaza modul de debug
|
||||||
-s, --no-ssl Dezactivează suportul SSL/TLS
|
-s, --no-ssl Dezactiveaza suportul SSL/TLS
|
||||||
-c, --config FILE Fișier de configurare inițial
|
-c, --config FILE Fisier de configurare initial
|
||||||
|
-V, --version VER Seteaza versiunea in PATCHLEVEL (ex: 1.0.3)
|
||||||
|
|
||||||
${GALBEN}EXEMPLE:${NC}
|
${GALBEN}EXEMPLE:${NC}
|
||||||
./install.sh
|
./install.sh
|
||||||
./install.sh --prefix /opt/ircd --maxcon 8192
|
./install.sh --prefix /opt/ircd --maxcon 8192
|
||||||
./install.sh --debug --config myconfig.conf
|
./install.sh --debug --config myconfig.conf
|
||||||
|
./install.sh --version 1.0.3
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
@ -332,6 +335,41 @@ fix_config_guess() {
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Funcția de setare versiune in PATCHLEVEL
|
||||||
|
set_patchlevel_version() {
|
||||||
|
local version="$1"
|
||||||
|
local patchlevel_file="./include/patchlevel.h"
|
||||||
|
|
||||||
|
if [ -z "$version" ]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f "$patchlevel_file" ]; then
|
||||||
|
log_warn "Fisierul $patchlevel_file nu exista, sar peste setarea versiunii"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
local current
|
||||||
|
current=$(grep -E '^#define PATCHLEVEL ' "$patchlevel_file" | sed -E 's/^#define PATCHLEVEL "([^"]+)".*/\1/')
|
||||||
|
|
||||||
|
if [ -z "$current" ]; then
|
||||||
|
log_warn "Nu pot determina PATCHLEVEL curent, sar peste setarea versiunii"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
local new_patchlevel
|
||||||
|
if echo "$current" | grep -q '(.*)'; then
|
||||||
|
# Extract prefix before parentheses
|
||||||
|
local prefix=$(echo "$current" | sed -E 's/^(.*)\([^)]*\)$/\1/')
|
||||||
|
new_patchlevel="${prefix}(${version})"
|
||||||
|
else
|
||||||
|
new_patchlevel="UnderChat(${version})"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sed -i "s|^#define PATCHLEVEL \".*\"|#define PATCHLEVEL \"$new_patchlevel\"|" "$patchlevel_file"
|
||||||
|
log_success "Versiune setata in PATCHLEVEL: $new_patchlevel"
|
||||||
|
}
|
||||||
|
|
||||||
# Funcția de configurare
|
# Funcția de configurare
|
||||||
configure_ircd() {
|
configure_ircd() {
|
||||||
log_info "Configurare UnderChat IRCd..."
|
log_info "Configurare UnderChat IRCd..."
|
||||||
|
|
@ -573,7 +611,7 @@ Class {
|
||||||
show_invis = yes;
|
show_invis = yes;
|
||||||
see_chan = yes;
|
see_chan = yes;
|
||||||
list_chan = yes;
|
list_chan = yes;
|
||||||
usermode = "+W";
|
usermode = "+Wx";
|
||||||
remove = yes;
|
remove = yes;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -686,6 +724,7 @@ features {
|
||||||
"HOST_HIDING" = "TRUE";
|
"HOST_HIDING" = "TRUE";
|
||||||
"HIDDEN_HOST" = "users.EOFCONFIG_NETWORK";
|
"HIDDEN_HOST" = "users.EOFCONFIG_NETWORK";
|
||||||
"HIDDEN_IP" = "127.0.0.1";
|
"HIDDEN_IP" = "127.0.0.1";
|
||||||
|
"HOST_HIDING_STYLE" = "1";
|
||||||
|
|
||||||
# Channels
|
# Channels
|
||||||
"MAXCHANNELSPERUSER" = "60";
|
"MAXCHANNELSPERUSER" = "60";
|
||||||
|
|
@ -707,6 +746,7 @@ features {
|
||||||
"MPATH" = "EOFCONFIG_PREFIX/etc/ircd.motd";
|
"MPATH" = "EOFCONFIG_PREFIX/etc/ircd.motd";
|
||||||
"RPATH" = "EOFCONFIG_PREFIX/etc/remote.motd";
|
"RPATH" = "EOFCONFIG_PREFIX/etc/remote.motd";
|
||||||
"PPATH" = "EOFCONFIG_PREFIX/var/ircd.pid";
|
"PPATH" = "EOFCONFIG_PREFIX/var/ircd.pid";
|
||||||
|
"CPATH" = "EOFCONFIG_PREFIX/etc/ircd.conf";
|
||||||
|
|
||||||
# Stats visibility
|
# Stats visibility
|
||||||
"HIS_STATS_u" = "FALSE";
|
"HIS_STATS_u" = "FALSE";
|
||||||
|
|
@ -746,6 +786,9 @@ features {
|
||||||
|
|
||||||
# CTCP versioning
|
# CTCP versioning
|
||||||
"CTCP_VERSIONING" = "FALSE";
|
"CTCP_VERSIONING" = "FALSE";
|
||||||
|
|
||||||
|
# WHOIS notifications for operators
|
||||||
|
"WHOIS_NOTICE" = "TRUE";
|
||||||
};
|
};
|
||||||
|
|
||||||
EOFCONFIG
|
EOFCONFIG
|
||||||
|
|
@ -826,8 +869,12 @@ main() {
|
||||||
CONFIG_FILE="$2"
|
CONFIG_FILE="$2"
|
||||||
shift 2
|
shift 2
|
||||||
;;
|
;;
|
||||||
|
-V|--version)
|
||||||
|
IRCD_VERSION="$2"
|
||||||
|
shift 2
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
log_error "Opțiune necunoscută: $1"
|
log_error "Optiune necunoscuta: $1"
|
||||||
show_help
|
show_help
|
||||||
exit 1
|
exit 1
|
||||||
;;
|
;;
|
||||||
|
|
@ -862,6 +909,9 @@ main() {
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Setare versiune (optional)
|
||||||
|
set_patchlevel_version "$IRCD_VERSION"
|
||||||
|
|
||||||
# Configurare
|
# Configurare
|
||||||
configure_ircd
|
configure_ircd
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue