v2.7: Fixed auto-update path detection for case-sensitive file systems

- Replaced hardcoded paths with dynamic path detection using __file__
- Auto-update now works regardless of folder case (prezenta vs Prezenta)
- Added comprehensive dependency management documentation
- Enhanced port 80 capability setup script
- Updated system packages repository structure
- Fixed path resolution for Files/reposytory and system_packages directories
This commit is contained in:
2025-08-14 15:51:29 +03:00
parent 0b9419c6d2
commit 6975e18ed2
48 changed files with 2766 additions and 121 deletions

28
config.py Executable file → Normal file
View File

@@ -62,16 +62,14 @@ isFile = os.path.isfile(path) #verifica existenta fisierului prin bolean Tru/fal
if not isFile:
# print(path)# nu se face nimic pentru ca exista fisierul
#else:
fp = open('./data/idmasa.txt', 'w') # cream fisier
fp.write('no_config') # scriem in fisier prima line pentru a avea un punct de pornire
fp = open("./data/idmasa.txt", 'w') # cream fisier
fp.write('noconfig') # scriem in fisier prima line pentru a avea un punct de pornire
fp.close() # inchidem fisierul
# print("created file")
# verificam fisierul de prezenta pe baza acestuia stim daca locul de munca este configurat cu card de prezenta sau nu
path1 = './data/idmasa.txt' #verificare existenta al doilea fisier
isFile = os.path.isfile(path1)# verifica existenta fisierului
#print(path)
#urmeaza sa citim fisierele pentru a crea cateva variabile
# prima variabila este idmasa
@@ -82,16 +80,15 @@ try:
idmasa = name[0]# se verifica daca exista informatie in text
except IndexError:
idmasa = "Initial"# daca nu exista informatie in text setam variabila
idmasa = "noconfig"# daca nu exista informatie in text setam variabila
n_config = 0
#incepem sa definim primele functii din configurare
def notokfunction(): # este functie pentru butonul cancel din formular
global n_config
msg1 = "Id masa a fost actualizat la: "+ idmasa +"" ## pregatim mesajul pentru fereastra pop up
n_config = 1
msg2 = "Slotul Pentru cartela este configurat by default" # pregatim mesajul pentru fereastra pop up
layout = [[sg.Text(msg1)], [sg.Text(msg2)], [sg.Button("Ok")]]
window = sg.Window("Configurari", layout)
@@ -107,6 +104,7 @@ def notokfunction(): # este functie pentru butonul cancel din formular
#functia pentru butonul ok din formular
def okfunction():
global n_config
if idmasa == config1: # variabila config 1 este preluata din formular
msg1 = "Masa este setat corect: "+ idmasa +"" # se printeaza mesaj ca nu se actualizeaza id de masa
# print(msg1)
@@ -116,7 +114,7 @@ def okfunction():
f.write(L) # actualizam linia cu noua valuare din config
f.close() # inchidem fisierul
msg1 = "Id masa a fost actualizat la: "+ config1 +"" # pregatim mesajul pentru fereastra pop up
n_config = 0
#
# definim fereastra pentru ok asemena cu functia notok
@@ -132,6 +130,7 @@ def okfunction():
break
if nook == 1:
notokfunction()
n_config = 1
time.sleep(2)
#asteptam 10 secunde si pornim functia de setare printer
set_printer()
@@ -177,6 +176,7 @@ window = psg.Window('Form', layout, size=(800,190),finalize=True)
# citim si configuram widgetul pentru butoanele 1 si 0 din randul
while True:
nook = 0 # cream o variabila care sa ne spuna daca a fost setao butonul ok sau nu
event, values = window.read() # citim valorile intr-o lista numita values
host_conf= values[0] # atribuim primul item din lista variabilei Host config
@@ -184,6 +184,7 @@ while True:
print(host_conf)
if event == sg.WIN_CLOSED or event == 'Cancel':
nook = 1 # daca se da cancel setam variabila nook la 1
n_config = 1 # setam variabila n_config la 1
break
config1 = values[1] # atribuim lui config 1 valuarea din campul Loc de munca care a fost scris cu Id masa
@@ -200,7 +201,8 @@ while True:
window.close()
# daca variabila nook este 1
time.sleep(2)
os.system("sudo reboot now")
if n_config == 0:
os.system("sudo reboot now")