guix_mirror_bot pushed a commit to branch master
in repository guix.
commit 9256d8ad94e33e910ee09bcee4396398d1eccc3b
Author: Andy Tai <[email protected]>
AuthorDate: Thu Dec 25 04:20:25 2025 -0800
gnu: Add python-customtkinter.
* gnu/packages/python-xyz.scm (python-customtkinter): New variable.
Merges guix/guix#5108
Change-Id: Iacfe7220ace7396e6d878283a2d36b6f97da3ca4
Modified-by: Cayetano Santos <[email protected]>
Signed-off-by: Cayetano Santos <[email protected]>
---
gnu/packages/python-xyz.scm | 46 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 508eff5f19..9175813727 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -177,6 +177,7 @@
;;; Copyright © 2025 Hennadii Stepanov <[email protected]>
;;; Copyright © 2025 Luca Kredel <[email protected]>
;;; Copyright © 2025 Isidor Zeuner <[email protected]>
+;;; Copyright © 2025 Andy Tai <[email protected]>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -860,6 +861,51 @@ features string-like objects which carry formatting
information, per-line
fullscreen terminal rendering, and keyboard input event reporting.")
(license license:expat)))
+(define-public python-customtkinter
+ (package
+ (name "python-customtkinter")
+ (version "5.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TomSchimansky/CustomTkinter")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0vma6x8zg7d5h2ggphi6m7bnqzskxysi9rcpkr6rrgylfrsv03fn"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'start-xorg-server
+ (lambda _
+ (setenv "HOME" "/tmp")
+ ;; The test suite requires a running X server.
+ (system "Xvfb :99 -screen 0 1024x768x24 &")
+ (setenv "DISPLAY" ":99.0")))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion "test"
+ (invoke "python" "unit_tests/test_all.py"))))))))
+ (propagated-inputs
+ (list (list python "tk")
+ python-darkdetect
+ python-packaging))
+ (native-inputs
+ (list python-setuptools
+ xorg-server-for-tests))
+ (home-page "https://customtkinter.tomschimansky.com")
+ (synopsis
+ "Python @acronym{User Interface, UI} library based on Tkinter")
+ (description
+ "CustomTkinter provides fully customizable widgets, created and used
+like normal Tkinter widgets, which can also be used in combination with normal
+Tkinter elements.")
+ (license license:expat)))
+
(define-public python-darkdetect
(package
(name "python-darkdetect")