bash-script-maker 1.4.5__py3-none-any.whl → 1.5.0__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.
- {bash_script_maker-1.4.5.dist-info → bash_script_maker-1.5.0.dist-info}/METADATA +2 -37
- bash_script_maker-1.5.0.dist-info/RECORD +11 -0
- bash_script_maker.py +63 -0
- bash_script_maker-1.4.5.dist-info/RECORD +0 -11
- {bash_script_maker-1.4.5.dist-info → bash_script_maker-1.5.0.dist-info}/LICENSE +0 -0
- {bash_script_maker-1.4.5.dist-info → bash_script_maker-1.5.0.dist-info}/WHEEL +0 -0
- {bash_script_maker-1.4.5.dist-info → bash_script_maker-1.5.0.dist-info}/entry_points.txt +0 -0
- {bash_script_maker-1.4.5.dist-info → bash_script_maker-1.5.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: bash-script-maker
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.5.0
|
4
4
|
Summary: Ein GUI-Programm zur Erstellung von Bash-Scripts mit visueller Unterstützung
|
5
5
|
Home-page: https://github.com/securebitsorg/bash-script-maker
|
6
6
|
Author: Marcel Dellmann
|
@@ -31,6 +31,7 @@ Description-Content-Type: text/markdown
|
|
31
31
|
License-File: LICENSE
|
32
32
|
Requires-Dist: ttkbootstrap>=1.10.1
|
33
33
|
Requires-Dist: pygments>=2.15.1
|
34
|
+
Requires-Dist: Pillow>=9.0.0
|
34
35
|
Provides-Extra: dev
|
35
36
|
Requires-Dist: pytest>=6.0.0; extra == "dev"
|
36
37
|
Requires-Dist: pytest-cov>=2.10.0; extra == "dev"
|
@@ -108,33 +109,6 @@ Ein benutzerfreundliches GUI-Programm zur Erstellung von Bash-Scripts mit visuel
|
|
108
109
|
- Zenity (für Dialog-Funktionen)
|
109
110
|
- Linux-Distribution mit apt, dnf, pacman oder ähnlichem Paketmanager
|
110
111
|
|
111
|
-
### Flatpak-Installation (Empfohlen)
|
112
|
-
|
113
|
-
**Flatpak ist die modernste und sicherste Installationsmethode:**
|
114
|
-
|
115
|
-
```bash
|
116
|
-
# Flatpak installieren (falls noch nicht vorhanden)
|
117
|
-
sudo dnf install flatpak # Fedora/RHEL
|
118
|
-
sudo apt install flatpak # Ubuntu/Debian
|
119
|
-
sudo pacman -S flatpak # Arch Linux
|
120
|
-
|
121
|
-
# Flathub-Repository hinzufügen
|
122
|
-
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
123
|
-
|
124
|
-
# App installieren (wenn verfügbar)
|
125
|
-
flatpak install flathub org.securebits.bashscriptmaker
|
126
|
-
|
127
|
-
# App starten
|
128
|
-
flatpak run org.securebits.bashscriptmaker
|
129
|
-
```
|
130
|
-
|
131
|
-
**Vorteile von Flatpak:**
|
132
|
-
- ✅ Vollständig sandboxed und sicher
|
133
|
-
- ✅ Automatische Updates
|
134
|
-
- ✅ Keine System-Abhängigkeiten
|
135
|
-
- ✅ Funktioniert auf allen Linux-Distributionen
|
136
|
-
- ✅ Desktop-Integration inklusive
|
137
|
-
|
138
112
|
### Automatische Installation mit Desktop-Integration
|
139
113
|
|
140
114
|
**Empfohlene Methode (automatische Erkennung):**
|
@@ -158,15 +132,6 @@ Für Fedora/RHEL/CentOS-basierte Systeme:
|
|
158
132
|
./install_dnf.sh
|
159
133
|
```
|
160
134
|
|
161
|
-
### Flatpak-Paket selbst erstellen
|
162
|
-
|
163
|
-
```bash
|
164
|
-
# Flatpak-Paket lokal erstellen
|
165
|
-
./build_flatpak.sh
|
166
|
-
|
167
|
-
# Erstelltes Paket installieren
|
168
|
-
flatpak install build/flatpak/bash-script-maker.flatpak
|
169
|
-
```
|
170
135
|
|
171
136
|
### Nur Desktop-Integration installieren
|
172
137
|
|
@@ -0,0 +1,11 @@
|
|
1
|
+
assets.py,sha256=QMUllYA8CPAdu5ulDGRZm3opmimFSSAllUCol_RylmA,1012
|
2
|
+
bash_script_maker.py,sha256=p6lfusRj9Uvt-fMiAqhRJ5DIWKqBLfZV3ksJcm_64I0,33786
|
3
|
+
custom_dialogs.py,sha256=Rr3jXuuZFRDNSBiM2sHcKhix3yiacvQkp6eluozwzmk,9243
|
4
|
+
localization.py,sha256=6Dbyf8qG-p6_vUDPoBTtVBnSixO7_gLVtPnuIC4Fchs,1344
|
5
|
+
syntax_highlighter.py,sha256=1umHO8lhhb_FxomXS3Yiub-KTWtBymt60ct5Www3boU,34954
|
6
|
+
bash_script_maker-1.5.0.dist-info/LICENSE,sha256=G-uFRliqQDtsMvClHiUhNBw84dKRzqodui4tIRPJta8,2334
|
7
|
+
bash_script_maker-1.5.0.dist-info/METADATA,sha256=6BZ7Vn1YVBO2ZScTNOZB-JrzZtuPE9Rbbl3T1LdnUm8,14847
|
8
|
+
bash_script_maker-1.5.0.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
9
|
+
bash_script_maker-1.5.0.dist-info/entry_points.txt,sha256=jof_Nbub3hvayvOeVKrYpFDadAkCSUA3rqT7n61WED8,119
|
10
|
+
bash_script_maker-1.5.0.dist-info/top_level.txt,sha256=aQp35H7s1JAeQ5IhRLDUS7D-u5ob4IEsGv4ItOv5Afo,72
|
11
|
+
bash_script_maker-1.5.0.dist-info/RECORD,,
|
bash_script_maker.py
CHANGED
@@ -236,6 +236,9 @@ class BashScriptMaker:
|
|
236
236
|
self.root = root
|
237
237
|
self.root.title("Bash-Script-Maker")
|
238
238
|
self.root.geometry("1200x800")
|
239
|
+
|
240
|
+
# Icon setzen
|
241
|
+
self.set_window_icon()
|
239
242
|
|
240
243
|
# Variablen für den letzten Pfad
|
241
244
|
self.last_path = os.path.expanduser("~")
|
@@ -257,6 +260,66 @@ class BashScriptMaker:
|
|
257
260
|
+ "\n\n"
|
258
261
|
)
|
259
262
|
|
263
|
+
def set_window_icon(self):
|
264
|
+
"""Setzt das Fenster-Icon für Titelleiste und Taskleiste"""
|
265
|
+
try:
|
266
|
+
# Pfad zum Icon ermitteln
|
267
|
+
script_dir = os.path.dirname(os.path.abspath(__file__))
|
268
|
+
|
269
|
+
# Icon-Größen die wir haben
|
270
|
+
icon_sizes = [16, 32, 48, 64, 128]
|
271
|
+
icon_files = []
|
272
|
+
|
273
|
+
# Verfügbare Icon-Dateien sammeln
|
274
|
+
for size in icon_sizes:
|
275
|
+
icon_path = os.path.join(script_dir, "assets", f"bash-script-maker-{size}.png")
|
276
|
+
if os.path.exists(icon_path):
|
277
|
+
icon_files.append(icon_path)
|
278
|
+
|
279
|
+
# Fallback auf 16px Icon
|
280
|
+
if not icon_files:
|
281
|
+
fallback_path = os.path.join(script_dir, "assets", "bash-script-maker-16.png")
|
282
|
+
if os.path.exists(fallback_path):
|
283
|
+
icon_files.append(fallback_path)
|
284
|
+
|
285
|
+
if icon_files:
|
286
|
+
# PNG-Icons verwenden
|
287
|
+
try:
|
288
|
+
from PIL import Image, ImageTk
|
289
|
+
# Alle verfügbaren Icon-Größen laden
|
290
|
+
icons = []
|
291
|
+
|
292
|
+
for icon_path in icon_files:
|
293
|
+
img = Image.open(icon_path)
|
294
|
+
photo = ImageTk.PhotoImage(img)
|
295
|
+
icons.append(photo)
|
296
|
+
|
297
|
+
# Haupticon setzen (alle Größen)
|
298
|
+
self.root.iconphoto(True, *icons)
|
299
|
+
print(f"Icons gesetzt: {len(icons)} Größen")
|
300
|
+
|
301
|
+
except ImportError:
|
302
|
+
# Fallback ohne PIL - verwende größtes verfügbares Icon
|
303
|
+
try:
|
304
|
+
# Größtes Icon zuerst versuchen
|
305
|
+
best_icon = icon_files[-1] # Letztes in der Liste (größtes)
|
306
|
+
icon = tk.PhotoImage(file=best_icon)
|
307
|
+
self.root.iconphoto(True, icon)
|
308
|
+
print(f"Icon gesetzt (ohne PIL): {best_icon}")
|
309
|
+
except tk.TclError as e:
|
310
|
+
print(f"Fehler beim Laden des PNG-Icons: {e}")
|
311
|
+
|
312
|
+
else:
|
313
|
+
# Kein PNG gefunden, prüfe SVG
|
314
|
+
svg_icon_path = os.path.join(script_dir, "assets", "bash-script-maker.svg")
|
315
|
+
if os.path.exists(svg_icon_path):
|
316
|
+
print(f"SVG-Icon gefunden, aber PNG wird für Tkinter bevorzugt: {svg_icon_path}")
|
317
|
+
else:
|
318
|
+
print("Keine Icon-Datei gefunden in assets/")
|
319
|
+
|
320
|
+
except Exception as e:
|
321
|
+
print(f"Fehler beim Setzen des Icons: {e}")
|
322
|
+
|
260
323
|
def create_menu(self):
|
261
324
|
"""Erstellt das Menü der Anwendung"""
|
262
325
|
menubar = tk.Menu(self.root)
|
@@ -1,11 +0,0 @@
|
|
1
|
-
assets.py,sha256=QMUllYA8CPAdu5ulDGRZm3opmimFSSAllUCol_RylmA,1012
|
2
|
-
bash_script_maker.py,sha256=nMd-rEuQ5hRKQYggBcBsrygudl7aSz_xqOB43szoxRQ,31010
|
3
|
-
custom_dialogs.py,sha256=Rr3jXuuZFRDNSBiM2sHcKhix3yiacvQkp6eluozwzmk,9243
|
4
|
-
localization.py,sha256=6Dbyf8qG-p6_vUDPoBTtVBnSixO7_gLVtPnuIC4Fchs,1344
|
5
|
-
syntax_highlighter.py,sha256=1umHO8lhhb_FxomXS3Yiub-KTWtBymt60ct5Www3boU,34954
|
6
|
-
bash_script_maker-1.4.5.dist-info/LICENSE,sha256=G-uFRliqQDtsMvClHiUhNBw84dKRzqodui4tIRPJta8,2334
|
7
|
-
bash_script_maker-1.4.5.dist-info/METADATA,sha256=ey7RL5MbVwBT08uaLw-T0iaEudEMtD5qQ6j5XB0iJ5w,15785
|
8
|
-
bash_script_maker-1.4.5.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
9
|
-
bash_script_maker-1.4.5.dist-info/entry_points.txt,sha256=jof_Nbub3hvayvOeVKrYpFDadAkCSUA3rqT7n61WED8,119
|
10
|
-
bash_script_maker-1.4.5.dist-info/top_level.txt,sha256=aQp35H7s1JAeQ5IhRLDUS7D-u5ob4IEsGv4ItOv5Afo,72
|
11
|
-
bash_script_maker-1.4.5.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|