bash-script-maker 1.8.0__tar.gz → 1.9.0__tar.gz

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.
Files changed (49) hide show
  1. {bash-script-maker-1.8.0/bash_script_maker.egg-info → bash-script-maker-1.9.0}/PKG-INFO +1 -1
  2. bash-script-maker-1.9.0/VERSION +1 -0
  3. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/__version__.py +2 -2
  4. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0/bash_script_maker.egg-info}/PKG-INFO +1 -1
  5. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.py +136 -67
  6. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/install.sh +1 -1
  7. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/install_apt.sh +1 -1
  8. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/install_desktop_integration.sh +1 -1
  9. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/install_dnf.sh +1 -1
  10. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/pyproject.toml +1 -1
  11. bash-script-maker-1.8.0/VERSION +0 -1
  12. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/LICENSE +0 -0
  13. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/MANIFEST.in +0 -0
  14. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/README.md +0 -0
  15. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker-128.png +0 -0
  16. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker-16.png +0 -0
  17. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker-256.png +0 -0
  18. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker-32.png +0 -0
  19. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker-48.png +0 -0
  20. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker-64.png +0 -0
  21. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets/bash-script-maker.svg +0 -0
  22. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/assets.py +0 -0
  23. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash-script-maker.desktop +0 -0
  24. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.egg-info/SOURCES.txt +0 -0
  25. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.egg-info/dependency_links.txt +0 -0
  26. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.egg-info/entry_points.txt +0 -0
  27. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.egg-info/not-zip-safe +0 -0
  28. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.egg-info/requires.txt +0 -0
  29. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/bash_script_maker.egg-info/top_level.txt +0 -0
  30. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/beispiel_script.sh +0 -0
  31. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/compile_translations.py +0 -0
  32. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/create_release.sh +0 -0
  33. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/custom_dialogs.py +0 -0
  34. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/dev-requirements.txt +0 -0
  35. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/generate_icons.py +0 -0
  36. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/init_github.sh +0 -0
  37. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/locales/de/LC_MESSAGES/base.po +0 -0
  38. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/locales/en/LC_MESSAGES/base.po +0 -0
  39. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/localization.py +0 -0
  40. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/mein_script.sh +0 -0
  41. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/packages.txt +0 -0
  42. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/requirements.txt +0 -0
  43. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/setup.cfg +0 -0
  44. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/setup.py +0 -0
  45. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/setup_flatpak.py +0 -0
  46. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/start.sh +0 -0
  47. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/syntax_highlighter.py +0 -0
  48. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/test_installation.sh +0 -0
  49. {bash-script-maker-1.8.0 → bash-script-maker-1.9.0}/uninstall.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bash-script-maker
3
- Version: 1.8.0
3
+ Version: 1.9.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
@@ -0,0 +1 @@
1
+ 1.9.0
@@ -4,5 +4,5 @@
4
4
  Version information for Bash-Script-Maker
5
5
  """
6
6
 
7
- __version__ = "1.8.0"
8
- __version_info__ = (1, 8, 0)
7
+ __version__ = "1.9.0"
8
+ __version_info__ = (1, 9, 0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bash-script-maker
3
- Version: 1.8.0
3
+ Version: 1.9.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
@@ -134,7 +134,7 @@ class AboutDialog(ttk.Toplevel):
134
134
  # Logo und Titel-Bereich
135
135
  header_frame = ttk.Frame(container)
136
136
  header_frame.pack(fill=tk.X, pady=(0, 20))
137
-
137
+
138
138
  # Logo hinzufügen
139
139
  self.add_logo_to_header(header_frame)
140
140
 
@@ -192,10 +192,7 @@ class AboutDialog(ttk.Toplevel):
192
192
 
193
193
  # Schließen-Button
194
194
  close_btn = ttk.Button(
195
- container,
196
- text=_("Schließen"),
197
- command=self.destroy,
198
- bootstyle="primary"
195
+ container, text=_("Schließen"), command=self.destroy, bootstyle="primary"
199
196
  )
200
197
  close_btn.pack(pady=(20, 0))
201
198
 
@@ -204,36 +201,28 @@ class AboutDialog(ttk.Toplevel):
204
201
  try:
205
202
  script_dir = os.path.dirname(os.path.abspath(__file__))
206
203
  logo_path = os.path.join(script_dir, "assets", "bash-script-maker-64.png")
207
-
204
+
208
205
  if os.path.exists(logo_path):
209
206
  try:
210
207
  from PIL import Image, ImageTk
211
-
208
+
212
209
  # Logo für About-Dialog (64x64)
213
210
  img = Image.open(logo_path)
214
211
  logo_photo = ImageTk.PhotoImage(img)
215
-
212
+
216
213
  logo_label = ttk.Label(header_frame, image=logo_photo)
217
214
  logo_label.image = logo_photo # Referenz behalten
218
215
  logo_label.pack(anchor=tk.CENTER)
219
-
216
+
220
217
  except ImportError:
221
218
  # Fallback: Großes Emoji
222
- logo_label = ttk.Label(
223
- header_frame,
224
- text="🖥️",
225
- font=("Arial", 48)
226
- )
219
+ logo_label = ttk.Label(header_frame, text="🖥️", font=("Arial", 48))
227
220
  logo_label.pack(anchor=tk.CENTER)
228
221
  else:
229
222
  # Fallback: Emoji
230
- logo_label = ttk.Label(
231
- header_frame,
232
- text="🖥️",
233
- font=("Arial", 48)
234
- )
223
+ logo_label = ttk.Label(header_frame, text="🖥️", font=("Arial", 48))
235
224
  logo_label.pack(anchor=tk.CENTER)
236
-
225
+
237
226
  except Exception as e:
238
227
  print(f"Fehler beim Hinzufügen des Logos zum About-Dialog: {e}")
239
228
  # Minimaler Fallback
@@ -392,112 +381,192 @@ class BashScriptMaker:
392
381
  # Logo-Container für bessere Anordnung
393
382
  logo_container = ttk.Frame(toolbar)
394
383
  logo_container.pack(side=tk.LEFT, padx=(0, 20), pady=15)
395
-
384
+
396
385
  # Pfad zum Icon ermitteln
397
386
  script_dir = os.path.dirname(os.path.abspath(__file__))
398
387
  logo_path = os.path.join(script_dir, "assets", "bash-script-maker-48.png")
399
-
388
+
400
389
  if os.path.exists(logo_path):
401
390
  try:
402
391
  from PIL import Image, ImageTk
403
-
392
+
404
393
  # Logo laden - größer für bessere Sichtbarkeit
405
394
  img = Image.open(logo_path)
406
395
  # Optimale Größe für Toolbar (36x36)
407
396
  img = img.resize((36, 36), Image.Resampling.LANCZOS)
408
397
  logo_photo = ImageTk.PhotoImage(img)
409
-
398
+
410
399
  # Logo-Label erstellen
411
400
  logo_label = ttk.Label(logo_container, image=logo_photo)
412
401
  logo_label.image = logo_photo # Referenz behalten
413
402
  logo_label.pack(side=tk.LEFT, padx=(0, 8))
414
-
403
+
415
404
  # App-Name-Label hinzufügen
416
405
  name_label = ttk.Label(
417
- logo_container,
418
- text="Bash-Script-Maker",
406
+ logo_container,
407
+ text="Bash-Script-Maker",
419
408
  font=("Arial", 12, "bold"),
420
- foreground="#2c3e50" # Dunkle Farbe für bessere Lesbarkeit
409
+ foreground="#2c3e50", # Dunkle Farbe für bessere Lesbarkeit
421
410
  )
422
411
  name_label.pack(side=tk.LEFT, anchor=tk.CENTER)
423
-
412
+
424
413
  # Version-Label (kleiner) hinzufügen
425
414
  version_label = ttk.Label(
426
- logo_container,
427
- text=f"v{__version__}",
415
+ logo_container,
416
+ text=f"v{__version__}",
428
417
  font=("Arial", 9),
429
- foreground="#7f8c8d" # Grau für subtile Version
418
+ foreground="#7f8c8d", # Grau für subtile Version
430
419
  )
431
420
  version_label.pack(side=tk.LEFT, padx=(5, 0), anchor=tk.CENTER)
432
-
421
+
433
422
  # Tooltips hinzufügen
434
423
  ToolTip(logo_label, text=f"Bash-Script-Maker v{__version__}")
435
424
  ToolTip(name_label, text=f"Bash-Script-Maker v{__version__}")
436
425
  ToolTip(version_label, text=f"Version {__version__}")
437
-
426
+
438
427
  print("Logo und App-Name zur Toolbar hinzugefügt")
439
-
428
+
440
429
  except ImportError:
441
430
  # Fallback ohne PIL - verwende Text-Logo mit Name
442
- logo_label = ttk.Label(
443
- logo_container,
444
- text="🖥️",
445
- font=("Arial", 24)
446
- )
431
+ logo_label = ttk.Label(logo_container, text="🖥️", font=("Arial", 24))
447
432
  logo_label.pack(side=tk.LEFT, padx=(0, 8))
448
-
433
+
449
434
  # App-Name auch im Fallback
450
435
  name_label = ttk.Label(
451
- logo_container,
452
- text="Bash-Script-Maker",
453
- font=("Arial", 12, "bold")
436
+ logo_container,
437
+ text="Bash-Script-Maker",
438
+ font=("Arial", 12, "bold"),
454
439
  )
455
440
  name_label.pack(side=tk.LEFT, anchor=tk.CENTER)
456
-
441
+
457
442
  version_label = ttk.Label(
458
- logo_container,
459
- text=f"v{__version__}",
460
- font=("Arial", 9)
443
+ logo_container, text=f"v{__version__}", font=("Arial", 9)
461
444
  )
462
445
  version_label.pack(side=tk.LEFT, padx=(5, 0), anchor=tk.CENTER)
463
-
446
+
464
447
  # Tooltips
465
448
  ToolTip(logo_label, text=f"Bash-Script-Maker v{__version__}")
466
449
  ToolTip(name_label, text=f"Bash-Script-Maker v{__version__}")
467
450
  ToolTip(version_label, text=f"Version {__version__}")
468
-
451
+
469
452
  print("Text-Logo und App-Name zur Toolbar hinzugefügt")
470
-
453
+
471
454
  else:
472
455
  # Nur Text-Branding wenn kein Icon gefunden
473
456
  name_label = ttk.Label(
474
- logo_container,
475
- text="🖥️ Bash-Script-Maker",
476
- font=("Arial", 12, "bold")
457
+ logo_container,
458
+ text="🖥️ Bash-Script-Maker",
459
+ font=("Arial", 12, "bold"),
477
460
  )
478
461
  name_label.pack(side=tk.LEFT)
479
-
462
+
480
463
  version_label = ttk.Label(
481
- logo_container,
482
- text=f"v{__version__}",
483
- font=("Arial", 9)
464
+ logo_container, text=f"v{__version__}", font=("Arial", 9)
484
465
  )
485
466
  version_label.pack(side=tk.LEFT, padx=(5, 0), anchor=tk.CENTER)
486
-
467
+
487
468
  ToolTip(name_label, text=f"Bash-Script-Maker v{__version__}")
488
469
  ToolTip(version_label, text=f"Version {__version__}")
489
-
470
+
490
471
  print(f"Logo-Datei nicht gefunden: {logo_path}, verwende Text-Branding")
491
-
472
+
492
473
  except Exception as e:
493
474
  print(f"Fehler beim Hinzufügen des Logos: {e}")
494
475
  # Minimaler Fallback
495
476
  try:
496
- fallback_label = ttk.Label(toolbar, text="Bash-Script-Maker", font=("Arial", 10, "bold"))
477
+ fallback_label = ttk.Label(
478
+ toolbar, text="Bash-Script-Maker", font=("Arial", 10, "bold")
479
+ )
497
480
  fallback_label.pack(side=tk.LEFT, padx=(0, 15), pady=20)
498
481
  except:
499
482
  pass
500
483
 
484
+ def create_header(self):
485
+ """Erstellt den Header-Bereich mit Logo, App-Titel und Version"""
486
+ header_frame = ttk.Frame(self.root, bootstyle="primary")
487
+ header_frame.pack(side=tk.TOP, fill=tk.X, padx=5, pady=(5, 10))
488
+
489
+ # Header-Container für bessere Kontrolle
490
+ header_container = ttk.Frame(header_frame)
491
+ header_container.pack(fill=tk.X, padx=15, pady=10)
492
+
493
+ # Logo (links)
494
+ logo_frame = ttk.Frame(header_container)
495
+ logo_frame.pack(side=tk.LEFT)
496
+
497
+ try:
498
+ script_dir = os.path.dirname(os.path.abspath(__file__))
499
+ logo_path = os.path.join(script_dir, "assets", "bash-script-maker-48.png")
500
+
501
+ if os.path.exists(logo_path):
502
+ try:
503
+ from PIL import Image, ImageTk
504
+
505
+ # Logo für Header (48x48)
506
+ img = Image.open(logo_path)
507
+ logo_photo = ImageTk.PhotoImage(img)
508
+
509
+ logo_label = ttk.Label(logo_frame, image=logo_photo)
510
+ logo_label.image = logo_photo # Referenz behalten
511
+ logo_label.pack(side=tk.LEFT, padx=(0, 15))
512
+
513
+ except ImportError:
514
+ # Fallback: Großes Emoji
515
+ logo_label = ttk.Label(logo_frame, text="🖥️", font=("Arial", 36))
516
+ logo_label.pack(side=tk.LEFT, padx=(0, 15))
517
+ else:
518
+ # Fallback: Emoji
519
+ logo_label = ttk.Label(logo_frame, text="🖥️", font=("Arial", 36))
520
+ logo_label.pack(side=tk.LEFT, padx=(0, 15))
521
+
522
+ except Exception as e:
523
+ print(f"Fehler beim Laden des Header-Logos: {e}")
524
+ # Minimaler Fallback
525
+ logo_label = ttk.Label(logo_frame, text="🖥️", font=("Arial", 24))
526
+ logo_label.pack(side=tk.LEFT, padx=(0, 15))
527
+
528
+ # Titel und Version (mittig-links)
529
+ title_frame = ttk.Frame(header_container)
530
+ title_frame.pack(side=tk.LEFT, fill=tk.X, expand=True)
531
+
532
+ # Haupttitel
533
+ title_label = ttk.Label(
534
+ title_frame,
535
+ text="Bash-Script-Maker",
536
+ font=("Arial", 24, "bold"),
537
+ bootstyle="inverse-primary"
538
+ )
539
+ title_label.pack(anchor=tk.W)
540
+
541
+ # Untertitel mit Version
542
+ subtitle_label = ttk.Label(
543
+ title_frame,
544
+ text=f"Version {__version__} - Professioneller Bash-Script-Generator",
545
+ font=("Arial", 11),
546
+ bootstyle="inverse-secondary"
547
+ )
548
+ subtitle_label.pack(anchor=tk.W, pady=(2, 0))
549
+
550
+ # Status-Info (rechts)
551
+ status_frame = ttk.Frame(header_container)
552
+ status_frame.pack(side=tk.RIGHT)
553
+
554
+ # Aktuelle Zeit/Datum als zusätzliche Info
555
+ import datetime
556
+ current_time = datetime.datetime.now().strftime("%d.%m.%Y")
557
+
558
+ info_label = ttk.Label(
559
+ status_frame,
560
+ text=f"Gestartet: {current_time}",
561
+ font=("Arial", 9),
562
+ bootstyle="inverse-secondary"
563
+ )
564
+ info_label.pack(anchor=tk.E)
565
+
566
+ # Separator-Linie unter dem Header
567
+ separator = ttk.Separator(self.root, orient=tk.HORIZONTAL)
568
+ separator.pack(side=tk.TOP, fill=tk.X, padx=5)
569
+
501
570
  def create_menu(self):
502
571
  """Erstellt das Menü der Anwendung"""
503
572
  menubar = tk.Menu(self.root)
@@ -618,12 +687,12 @@ class BashScriptMaker:
618
687
  )
619
688
  status_bar.pack(side=tk.BOTTOM, fill=tk.X)
620
689
 
621
- # Toolbar ganz oben platzieren
622
- toolbar = ttk.Frame(self.root)
623
- toolbar.pack(side=tk.TOP, fill=tk.X, padx=5, pady=(5, 0))
690
+ # Header-Bereich für App-Titel und Logo
691
+ self.create_header()
624
692
 
625
- # Logo hinzufügen (links)
626
- self.add_logo_to_toolbar(toolbar)
693
+ # Toolbar für Buttons
694
+ toolbar = ttk.Frame(self.root)
695
+ toolbar.pack(side=tk.TOP, fill=tk.X, padx=5, pady=(0, 0))
627
696
 
628
697
  # Toolbar-Inhalte - LINKS
629
698
  btn_new = ttk.Button(
@@ -304,7 +304,7 @@ if main_installation; then
304
304
  Name=Bash-Script-Maker
305
305
  Comment=Ein GUI-Programm zur Erstellung von Bash-Scripts
306
306
  Exec=$HOME/.local/bin/bash-script-maker
307
- Icon=$HOME/.local/share/icons/hicolor/scalable/apps/bash-script-maker.svg
307
+ Icon=bash-script-maker
308
308
  Terminal=false
309
309
  Type=Application
310
310
  Categories=Development;Utility;TextEditor;
@@ -170,7 +170,7 @@ if [ -f "bash-script-maker.desktop" ] && [ -f "assets/bash-script-maker.svg" ];
170
170
  Name=Bash-Script-Maker
171
171
  Comment=Ein GUI-Programm zur Erstellung von Bash-Scripts
172
172
  Exec=$HOME/.local/bin/bash-script-maker
173
- Icon=$HOME/.local/share/icons/hicolor/scalable/apps/bash-script-maker.svg
173
+ Icon=bash-script-maker
174
174
  Terminal=false
175
175
  Type=Application
176
176
  Categories=Development;Utility;TextEditor;
@@ -49,7 +49,7 @@ if cat > ~/.local/share/applications/bash-script-maker.desktop << EOF
49
49
  Name=Bash-Script-Maker
50
50
  Comment=Ein GUI-Programm zur Erstellung von Bash-Scripts
51
51
  Exec=$HOME/.local/bin/bash-script-maker
52
- Icon=$HOME/.local/share/icons/hicolor/scalable/apps/bash-script-maker.svg
52
+ Icon=bash-script-maker
53
53
  Terminal=false
54
54
  Type=Application
55
55
  Categories=Development;Utility;TextEditor;
@@ -163,7 +163,7 @@ if [ -f "bash-script-maker.desktop" ] && [ -f "assets/bash-script-maker.svg" ];
163
163
  Name=Bash-Script-Maker
164
164
  Comment=Ein GUI-Programm zur Erstellung von Bash-Scripts
165
165
  Exec=$HOME/.local/bin/bash-script-maker
166
- Icon=$HOME/.local/share/icons/hicolor/scalable/apps/bash-script-maker.svg
166
+ Icon=bash-script-maker
167
167
  Terminal=false
168
168
  Type=Application
169
169
  Categories=Development;Utility;TextEditor;
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "bash-script-maker"
7
- version = "1.8.0"
7
+ version = "1.9.0"
8
8
  description = "Ein GUI-Programm zur Erstellung von Bash-Scripts mit visueller Unterstützung"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
@@ -1 +0,0 @@
1
- 1.8.0