Skip to content

Commit 14f8393

Browse files
committed
multiple config changes for PySide6 migration
1 parent 3180e1d commit 14f8393

3 files changed

Lines changed: 87 additions & 26 deletions

File tree

CHANGELOG

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
---
99

10+
## [0.5.0] - 2025-08-04
11+
12+
### Added
13+
14+
- **Transition to Qt6 and Migration to PySide6**:
15+
- **Better bundling of dependencies**: Project configuration files enhanced
16+
-
17+
18+
### Fixed
19+
20+
- **Some superfluous dependencies removed**:
21+
- **Improved integration with Ubuntu 24.04**:
22+
23+
1024
## [0.4.0] - 2025-06-08
1125

1226
### Added

pyproject.toml

Lines changed: 70 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -6,60 +6,69 @@
66
# Disclaimer: No warranties, stated or implied.
77
# Description :
88
# This is the configuration file for generating appimages and deb insallers for the PhotoGlimmer project
9-
# IMPORTANT: Make sure that dependencies list provides EXACT VERSIONS of opencv-contrib-python and mediapipe,
10-
# otherwise install size will bloat up !
9+
# IMPORTANT: Make sure that dependencies list provides a version of mediapipe which does not require PyTorch,
10+
# otherwise the install size will bloat up !
1111
#
12-
# This config file was generated with 0.3.15 using template: https://github.com/beeware/briefcase-template@v0.3.15
12+
# This config file was generated with 0.3.23 using template: https://github.com/beeware/briefcase-template@v0.3.23
13+
# Last major Edit - Aug 2024 (for v0.5.0)
1314
# ###############################################################################
1415

1516

1617
[tool.briefcase]
1718
project_name = "PhotoGlimmer"
1819
bundle = "com.github.photoglimmer"
19-
version = "0.4.0"
20+
version = "0.5.0"
2021
url = "https://github.com/codecliff/PhotoGlimmer"
2122
license.file = "LICENSE"
2223
author = "Rahul Singh"
2324
author_email = "codecliff@users.noreply.github.com"
2425

2526
[tool.briefcase.app.photoglimmer]
2627
formal_name = "PhotoGlimmer"
27-
description = "AI powered photo editor to tweak illumination on people without altering the background"
28+
description = "AI powered photo editor to tweak illumination separately on people or background"
2829
long_description = """
2930
Shine a light on individuals with the help of a few sliders, without altering the scene. \
3031
This AI-powered photo editor lets you precisely adjust illumination on people, \
3132
leaving the background untouched.
3233
"""
3334

3435
icon = "src/photoglimmer/icons/appicon"
36+
37+
3538
sources = [
3639
"src/photoglimmer",
3740
]
3841
test_sources = [
3942
"tests",
4043
]
4144

42-
45+
# Rahul- v0.5.0 changes:
46+
# PySide6
47+
# Some requirements updated for python 3.12 compatibility
48+
# As far as possible , kept the same version
49+
# Some removed as they are installed with other requirements
50+
# mediapipe - only v0.11.0 requires pytorch, v0.13.0 is lightweight
51+
# pyqtdarktheme-fork is in-place pyqtdarktheme replacement for python 3.12
4352
requires = [
44-
"opencv-contrib-python-headless==4.8.1.78",
45-
"PySide6~=6.5",
46-
"mediapipe==0.10.7",
47-
"numpy~=1.19",
48-
"pyqtdarktheme ~=2.1.0",
49-
"splines ~= 0.3.0",
50-
"piexif ~= 1.1.3",
51-
"Pympler ~=1.1",
52-
"memory-profiler ~=0.61.0",
53-
"line-profiler ~=4.2.0"
53+
"PySide6-Essentials==6.8.1",
54+
"mediapipe==0.10.13",
55+
"pyqtdarktheme-fork",
56+
"splines ~= 0.3.0",
57+
"piexif ~= 1.1.3",
58+
"Pympler ~=1.1",
59+
"memory-profiler ~=0.61.0",
60+
"line-profiler ~=4.2.0"
5461
]
55-
5662
test_requires = [
5763
"pytest",
5864
]
5965

6066
[tool.briefcase.app.photoglimmer.macOS]
67+
universal_build = true
68+
# As of Pyside 6.8, PySide enforces a macOS 12 minimum on wheels.
69+
min_os_version = "12.0"
6170
requires = [
62-
"std-nslog~=1.0.0"
71+
"std-nslog~=1.0.3",
6372
]
6473

6574
[tool.briefcase.app.photoglimmer.linux]
@@ -70,37 +79,73 @@ requires = [
7079
system_requires = [
7180
]
7281

82+
# Rahul- This section ensures proper containerized bundling
7383
system_runtime_requires = [
84+
# Derived from https://doc.qt.io/qt-6/linux-requirements.html
85+
"libxext6",
86+
"libxrender1",
87+
"libx11-xcb1",
88+
"libxkbcommon-x11-0",
89+
"libxcb-image0",
90+
"libxcb-cursor0",
91+
"libxcb-shape0",
92+
"libxcb-randr0",
93+
"libxcb-xfixes0",
94+
"libxcb-sync1",
95+
"libxcb-icccm4",
96+
"libxcb-keysyms1",
97+
"libfontconfig1",
98+
"libsm6",
99+
"libice6",
100+
"libglib2.0-0",
101+
"libgl1",
102+
"libegl1",
103+
"libdbus-1-3",
74104
]
75105

76106
[tool.briefcase.app.photoglimmer.linux.system.rhel]
77107
system_requires = [
78108
]
79109

80110
system_runtime_requires = [
111+
"qt6-qtbase-gui",
112+
]
113+
114+
[tool.briefcase.app.photoglimmer.linux.system.suse]
115+
system_requires = [
116+
]
117+
118+
system_runtime_requires = [
119+
"libgthread-2_0-0",
120+
"libQt6Gui6",
81121
]
82122

83123
[tool.briefcase.app.photoglimmer.linux.system.arch]
84124
system_requires = [
85125
]
86126

87127
system_runtime_requires = [
128+
"qt6-base",
88129
]
89130

90131
[tool.briefcase.app.photoglimmer.linux.appimage]
91-
manylinux = "manylinux2014"
132+
manylinux = "manylinux_2_28"
92133

93134
system_requires = [
135+
# ?? FIXME
136+
]
137+
138+
linuxdeploy_plugins = [
94139
]
95-
linuxdeploy_plugins = []
96140

97141
[tool.briefcase.app.photoglimmer.linux.flatpak]
98-
flatpak_runtime = "org.freedesktop.Platform"
99-
flatpak_runtime_version = "22.08"
100-
flatpak_sdk = "org.freedesktop.Sdk"
142+
flatpak_runtime = "org.kde.Platform"
143+
flatpak_runtime_version = "6.9"
144+
flatpak_sdk = "org.kde.Sdk"
101145

102146
[tool.briefcase.app.photoglimmer.windows]
103-
requires = []
147+
requires = [
148+
]
104149

105150
# Mobile deployments
106151
[tool.briefcase.app.photoglimmer.iOS]
@@ -112,3 +157,4 @@ supported = false
112157
# Web deployments
113158
[tool.briefcase.app.photoglimmer.web]
114159
supported = false
160+

src/photoglimmer/customfiledialog.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ def __init__(self, *args, **kwargs):
2121
self.setWindowTitle("PhotoGlimmer: Open an Image")
2222
layoutV = QVBoxLayout()
2323
layoutV.setAlignment(Qt.AlignVCenter )
24-
layoutV.setMargin(10)
24+
#layoutV.setMargin(10)
25+
layoutV.setContentsMargins(10, 10, 10, 10) #PysSide6
2526
self.setBaseSize(self.width() + 350, self.height())
2627
self.setSizeGripEnabled(True)
2728
self.setNameFilter('Images (*.png *.jpg *.bmp *.webp *.JPG *.jpeg *.JPEG )')
@@ -90,4 +91,4 @@ def getOpenFileName( parent, dir:str):
9091
app = QApplication(sys.argv)
9192
window = QFileDialogPreview()
9293
window.show()
93-
sys.exit(app.exec_())
94+
sys.exit(app.exec_())

0 commit comments

Comments
 (0)