clapp-pm 1.0.44__py3-none-any.whl → 1.0.46__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.
- {clapp_pm-1.0.44.data → clapp_pm-1.0.46.data}/data/version.json +1 -1
- {clapp_pm-1.0.44.dist-info → clapp_pm-1.0.46.dist-info}/METADATA +1 -1
- {clapp_pm-1.0.44.dist-info → clapp_pm-1.0.46.dist-info}/RECORD +13 -29
- manifest_schema.py +1 -1
- manifest_validator.py +1 -1
- package_runner.py +1 -0
- packages/luaozgur-moba/README.md +159 -0
- packages/luaozgur-moba/manifest.json +8 -0
- version.py +1 -1
- packages/pycloudos/README.md +0 -279
- packages/pycloudos/core/appmon.py +0 -0
- packages/pycloudos/main.py +0 -193
- packages/pycloudos/manifest.json +0 -15
- packages/pycloudos/rain/__init__.py +0 -7
- packages/pycloudos/rain/contextmenu.py +0 -1370
- packages/pycloudos/rain/desktop.py +0 -556
- packages/pycloudos/rain/dock.py +0 -722
- packages/pycloudos/rain/flet_html_widgets.py +0 -1448
- packages/pycloudos/rain/theme.py +0 -930
- packages/pycloudos/rain/topbar.py +0 -1421
- packages/pycloudos/rain/ui.py +0 -381
- packages/pycloudos/rain/wallpaper.py +0 -830
- packages/pycloudos/rain/widgets.py +0 -688
- packages/pycloudos/rain/windowmanager.py +0 -605
- packages/pycloudos/requirements-dev.txt +0 -43
- packages/pycloudos/requirements.txt +0 -43
- packages/pycloudos/setup_deps.py +0 -422
- {clapp_pm-1.0.44.dist-info → clapp_pm-1.0.46.dist-info}/WHEEL +0 -0
- {clapp_pm-1.0.44.dist-info → clapp_pm-1.0.46.dist-info}/entry_points.txt +0 -0
- {clapp_pm-1.0.44.dist-info → clapp_pm-1.0.46.dist-info}/licenses/LICENSE +0 -0
- {clapp_pm-1.0.44.dist-info → clapp_pm-1.0.46.dist-info}/top_level.txt +0 -0
@@ -10,11 +10,11 @@ install_command.py,sha256=SiYxrmzZGi46dOfi8iOX4SUm7HbU06xIExZpeoHHnio,9928
|
|
10
10
|
installer.py,sha256=dmhPZ63IZGY2-LHCIOSKi6gI8lpbB-t6tgwWbXv0vf4,12470
|
11
11
|
list_command.py,sha256=qbeocvrg2eXRklxbYS3audQhYHGXTlMBk_tNh1cMxd0,8391
|
12
12
|
main.py,sha256=L9dwk4MvUpqByNBYCq-Gq9jK75heg8juVxLoAn-kb1M,24094
|
13
|
-
manifest_schema.py,sha256=
|
14
|
-
manifest_validator.py,sha256=
|
13
|
+
manifest_schema.py,sha256=QrNbj3m_jwf9Q2qhWV7o_Mx4b-duH4T8wxEtSnL8ESA,2811
|
14
|
+
manifest_validator.py,sha256=xuSWkvuXsf6l2LuO635D0eMuqwhsjf5mbwTjR--HaTI,8102
|
15
15
|
new_command.py,sha256=gz1w8zMf-gFITtRQAc9G2WES2akuCwdH7dtuDu9TacU,5926
|
16
16
|
package_registry.py,sha256=Rco15cvz-6lpCEDdCzwGZNCKtvVhlFIsEPy-WFAESMM,4233
|
17
|
-
package_runner.py,sha256=
|
17
|
+
package_runner.py,sha256=loA7sq5mS2Zp3ablxuwPC_yO7Nl5XJXvKkqmvesfdEU,5872
|
18
18
|
package_signing.py,sha256=ModMAzLk08rkI6zd8QKhyCH5BFbB-7dy8pwqKYatFQo,4579
|
19
19
|
post_install_hint.py,sha256=wjMPCgRurZiGu6hv_se-XA36KqBCdeYdRCD1q7FrJzQ,4918
|
20
20
|
progress_utils.py,sha256=ZH73QNLd5mI4h-JU0hSFR2OU8lesr2XteSZdmFD0bFA,5995
|
@@ -23,7 +23,7 @@ remote_registry.py,sha256=rPBIM_ESXUt0br5cARQ4YbzUoTda0G4e1KGzfyYMbpQ,8235
|
|
23
23
|
smart_search.py,sha256=R5O5CDXqlQc-N-6R6D5k36_-arCB-wnKfmWr5zMYWUI,15741
|
24
24
|
uninstall_command.py,sha256=rQYbZ-XMw8Xxw1fmgGdDaBQmgBGqyJ_rTBZkvEV5HV0,7066
|
25
25
|
validate_command.py,sha256=idaujErzrwuZNT6DYCVTVwZqBDEEi1GTxIXAGBgKMKM,7623
|
26
|
-
version.py,sha256=
|
26
|
+
version.py,sha256=MLMMvemQryoF5gBWF7tymfhmNZDSIkZWvpjbfVyXIkQ,224
|
27
27
|
version_command.py,sha256=DZuYWtohSeM5PJNYCflBy36_k0vex3tYV2C8ixEA9ho,4259
|
28
28
|
version_manager.py,sha256=fpC7jxhIW1wZhJ9IkVwyqkgJN4mhBjUUbaLefXLDMiM,11423
|
29
29
|
where_command.py,sha256=TcLoXLGmrPSHQuvlceVuuKBsfeadIwz-E0G_5okH14g,6420
|
@@ -67,8 +67,8 @@ clapp-packages-repo/packages/cloud-web-browser/requirements.txt,sha256=fJMjUewTq
|
|
67
67
|
clapp-packages-repo/packages/test-app-2/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
68
68
|
clapp-packages-repo/packages/test-app-2/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
69
69
|
clapp-packages-repo/packages/test-app-2/manifest.json,sha256=dzxPwC-GebvxX9DodLAtdRB0WsZBm204uGGsHbpGhyY,286
|
70
|
-
clapp_pm-1.0.
|
71
|
-
clapp_pm-1.0.
|
70
|
+
clapp_pm-1.0.46.data/data/version.json,sha256=hEVTyZ-FlQ0vTTKZjGuntJ0pWwBFUa2O7dnV7f25LWg,239
|
71
|
+
clapp_pm-1.0.46.dist-info/licenses/LICENSE,sha256=_hryv9pKR6udRexceUYuoYCJGmYBz7e-vRuFWmm38UY,1075
|
72
72
|
docs/developer_guide.md,sha256=B-S141TSNy7e8T9KaV6Fr-ZAFhYqqgcwqWijjX0C2Xc,7336
|
73
73
|
packages/cloud-calc/README.md,sha256=PBxWn01QykaHeezWf2AsD8P8cj66KKVpyuqvGadeUJo,2162
|
74
74
|
packages/cloud-calc/main.py,sha256=9m0igRXqIZHa3KTM37pqg02HxU_tY-2j-GMJWfUauvk,14764
|
@@ -85,27 +85,11 @@ packages/cloud-web-browser/README.md,sha256=BeCjl7SyiA_sZJ94IFDFsGdeFiq9oSn-Kxbn
|
|
85
85
|
packages/cloud-web-browser/cloud_browser.py,sha256=glDwlT340OBmA85Y4EqlhRY2ygEr_e7aO8POXNPT9pM,41100
|
86
86
|
packages/cloud-web-browser/manifest.json,sha256=vyZ9c7Mg5PSuONT73mXws4-ORs1w00ePlOcAB3IZMzY,466
|
87
87
|
packages/cloud-web-browser/requirements.txt,sha256=fJMjUewTqhrVMoy734e3uwA1AhVxG1u8Pet_D3TSdBY,73
|
88
|
-
packages/
|
89
|
-
packages/
|
90
|
-
packages/pycloudos/manifest.json,sha256=jjivrfRUlo2ipI_QFSLrgAM9VdlhwPB2mTJCEKIDP98,260
|
91
|
-
packages/pycloudos/requirements-dev.txt,sha256=D9r0n97UiKI2WMGn3e1X3QbiuBtCl7liTqcqZIfPE-M,694
|
92
|
-
packages/pycloudos/requirements.txt,sha256=iBip529tp83ajHyc8KqMu-_Slb1cm0axA-prNGv28Rc,920
|
93
|
-
packages/pycloudos/setup_deps.py,sha256=PwUEtxhI5GraHyijk-MzprW8YuZ7WW2jPNJfToneQ_U,15704
|
94
|
-
packages/pycloudos/core/appmon.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
88
|
+
packages/luaozgur-moba/README.md,sha256=2RNl9ktItig8oyJ-5zlGJKZ2VmXChm_3nQ-jaTrrQZ8,4748
|
89
|
+
packages/luaozgur-moba/manifest.json,sha256=BgWmBivindydMZ30sGZ9YWYKnpTCmjDuTSNVZMTf4zg,195
|
95
90
|
packages/pycloudos/pycloud_fs/home/Desktop/test_desktop_file.txt,sha256=LvjhwaBxBTeku1o2WR0h7ZC279Kt8QAziSb38mugFn4,310
|
96
91
|
packages/pycloudos/pycloud_fs/home/default/Desktop/test_dosya.txt,sha256=tf2u7NK3XncTupFd2s6lS36KL2L-bFiyCU-QmfEOFsc,26
|
97
92
|
packages/pycloudos/pycloud_fs/home/default/Desktop/test_script.py,sha256=tWTm9LKQvOm-OFfaTYFmFqHmpC0T-febz_Tqxq2Ip08,273
|
98
|
-
packages/pycloudos/rain/__init__.py,sha256=u35vfNWqD-kBA9Mt2oVj33JUTX32_AABchnz215WTPo,139
|
99
|
-
packages/pycloudos/rain/contextmenu.py,sha256=aCNgi8NO3xzJQIhnXAs2uOzFZR4NKCu0uycoQexhjg4,57145
|
100
|
-
packages/pycloudos/rain/desktop.py,sha256=9ernG5NZ6epLw868suTZ2OI3DeAXG6Y7e0sO3MaY8cw,21733
|
101
|
-
packages/pycloudos/rain/dock.py,sha256=DVeVuiaD9iarIFbUMs1KmjCBCx9q5k-5Eud1WzUtvRI,28000
|
102
|
-
packages/pycloudos/rain/flet_html_widgets.py,sha256=USnX7O3cb6vt9BET1jtrbChsAkYfKLlglEW9rC3XIQg,54003
|
103
|
-
packages/pycloudos/rain/theme.py,sha256=hVJuVqr19UpDcjc6Pit_-3yhGmEHRdW6IlcugFe0hHQ,31782
|
104
|
-
packages/pycloudos/rain/topbar.py,sha256=ZrIHhxvSPpMiiv1yi_tPwPP96DpRwxDkjKmurX0omZU,57189
|
105
|
-
packages/pycloudos/rain/ui.py,sha256=EDE4QeQ3Xf589l4TpFI9FglVctXh0nx4dvCRrpnLnMw,14492
|
106
|
-
packages/pycloudos/rain/wallpaper.py,sha256=mCXF40K0HaKXUOM7Bx3VP2SOe-WY_MsvHUJSDuoNtm8,31075
|
107
|
-
packages/pycloudos/rain/widgets.py,sha256=UQamzv7vmmfRSeoKr7hFD4uNjRNz_2oeWlAPQeyImE4,23775
|
108
|
-
packages/pycloudos/rain/windowmanager.py,sha256=vPPDCi8cywSOGXSVuV2LY5JrwEIuJzHpKMUl3YfEGbM,22206
|
109
93
|
packages/test-app-2/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
110
94
|
packages/test-app-2/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
111
95
|
packages/test-app-2/manifest.json,sha256=dzxPwC-GebvxX9DodLAtdRB0WsZBm204uGGsHbpGhyY,286
|
@@ -140,8 +124,8 @@ test-app/packages/test-app/manifest.json,sha256=_oJaNcbc7RINIQZ8ivzp3I75hUU2pth1
|
|
140
124
|
test-app-2/README.md,sha256=AqVgCZ-cwXBuDHFoJdYkAHAuB6SjSjqXQrjhLu0q7cc,964
|
141
125
|
test-app-2/main.py,sha256=24IEuyHSuPWJp2-xYhInUNEWqeueGxAO3NBgHkEgLdQ,1562
|
142
126
|
test-app-2/manifest.json,sha256=dzxPwC-GebvxX9DodLAtdRB0WsZBm204uGGsHbpGhyY,286
|
143
|
-
clapp_pm-1.0.
|
144
|
-
clapp_pm-1.0.
|
145
|
-
clapp_pm-1.0.
|
146
|
-
clapp_pm-1.0.
|
147
|
-
clapp_pm-1.0.
|
127
|
+
clapp_pm-1.0.46.dist-info/METADATA,sha256=VNOexwOI3SwxwIrDk1j2sjPSSbRbIst2h8iL62Evwu8,3983
|
128
|
+
clapp_pm-1.0.46.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
129
|
+
clapp_pm-1.0.46.dist-info/entry_points.txt,sha256=7j-3pQVpQfnaVzUV83g7zlCA30ePlnXkhHLAGGz9xrQ,36
|
130
|
+
clapp_pm-1.0.46.dist-info/top_level.txt,sha256=-nbfxZD1zt1LMxzElOZyNhKpdwHhZD-d5ZWrwIArCtE,495
|
131
|
+
clapp_pm-1.0.46.dist-info/RECORD,,
|
manifest_schema.py
CHANGED
@@ -64,7 +64,7 @@ def validate_manifest(manifest):
|
|
64
64
|
return False
|
65
65
|
except ImportError:
|
66
66
|
# Fallback: Temel diller
|
67
|
-
if manifest['language'] not in ['python', 'lua', 'dart', 'go', 'rust', 'node', 'bash', 'perl', 'ruby', 'php']:
|
67
|
+
if manifest['language'] not in ['python', 'lua', 'love2d', 'dart', 'go', 'rust', 'node', 'bash', 'perl', 'ruby', 'php']:
|
68
68
|
return False
|
69
69
|
|
70
70
|
# Opsiyonel alanları kontrol et (varsa)
|
manifest_validator.py
CHANGED
@@ -39,7 +39,7 @@ def validate_manifest_verbose(manifest):
|
|
39
39
|
elif field == "language":
|
40
40
|
if not isinstance(value, str):
|
41
41
|
errors.append(f"'{field}' alanı string olmalı")
|
42
|
-
elif value.lower() not in ["python", "lua", "dart", "go", "rust", "node", "bash", "perl", "ruby", "php"]:
|
42
|
+
elif value.lower() not in ["python", "lua", "love2d", "dart", "go", "rust", "node", "bash", "perl", "ruby", "php"]:
|
43
43
|
errors.append(f"'{field}' alanı desteklenen bir dil olmalı, '{value}' geçersiz")
|
44
44
|
elif field == "entry":
|
45
45
|
if not isinstance(value, str) or not value.strip():
|
package_runner.py
CHANGED
@@ -47,6 +47,7 @@ class LanguageRunner:
|
|
47
47
|
LANGUAGE_RUNNERS: Dict[str, LanguageRunner] = {
|
48
48
|
'python': LanguageRunner('Python', 'python', '.py'),
|
49
49
|
'lua': LanguageRunner('Lua', 'lua', '.lua'),
|
50
|
+
'love2d': LanguageRunner('Love2D', 'love', '.lua'), # Love2D için özel runner
|
50
51
|
'dart': LanguageRunner('Dart', 'dart', '.dart'),
|
51
52
|
'go': LanguageRunner('Go', 'go', '.go'),
|
52
53
|
'rust': LanguageRunner('Rust', 'cargo', '.rs'),
|
@@ -0,0 +1,159 @@
|
|
1
|
+
# Lua Özgür MOBA
|
2
|
+
|
3
|
+
League of Legends benzeri bir MOBA oyunu, Lua dili ve LÖVE2D framework'ü ile geliştirilmiştir.
|
4
|
+
|
5
|
+
## 🎮 Oyun Özellikleri
|
6
|
+
|
7
|
+
- **20 Farklı Karakter**: 5 kategoriye ayrılmış karakterler
|
8
|
+
- 🧙♂️ **Büyücüler**: Yüksek hasar, düşük can
|
9
|
+
- ⚔️ **Savaşçılar**: Dengeli hasar ve can
|
10
|
+
- 🏹 **Nişancılar**: Uzun mesafe, yüksek hasar
|
11
|
+
- 🛡️ **Destekler**: Düşük hasar, yardımcı yetenekler
|
12
|
+
- 🛡️ **Tanklar**: Düşük hasar, yüksek can ve savunma
|
13
|
+
|
14
|
+
- **3 Şeritli Harita**: Üst, Orta, Alt şeritler
|
15
|
+
- **Kule Sistemi**: Her şeritte 6 kule (3'er tane her takım için)
|
16
|
+
- **Minion Sistemi**: Otomatik spawn eden minionlar
|
17
|
+
- **Savaş Sistemi**: Otomatik saldırı ve hasar hesaplama
|
18
|
+
- **Görsel Efektler**: Hasar göstergeleri ve animasyonlar
|
19
|
+
|
20
|
+
## 🚀 Kurulum
|
21
|
+
|
22
|
+
### Gereksinimler
|
23
|
+
- [LÖVE2D](https://love2d.org/) (0.11.0 veya üzeri)
|
24
|
+
|
25
|
+
### Kurulum Adımları
|
26
|
+
|
27
|
+
1. **LÖVE2D'yi indirin ve kurun**
|
28
|
+
```bash
|
29
|
+
# macOS için (Homebrew ile)
|
30
|
+
brew install love
|
31
|
+
|
32
|
+
# Windows için
|
33
|
+
# https://love2d.org/ adresinden indirin
|
34
|
+
|
35
|
+
# Linux için
|
36
|
+
sudo apt-get install love
|
37
|
+
```
|
38
|
+
|
39
|
+
2. **Projeyi çalıştırın**
|
40
|
+
```bash
|
41
|
+
# Proje dizininde
|
42
|
+
love .
|
43
|
+
|
44
|
+
# Veya
|
45
|
+
love /path/to/luaozgur
|
46
|
+
```
|
47
|
+
|
48
|
+
## 🎯 Oynanış
|
49
|
+
|
50
|
+
### Kontroller
|
51
|
+
- **Sol Tık**: Karakter seç / Hareket et
|
52
|
+
- **ESC**: Menüye dön
|
53
|
+
- **ENTER**: Oyunu başlat
|
54
|
+
|
55
|
+
### Oyun Kuralları
|
56
|
+
1. **Amaç**: Düşman kulelerini yıkarak üslerine ulaşmak
|
57
|
+
2. **Şeritler**: 3 farklı şerit (Üst, Orta, Alt)
|
58
|
+
3. **Minionlar**: Her 30 saniyede otomatik spawn olur
|
59
|
+
4. **Savaş**: Karakterler otomatik olarak düşmanlara saldırır
|
60
|
+
5. **Kazanma**: Tüm düşman kulelerini yıkan takım kazanır
|
61
|
+
|
62
|
+
### Karakter Seçimi
|
63
|
+
- Ana menüden "Karakter Seç" butonuna tıklayın
|
64
|
+
- 20 farklı karakterden birini seçin
|
65
|
+
- Takımınızı belirleyin (Mavi/Kırmızı)
|
66
|
+
- "Oyunu Başlat" ile oyuna başlayın
|
67
|
+
|
68
|
+
## 🏗️ Proje Yapısı
|
69
|
+
|
70
|
+
```
|
71
|
+
luaozgur/
|
72
|
+
├── main.lua # Ana oyun dosyası
|
73
|
+
├── game.lua # Oyun mantığı
|
74
|
+
├── menu.lua # Menü sistemi
|
75
|
+
├── characters.lua # Karakter tanımları
|
76
|
+
├── map.lua # Harita ve kule sistemi
|
77
|
+
└── README.md # Bu dosya
|
78
|
+
```
|
79
|
+
|
80
|
+
## 🎨 Karakter Kategorileri
|
81
|
+
|
82
|
+
### Büyücüler (4 karakter)
|
83
|
+
- **Ateş Büyücüsü**: Yüksek hasar, ateş temalı yetenekler
|
84
|
+
- **Buz Büyücüsü**: Kontrol odaklı, donma efektleri
|
85
|
+
- **Şimşek Büyücüsü**: Hızlı saldırılar, elektrik hasarı
|
86
|
+
- **Karanlık Büyücü**: Gölge saldırıları, karanlık büyüler
|
87
|
+
|
88
|
+
### Savaşçılar (4 karakter)
|
89
|
+
- **Kılıç Ustası**: Dengeli savaşçı, keskin vuruşlar
|
90
|
+
- **Çift Kılıçlı**: Hızlı saldırılar, çifte vuruş
|
91
|
+
- **Balta Savaşçısı**: Güçlü vuruşlar, ağır hasar
|
92
|
+
- **Mızrak Savaşçısı**: Uzun mesafe, savunma odaklı
|
93
|
+
|
94
|
+
### Nişancılar (4 karakter)
|
95
|
+
- **Okçu**: Temel nişancı, hızlı ok atışları
|
96
|
+
- **Keskin Nişancı**: Uzun mesafe, kritik vuruşlar
|
97
|
+
- **Çapraz Yay**: Mobil nişancı, çapraz atışlar
|
98
|
+
- **Tüfekçi**: Hızlı ateş, mermi yağmuru
|
99
|
+
|
100
|
+
### Destekler (4 karakter)
|
101
|
+
- **Şifa Büyücüsü**: İyileştirme, koruyucu kalkanlar
|
102
|
+
- **Koruyucu**: Savunma odaklı, güçlendirme
|
103
|
+
- **Kontrol Büyücüsü**: Yavaşlatma, köleleştirme
|
104
|
+
- **Taktik Uzmanı**: Grup koordinasyonu, strateji
|
105
|
+
|
106
|
+
### Tanklar (4 karakter)
|
107
|
+
- **Demir Dev**: Yüksek savunma, demir yumruk
|
108
|
+
- **Kaya Savaşçısı**: Taş temalı, sertleşme
|
109
|
+
- **Zırh Savaşçısı**: Ağır zırh, savunma modu
|
110
|
+
- **Golem**: En yüksek can, yıkıcı saldırılar
|
111
|
+
|
112
|
+
## 🔧 Geliştirme
|
113
|
+
|
114
|
+
### Yeni Karakter Ekleme
|
115
|
+
`characters.lua` dosyasında `Characters.DATA` tablosuna yeni karakter ekleyin:
|
116
|
+
|
117
|
+
```lua
|
118
|
+
{
|
119
|
+
name = "Yeni Karakter",
|
120
|
+
category = Characters.CATEGORIES.MAGE, -- veya diğer kategoriler
|
121
|
+
health = 500,
|
122
|
+
mana = 800,
|
123
|
+
attack = 60,
|
124
|
+
defense = 30,
|
125
|
+
speed = 1.2,
|
126
|
+
range = 150,
|
127
|
+
abilities = {"Yetenek 1", "Yetenek 2", "Yetenek 3"},
|
128
|
+
color = {1, 0.3, 0.3} -- RGB renk değerleri
|
129
|
+
}
|
130
|
+
```
|
131
|
+
|
132
|
+
### Yeni Harita Ekleme
|
133
|
+
`map.lua` dosyasında `GameMap:setupTowers()` fonksiyonunu düzenleyin.
|
134
|
+
|
135
|
+
## 🐛 Bilinen Sorunlar
|
136
|
+
|
137
|
+
- Karakterler bazen birbirine takılabilir
|
138
|
+
- Minion AI basit seviyededir
|
139
|
+
- Görsel efektler sınırlıdır
|
140
|
+
|
141
|
+
## 📝 Lisans
|
142
|
+
|
143
|
+
Bu proje eğitim amaçlı geliştirilmiştir. LÖVE2D framework'ü MIT lisansı altındadır.
|
144
|
+
|
145
|
+
## 🤝 Katkıda Bulunma
|
146
|
+
|
147
|
+
1. Fork yapın
|
148
|
+
2. Feature branch oluşturun (`git checkout -b feature/yeni-ozellik`)
|
149
|
+
3. Commit yapın (`git commit -am 'Yeni özellik eklendi'`)
|
150
|
+
4. Push yapın (`git push origin feature/yeni-ozellik`)
|
151
|
+
5. Pull Request oluşturun
|
152
|
+
|
153
|
+
## 📞 İletişim
|
154
|
+
|
155
|
+
Sorularınız için issue açabilir veya iletişime geçebilirsiniz.
|
156
|
+
|
157
|
+
---
|
158
|
+
|
159
|
+
**Lua Özgür MOBA** - League of Legends benzeri MOBA oyunu 🎮
|
version.py
CHANGED
packages/pycloudos/README.md
DELETED
@@ -1,279 +0,0 @@
|
|
1
|
-
# 🌩️ PyCloud OS
|
2
|
-
|
3
|
-
Modern, Python tabanlı, macOS benzeri işletim sistemi. Modüler mimarisi, güçlü GUI sistemi ve kapsamlı uygulama ekosistemine sahiptir.
|
4
|
-
|
5
|
-
## ✨ Özellikler
|
6
|
-
|
7
|
-
### 🖥️ Rain UI System
|
8
|
-
- **Dock**: Uygulamalara hızlı erişim, live preview, sürükle-bırak desteği
|
9
|
-
- **Topbar**: Sistem kontrolleri, bildirimler, kullanıcı menüsü
|
10
|
-
- **Desktop**: Özelleştirilebilir masaüstü, wallpaper yönetimi
|
11
|
-
- **Context Menu**: Dosya ve uygulama işlemleri için sağ tık menüleri
|
12
|
-
|
13
|
-
### 📱 Core Applications
|
14
|
-
- **Cloud Files**: Dosya yöneticisi (Finder benzeri)
|
15
|
-
- **Cloud Terminal**: Modern terminal uygulaması
|
16
|
-
- **Cloud Browser**: WebEngine tabanlı web tarayıcısı
|
17
|
-
- **Cloud PyIDE**: Python geliştirme ortamı
|
18
|
-
- **Cloud Settings**: Sistem ayarları ve konfigürasyon
|
19
|
-
- **Cloud Task Manager**: Sistem izleme ve görev yöneticisi
|
20
|
-
|
21
|
-
### 📦 Clapp Package System
|
22
|
-
- **Clapp Store**: Uygulama mağazası ve paket yöneticisi
|
23
|
-
- **App Explorer**: Kurulu uygulamaları keşfetme ve yönetme
|
24
|
-
- **.app Format**: Standart uygulama paket formatı
|
25
|
-
|
26
|
-
### 🛠️ Developer Features
|
27
|
-
- **Modüler Mimari**: Bağımsız core modüller
|
28
|
-
- **Event System**: Modüller arası iletişim
|
29
|
-
- **Plugin Support**: Genişletilebilir uygulama sistemi
|
30
|
-
- **Theme System**: Özelleştirilebilir görünüm
|
31
|
-
|
32
|
-
## 🚀 Kurulum
|
33
|
-
|
34
|
-
### Gereksinimler
|
35
|
-
|
36
|
-
- **Python 3.8+**
|
37
|
-
- **PyQt6** (GUI için)
|
38
|
-
- **psutil** (sistem izleme için)
|
39
|
-
|
40
|
-
### Otomatik Kurulum
|
41
|
-
|
42
|
-
```bash
|
43
|
-
# Repository'yi klonlayın
|
44
|
-
git clone https://github.com/your-username/pycloud-os.git
|
45
|
-
cd pycloud-os
|
46
|
-
|
47
|
-
# Bağımlılıkları otomatik kontrol et ve yükle
|
48
|
-
python setup_deps.py
|
49
|
-
|
50
|
-
# PyCloud OS'i başlat
|
51
|
-
python main.py
|
52
|
-
```
|
53
|
-
|
54
|
-
### Manuel Kurulum
|
55
|
-
|
56
|
-
```bash
|
57
|
-
# Temel bağımlılıkları yükle
|
58
|
-
pip install -r requirements.txt
|
59
|
-
|
60
|
-
# Geliştirme bağımlılıkları (opsiyonel)
|
61
|
-
pip install -r requirements-dev.txt
|
62
|
-
```
|
63
|
-
|
64
|
-
### Bağımlılık Listesi
|
65
|
-
|
66
|
-
#### Gerekli Paketler
|
67
|
-
- `PyQt6>=6.4.0` - GUI framework
|
68
|
-
- `PyQt6-WebEngine>=6.4.0` - Web browser desteği
|
69
|
-
- `psutil>=5.9.0` - Sistem izleme
|
70
|
-
- `requests>=2.28.0` - HTTP istekleri
|
71
|
-
- `Pillow>=9.0.0` - Resim işleme
|
72
|
-
- `pyserial>=3.5` - Seri port desteği
|
73
|
-
- `Flask>=2.2.0` - PyIDE şablonları için
|
74
|
-
|
75
|
-
#### Standart Python Kütüphaneleri
|
76
|
-
- `json`, `os`, `sys`, `pathlib`, `typing`
|
77
|
-
- `datetime`, `logging`, `threading`, `time`
|
78
|
-
- `subprocess`, `shutil`, `zipfile`, `urllib`
|
79
|
-
- `hashlib`, `uuid`, `enum`, `dataclasses`
|
80
|
-
|
81
|
-
## 🎯 Kullanım
|
82
|
-
|
83
|
-
### İlk Başlatma
|
84
|
-
|
85
|
-
1. **Sistem Başlatma**:
|
86
|
-
```bash
|
87
|
-
python main.py
|
88
|
-
```
|
89
|
-
|
90
|
-
2. **Kullanıcı Girişi**: Demo kullanıcısı ile giriş yapın
|
91
|
-
|
92
|
-
3. **Uygulamaları Keşfetme**: Topbar'daki "Uygulamalar" menüsünden
|
93
|
-
|
94
|
-
### Uygulama Yönetimi
|
95
|
-
|
96
|
-
#### Clapp Komut Satırı
|
97
|
-
```bash
|
98
|
-
# Mevcut uygulamaları listele
|
99
|
-
python -m clapp.core list
|
100
|
-
|
101
|
-
# Yeni uygulama yükle
|
102
|
-
python -m clapp.core install <app_package>
|
103
|
-
|
104
|
-
# Uygulama kaldır
|
105
|
-
python -m clapp.core remove <app_id>
|
106
|
-
|
107
|
-
# Sistem durumu kontrol et
|
108
|
-
python -m clapp.core doctor
|
109
|
-
```
|
110
|
-
|
111
|
-
#### App Store UI
|
112
|
-
- Topbar → "☁️ PyCloud" → "App Store"
|
113
|
-
- Kategori bazlı uygulama gezinme
|
114
|
-
- Tek tıkla kurulum ve kaldırma
|
115
|
-
|
116
|
-
### Geliştirme
|
117
|
-
|
118
|
-
#### Yeni Uygulama Oluşturma
|
119
|
-
|
120
|
-
1. **Uygulama Klasörü Oluşturun**:
|
121
|
-
```
|
122
|
-
apps/my_app/
|
123
|
-
├── app.json
|
124
|
-
├── main.py
|
125
|
-
├── icon.png
|
126
|
-
└── README.md
|
127
|
-
```
|
128
|
-
|
129
|
-
2. **app.json Yapılandırması**:
|
130
|
-
```json
|
131
|
-
{
|
132
|
-
"id": "my_app",
|
133
|
-
"name": "My Application",
|
134
|
-
"version": "1.0.0",
|
135
|
-
"description": "My awesome app for PyCloud OS",
|
136
|
-
"entry": "main.py",
|
137
|
-
"exec": "python3 main.py",
|
138
|
-
"requires": ["python3", "pyqt6"],
|
139
|
-
"category": "Utilities"
|
140
|
-
}
|
141
|
-
```
|
142
|
-
|
143
|
-
3. **main.py Launcher**:
|
144
|
-
```python
|
145
|
-
import sys
|
146
|
-
from pathlib import Path
|
147
|
-
sys.path.insert(0, str(Path(__file__).parent.parent.parent))
|
148
|
-
|
149
|
-
from my_app_module import run_app
|
150
|
-
|
151
|
-
if __name__ == "__main__":
|
152
|
-
sys.exit(run_app())
|
153
|
-
```
|
154
|
-
|
155
|
-
#### Core Modül Geliştirme
|
156
|
-
|
157
|
-
```python
|
158
|
-
# core/my_module.py
|
159
|
-
class MyModule:
|
160
|
-
def __init__(self, kernel):
|
161
|
-
self.kernel = kernel
|
162
|
-
self.logger = logging.getLogger("MyModule")
|
163
|
-
|
164
|
-
def initialize(self):
|
165
|
-
# Modül başlatma
|
166
|
-
pass
|
167
|
-
|
168
|
-
def shutdown(self):
|
169
|
-
# Temizlik işlemleri
|
170
|
-
pass
|
171
|
-
|
172
|
-
def init_my_module(kernel):
|
173
|
-
return MyModule(kernel)
|
174
|
-
```
|
175
|
-
|
176
|
-
## 🗂️ Proje Yapısı
|
177
|
-
|
178
|
-
```
|
179
|
-
pycloud-os/
|
180
|
-
├── core/ # Çekirdek modüller
|
181
|
-
│ ├── kernel.py # Ana çekirdek
|
182
|
-
│ ├── fs/ # Dosya sistemi
|
183
|
-
│ ├── users.py # Kullanıcı yönetimi
|
184
|
-
│ ├── process.py # Süreç yönetimi
|
185
|
-
│ └── ...
|
186
|
-
├── rain/ # UI sistem bileşenleri
|
187
|
-
│ ├── ui.py # Ana UI yöneticisi
|
188
|
-
│ ├── desktop.py # Masaüstü
|
189
|
-
│ ├── dock.py # Dock
|
190
|
-
│ ├── topbar.py # Üst çubuk
|
191
|
-
│ └── ...
|
192
|
-
├── cloud/ # Core uygulamalar
|
193
|
-
│ ├── files.py # Dosya yöneticisi
|
194
|
-
│ ├── terminal.py # Terminal
|
195
|
-
│ ├── browser.py # Web tarayıcısı
|
196
|
-
│ └── ...
|
197
|
-
├── clapp/ # Paket yönetim sistemi
|
198
|
-
│ ├── core.py # Paket yöneticisi
|
199
|
-
│ ├── repo.py # Repository yönetimi
|
200
|
-
│ └── ui.py # App Store UI
|
201
|
-
├── apps/ # .app uygulamaları
|
202
|
-
│ ├── cloud_files/
|
203
|
-
│ ├── cloud_terminal/
|
204
|
-
│ └── ...
|
205
|
-
├── system/ # Sistem dosyaları
|
206
|
-
│ ├── config/ # Yapılandırma
|
207
|
-
│ ├── wallpapers/ # Duvar kağıtları
|
208
|
-
│ └── themes/ # Temalar
|
209
|
-
├── requirements.txt # Production bağımlılıkları
|
210
|
-
├── requirements-dev.txt # Development bağımlılıkları
|
211
|
-
├── setup_deps.py # Bağımlılık kurulum scripti
|
212
|
-
└── main.py # Ana başlatıcı
|
213
|
-
```
|
214
|
-
|
215
|
-
## 🧪 Testing
|
216
|
-
|
217
|
-
```bash
|
218
|
-
# Unit testleri çalıştır
|
219
|
-
python -m pytest
|
220
|
-
|
221
|
-
# Coverage raporu
|
222
|
-
python -m pytest --cov=core --cov=rain --cov=cloud
|
223
|
-
|
224
|
-
# Linting
|
225
|
-
python -m flake8 core/ rain/ cloud/
|
226
|
-
python -m black --check .
|
227
|
-
```
|
228
|
-
|
229
|
-
## 📚 Dokümantasyon
|
230
|
-
|
231
|
-
```bash
|
232
|
-
# Sphinx dokümantasyonu oluştur
|
233
|
-
cd docs/
|
234
|
-
make html
|
235
|
-
|
236
|
-
# Dokümantasyonu görüntüle
|
237
|
-
open _build/html/index.html
|
238
|
-
```
|
239
|
-
|
240
|
-
## 🤝 Katkıda Bulunma
|
241
|
-
|
242
|
-
1. Repository'yi fork edin
|
243
|
-
2. Feature branch oluşturun (`git checkout -b feature/amazing-feature`)
|
244
|
-
3. Değişikliklerinizi commit edin (`git commit -m 'Add amazing feature'`)
|
245
|
-
4. Branch'inizi push edin (`git push origin feature/amazing-feature`)
|
246
|
-
5. Pull Request oluşturun
|
247
|
-
|
248
|
-
### Development Setup
|
249
|
-
|
250
|
-
```bash
|
251
|
-
# Development bağımlılıklarını yükle
|
252
|
-
pip install -r requirements-dev.txt
|
253
|
-
|
254
|
-
# Pre-commit hooks kur
|
255
|
-
pre-commit install
|
256
|
-
|
257
|
-
# Code formatting
|
258
|
-
black .
|
259
|
-
isort .
|
260
|
-
```
|
261
|
-
|
262
|
-
## 📄 Lisans
|
263
|
-
|
264
|
-
Bu proje MIT lisansı altında lisanslanmıştır - detaylar için [LICENSE](LICENSE) dosyasına bakın.
|
265
|
-
|
266
|
-
## 🙏 Teşekkürler
|
267
|
-
|
268
|
-
- **PyQt6**: Güçlü GUI framework
|
269
|
-
- **Python Community**: Harika ecosystem
|
270
|
-
- **macOS**: Design inspiration
|
271
|
-
|
272
|
-
## 📞 İletişim
|
273
|
-
|
274
|
-
- **GitHub Issues**: Bug raporları ve feature istekleri
|
275
|
-
- **Discussions**: Genel sorular ve tartışmalar
|
276
|
-
|
277
|
-
---
|
278
|
-
|
279
|
-
**PyCloud OS** - Python ile modern işletim sistemi deneyimi 🌩️
|
File without changes
|