1{ 2 lib, 3 buildPythonPackage, 4 pythonOlder, 5 fetchFromGitHub, 6 setuptools, 7 tkinter, 8 darkdetect, 9 packaging, 10 typing-extensions, 11}: 12let 13 pname = "customtkinter"; 14 version = "5.2.2"; 15in 16buildPythonPackage { 17 inherit pname version; 18 pyproject = true; 19 disabled = pythonOlder "3.7"; 20 21 src = fetchFromGitHub { 22 owner = "TomSchimansky"; 23 repo = "CustomTkinter"; 24 tag = "v${version}"; 25 hash = "sha256-1g2wdXbUv5xNnpflFLXvU39s16kmwvuegKWd91E3qm4="; 26 }; 27 28 build-system = [ 29 setuptools 30 tkinter 31 ]; 32 33 dependencies = [ 34 darkdetect 35 packaging 36 typing-extensions 37 ]; 38 39 patches = [ ./0001-Add-Missing-Cfg-Packages.patch ]; 40 41 pythonImportsCheck = [ "customtkinter" ]; 42 43 meta = { 44 description = "Modern and customizable python UI-library based on Tkinter"; 45 homepage = "https://github.com/TomSchimansky/CustomTkinter"; 46 license = lib.licenses.mit; 47 longDescription = '' 48 CustomTkinter is a python UI-library based on Tkinter, which provides 49 new, modern and fully customizable widgets. They are created and 50 used like normal Tkinter widgets and can also be used in combination 51 with normal Tkinter elements. The widgets and the window colors 52 either adapt to the system appearance or the manually set mode 53 ('light', 'dark'), and all CustomTkinter widgets and windows support 54 HighDPI scaling (Windows, macOS). With CustomTkinter you'll get 55 a consistent and modern look across all desktop platforms 56 (Windows, macOS, Linux). 57 ''; 58 maintainers = with lib.maintainers; [ FlameFlag ]; 59 }; 60}