clapp-pm 1.0.43__py3-none-any.whl → 1.0.45__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,193 +0,0 @@
1
- #!/usr/bin/env python3
2
- """
3
- PyCloud OS - Ana Başlatıcı
4
- Modern, modüler, Python tabanlı işletim sistemi
5
- """
6
-
7
- import sys
8
- import os
9
- import logging
10
- import argparse
11
- from pathlib import Path
12
- import time
13
-
14
- # PyQt6 import ve gerekli ayarlar
15
- try:
16
- from PyQt6.QtWidgets import QApplication
17
- from PyQt6.QtCore import Qt, QCoreApplication
18
- from PyQt6.QtGui import QIcon
19
- PYQT_AVAILABLE = True
20
- except ImportError as e:
21
- print(f"❌ PyQt6 import hatası: {e}")
22
- print("💡 Çözüm: pip install PyQt6")
23
- PYQT_AVAILABLE = False
24
-
25
- # Proje kök dizinini Python path'ine ekle
26
- project_root = Path(__file__).parent
27
- sys.path.insert(0, str(project_root))
28
-
29
- def setup_logging():
30
- """Logging sistemini kur"""
31
- log_format = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
32
- logging.basicConfig(
33
- level=logging.INFO,
34
- format=log_format,
35
- handlers=[
36
- logging.FileHandler('logs/pycloud.log', encoding='utf-8'),
37
- logging.StreamHandler(sys.stdout)
38
- ]
39
- )
40
-
41
- # Log dizinini oluştur
42
- Path('logs').mkdir(exist_ok=True)
43
-
44
- def parse_arguments():
45
- """Komut satırı argümanlarını parse et"""
46
- parser = argparse.ArgumentParser(description='PyCloud OS')
47
- parser.add_argument('--no-splash', action='store_true',
48
- help='Splash screen\'i atla')
49
- parser.add_argument('--debug', action='store_true',
50
- help='Debug modunda başlat')
51
- parser.add_argument('--safe-mode', action='store_true',
52
- help='Güvenli modda başlat')
53
- parser.add_argument('--version', action='version', version='PyCloud OS v0.9.0-dev')
54
-
55
- return parser.parse_args()
56
-
57
- def check_dependencies():
58
- """Gerekli bağımlılıkları kontrol et"""
59
- required_packages = ['PyQt6', 'PIL', 'psutil']
60
- missing_packages = []
61
-
62
- for package in required_packages:
63
- try:
64
- __import__(package)
65
- except ImportError:
66
- missing_packages.append(package)
67
-
68
- if missing_packages:
69
- print(f"❌ Eksik paketler: {', '.join(missing_packages)}")
70
- print("Lütfen şu komutu çalıştırın: pip install -r requirements.txt")
71
- return False
72
-
73
- return True
74
-
75
- def main():
76
- """Ana fonksiyon"""
77
- # Argümanları parse et
78
- args = parse_arguments()
79
-
80
- # Logging kurulumu
81
- setup_logging()
82
- logger = logging.getLogger("PyCloudOS")
83
-
84
- logger.info("🌩️ PyCloud OS başlatılıyor...")
85
-
86
- if not PYQT_AVAILABLE:
87
- logger.error("PyQt6 bulunamadı. GUI başlatılamıyor.")
88
- return 1
89
-
90
- # WebEngine için gerekli ayar
91
- QCoreApplication.setAttribute(Qt.ApplicationAttribute.AA_ShareOpenGLContexts)
92
-
93
- # QApplication oluştur
94
- app = QApplication(sys.argv)
95
- app.setApplicationName("PyCloud OS")
96
- app.setApplicationVersion("0.9.0-dev")
97
- app.setOrganizationName("PyCloud")
98
-
99
- # Uygulama ikonu
100
- icon_path = Path("system/logo/cloud.png")
101
- if icon_path.exists():
102
- app.setWindowIcon(QIcon(str(icon_path)))
103
-
104
- splash = None
105
- kernel = None
106
-
107
- try:
108
- # Splash screen göster (eğer devre dışı değilse)
109
- if not args.no_splash:
110
- try:
111
- from boot.splash import show_splash
112
- splash = show_splash()
113
- if splash:
114
- logger.info("✨ Splash screen gösteriliyor")
115
- app.processEvents() # Splash'in görünmesini sağla
116
- except Exception as e:
117
- logger.warning(f"Splash screen başlatılamadı: {e}")
118
-
119
- # Kernel başlat
120
- logger.info("🔧 Çekirdek başlatılıyor...")
121
- from core.kernel import PyCloudKernel
122
-
123
- kernel = PyCloudKernel(debug_mode=args.debug, safe_mode=args.safe_mode)
124
-
125
- # Splash'e kernel referansı ver
126
- if splash:
127
- splash.kernel = kernel
128
-
129
- # Kernel başlatma
130
- if not kernel.start():
131
- logger.error("❌ Çekirdek başlatılamadı")
132
- return 1
133
-
134
- logger.info("✅ Çekirdek başarıyla başlatıldı")
135
-
136
- # Rain UI başlat
137
- logger.info("🎨 Arayüz başlatılıyor...")
138
- from rain.ui import RainUI
139
-
140
- ui = RainUI(kernel)
141
-
142
- # Splash'in minimum süresini bekle ve yumuşak geçiş yap
143
- if splash:
144
- # Splash'in tamamlanmasını bekle
145
- time.sleep(2.0) # Ek 2 saniye bekleme (1 saniyeden artırdık)
146
- app.processEvents()
147
- splash._finish_splash()
148
-
149
- # Splash kapanana kadar bekle
150
- time.sleep(2.5) # Fade out animasyonunun tamamlanması için (1.5 saniyeden artırdık)
151
-
152
- # Ana arayüzü göster
153
- ui.show()
154
- logger.info("🚀 PyCloud OS hazır!")
155
-
156
- # Event loop başlat
157
- exit_code = app.exec()
158
-
159
- # Temizlik
160
- logger.info("🔄 Sistem kapatılıyor...")
161
- if kernel:
162
- kernel.shutdown()
163
-
164
- logger.info("👋 PyCloud OS kapatıldı")
165
- return exit_code
166
-
167
- except KeyboardInterrupt:
168
- logger.info("⚠️ Kullanıcı tarafından durduruldu")
169
- return 0
170
-
171
- except Exception as e:
172
- logger.error(f"💥 Kritik hata: {e}")
173
- import traceback
174
- logger.error(traceback.format_exc())
175
- return 1
176
-
177
- finally:
178
- # Splash'i temizle
179
- if splash:
180
- try:
181
- splash.close()
182
- except:
183
- pass
184
-
185
- # Kernel'i temizle
186
- if kernel:
187
- try:
188
- kernel.shutdown()
189
- except:
190
- pass
191
-
192
- if __name__ == "__main__":
193
- sys.exit(main())
@@ -1,15 +0,0 @@
1
- {
2
- "name": "pycloudos",
3
- "version": "1.0.0",
4
- "language": "python",
5
- "entry": "main.py",
6
- "description": "Python ile yazılmış işletim sistemi",
7
- "dependencies": [
8
- "flet",
9
- "supabase",
10
- "requests",
11
- "black",
12
- "flake8",
13
- "mypy"
14
- ]
15
- }
@@ -1,7 +0,0 @@
1
- """
2
- Rain UI - PyCloud OS Arayüz Sistemi
3
- macOS Aqua stilinde masaüstü ortamı
4
- """
5
-
6
- __version__ = "0.9.0-dev"
7
- __author__ = "PyCloud Team"