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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bash-script-maker
3
- Version: 1.4.5
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,,