cli-tools-kit 0.6.1__tar.gz → 0.6.2__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 (41) hide show
  1. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/PKG-INFO +1 -1
  2. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/gui_installer.py +22 -0
  3. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit.egg-info/PKG-INFO +1 -1
  4. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/pyproject.toml +1 -1
  5. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/LICENSE +0 -0
  6. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/README.md +0 -0
  7. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/__init__.py +0 -0
  8. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/__main__.py +0 -0
  9. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/advertise.py +0 -0
  10. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/cron_installer.py +0 -0
  11. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/host.py +0 -0
  12. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/identity.py +0 -0
  13. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/onboarding.py +0 -0
  14. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/skills.py +0 -0
  15. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/sources.py +0 -0
  16. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/__init__.py +0 -0
  17. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/build.py +0 -0
  18. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/capability.py +0 -0
  19. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/cluster.py +0 -0
  20. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/corpus.py +0 -0
  21. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/embedder.py +0 -0
  22. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/groups.py +0 -0
  23. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/taxonomy/llm_groups.py +0 -0
  24. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/tool_installer.py +0 -0
  25. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit/tui_installer.py +0 -0
  26. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit.egg-info/SOURCES.txt +0 -0
  27. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit.egg-info/dependency_links.txt +0 -0
  28. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit.egg-info/entry_points.txt +0 -0
  29. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit.egg-info/requires.txt +0 -0
  30. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/cli_tools_kit.egg-info/top_level.txt +0 -0
  31. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/setup.cfg +0 -0
  32. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_capability_groups.py +0 -0
  33. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_cron_installer.py +0 -0
  34. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_host.py +0 -0
  35. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_identity.py +0 -0
  36. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_llm_groups.py +0 -0
  37. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_skills.py +0 -0
  38. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_sources.py +0 -0
  39. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_taxonomy_cluster.py +0 -0
  40. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_tool_installer.py +0 -0
  41. {cli_tools_kit-0.6.1 → cli_tools_kit-0.6.2}/tests/test_tui_installer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cli-tools-kit
3
- Version: 0.6.1
3
+ Version: 0.6.2
4
4
  Summary: Installer protocol + helpers for self-installing Python CLI/GUI tools (desktop shortcuts, bash aliases, cron entries), plus reusable tkinter and curses installer screens
5
5
  Author: Steffen Probst
6
6
  License: MIT License
@@ -1794,6 +1794,7 @@ class InstallerApp:
1794
1794
  self.root.withdraw() # Hide until properly sized
1795
1795
  self.tools = tools
1796
1796
  self.root.title(WINDOW_TITLE)
1797
+ self._set_window_icon()
1797
1798
  saved_theme = load_config().get("theme", "ocean")
1798
1799
  self.current_theme = saved_theme if saved_theme in self.THEMES else "ocean"
1799
1800
 
@@ -1835,6 +1836,27 @@ class InstallerApp:
1835
1836
  # warning so the two don't fight over the log/dialog at the same tick.
1836
1837
  self.root.after(200, self._maybe_auto_update_on_startup)
1837
1838
 
1839
+ def _set_window_icon(self) -> None:
1840
+ """Apply SELF_DESKTOP_ICON to the live window (taskbar/titlebar).
1841
+
1842
+ SELF_DESKTOP_ICON is otherwise only written into the .desktop file's
1843
+ Icon= line, so a run straight from a terminal showed the generic Tk
1844
+ icon instead. Only an absolute image path can be used here (a
1845
+ freedesktop icon *name* has no file to load without a theme lookup).
1846
+ """
1847
+ icon_path = SELF_DESKTOP_ICON
1848
+ if not icon_path or not os.path.isabs(icon_path) or not os.path.isfile(icon_path):
1849
+ return
1850
+ try:
1851
+ if _HAVE_PIL:
1852
+ image = ImageTk.PhotoImage(Image.open(icon_path))
1853
+ else:
1854
+ image = tk.PhotoImage(file=icon_path)
1855
+ self.root.iconphoto(True, image)
1856
+ self._icon_photo = image # keep a reference; Tk drops the icon otherwise
1857
+ except Exception:
1858
+ pass # cosmetic only; never block startup over a bad/unsupported icon
1859
+
1838
1860
  def _get_primary_monitor_geometry(self) -> tuple[int, int, int, int]:
1839
1861
  """Get primary monitor geometry (x, y, width, height). Falls back to tkinter defaults."""
1840
1862
  try:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cli-tools-kit
3
- Version: 0.6.1
3
+ Version: 0.6.2
4
4
  Summary: Installer protocol + helpers for self-installing Python CLI/GUI tools (desktop shortcuts, bash aliases, cron entries), plus reusable tkinter and curses installer screens
5
5
  Author: Steffen Probst
6
6
  License: MIT License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "cli-tools-kit"
7
- version = "0.6.1"
7
+ version = "0.6.2"
8
8
  description = "Installer protocol + helpers for self-installing Python CLI/GUI tools (desktop shortcuts, bash aliases, cron entries), plus reusable tkinter and curses installer screens"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
File without changes
File without changes
File without changes