Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 15 additions & 10 deletions .github/workflows/buildpackage-mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,15 @@ jobs:

strategy:
matrix:
os: [macos-13,macos-14]
architecture: [x64]
python-version: ['3.11','3.13']
exclude:
- os: macos-13
python-version: '3.13'
- os: macos-14
include:
# build for Intel x64
- os: macos-15-intel
architecture: x64
python-version: '3.11'
# build for Apple Silicon arm64
- os: macos-14
architecture: arm64
python-version: '3.13'

steps:
- name: Checkout
Expand All @@ -38,13 +39,17 @@ jobs:
python setup.py build_ext --inplace
- name: Make pyinstaller spec
run: |
pyi-makespec --hidden-import="pkg_resources.py2_warn" -F --add-data images/\*:images --add-data \*.png:. --add-data \*.ico:. --name Pronterface -w -i P-face.icns pronterface.py
pyi-makespec --windowed --name "Pronterface" --target-architecture "${{ matrix.architecture == 'arm64' && 'arm64' || 'x86_64' }}" --add-data "printrun/assets:printrun/assets" --icon "./assets_raw/icons/pronterface.icns" pronterface.py
# Edit spec file
export git_hash=$(git rev-parse --short "$GITHUB_SHA")
export GIT_HASH=$(git rev-parse --short "$GITHUB_SHA")
export VERSION="$(python3 -c 'import printrun.printcore as core; print(core.__version__)' 2>/dev/null)"
export YEAR=$(date +%Y)
sed -i '' '$ s/.$//' Pronterface.spec
cat >> Pronterface.spec <<EOL
info_plist={
'CFBundleShortVersionString': '$git_hash',
'CFBundleVersion': '$GIT_HASH',
'CFBundleShortVersionString': "$VERSION",
'NSHumanReadableCopyright': "FOSS © $YEAR, GPL-3.0 licensed",
'NSPrincipalClass': 'NSApplication',
'NSAppleScriptEnabled': False,
'NSAppSleepDisabled': True,
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/buildpackage-win.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@ jobs:

- name: Make pyinstaller spec
run: |
pyi-makespec --hidden-import="pkg_resources.py2_warn" -F --name "Pronterface" --add-data "images/*;images" --add-data "*.png;." --add-data "*.ico;." -w -i pronterface.ico pronterface.py
pyi-makespec --hidden-import="pkg_resources.py2_warn" -F --name "Pronsole" --add-data "images/*;images" --add-data "*.png;." --add-data "*.ico;." -c -i pronsole.ico pronsole.py
pyi-makespec -F --name "Pronterface" --add-data "printrun/assets;printrun/assets" -w -i "./assets_raw/icons/pronterface.ico" pronterface.py
pyi-makespec -F --name "Pronsole" -c -i "./assets_raw/icons/pronsole.ico" pronsole.py
- name: Make pyinstaller build
run: |
pyinstaller --clean Pronterface.spec -y
Expand Down
6 changes: 4 additions & 2 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
include COPYING
include README.*
include buildinstructions.md
include release_windows.bat
include requirements.txt
include *.ico
include *.icns
include assets_raw/icons/*.png
recursive-include assets_raw *.ico *.icns *.desktop *.appdata.xml
recursive-include locale *.pot *.po *.mo
recursive-include printrun *.pyx *.c *.h
Binary file removed P-face.icns
Binary file not shown.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Binary file added assets_raw/icons/plater.icns
Binary file not shown.
Binary file added assets_raw/icons/plater.ico
Binary file not shown.
Binary file added assets_raw/icons/plater.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets_raw/icons/pronsole.icns
Binary file not shown.
Binary file added assets_raw/icons/pronsole.ico
Binary file not shown.
Binary file added assets_raw/icons/pronsole.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets_raw/icons/pronterface.icns
Binary file not shown.
Binary file added assets_raw/icons/pronterface.ico
Binary file not shown.
Binary file added assets_raw/icons/pronterface.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
38 changes: 8 additions & 30 deletions buildinstructions.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
# Build instructions
In general please follow the build instructions as described in [README.md](README.md). Here you will find a brief overview about what is needed to build your own development environment without further explanations.
## Setup on OS X

## Setup on macOS
### Prerequisites
* install python 3.10
* install supported python version (see [README.md](README.md))
* install python extension compile environment, this is automatically done if you have xcode
* install git
### Clone the repository
Expand All @@ -13,8 +14,8 @@ git pull
```
### Install and activate the virtual environment
```
python3 -m venv v3
. ./v3/bin/activate
python3 -m venv venv
. ./venv/bin/activate
```
### Install and update all required libraries
```
Expand All @@ -29,27 +30,11 @@ python setup.py build_ext --inplace
`python pronterface.py`

### For packaging
```
pip install pyinstaller
pyi-makespec --hidden-import="pkg_resources.py2_warn" -F --add-data images/\*:images --add-data \*.png:. --add-data \*.ico:. -w -i P-face.icns pronterface.py
rm -rf dist
sed -i '' '$ s/.$//' pronterface.spec
cat >> pronterface.spec <<EOL
,
info_plist={
'NSPrincipalClass': 'NSApplication',
'NSAppleScriptEnabled': False,
'NSAppSleepDisabled': True,
},
)
EOL
pyinstaller --clean pronterface.spec -y
(optional) codesign -s identityname dist/pronterface.app --deep
```
Please find further informations about building a development environment and packaging in the script [release_macos.sh](release_macos.sh) where we implemented an automated build for macOS.

## Setup on Windows
### Prerequisites
* install python 3.10
* install supported python version (see [README.md](README.md))
* install python extension compile environment, see https://wiki.python.org/moin/WindowsCompilers
* install git
### Clone the repository
Expand Down Expand Up @@ -80,14 +65,7 @@ Please see remark for polygon3[^1]
`python pronterface.py`

### For packaging
```
pip install pyinstaller
pyi-makespec -F --add-data images/*;images --add-data *.png;. --add-data *.ico;. -w -i pronterface.ico pronterface.py
pyinstaller --clean pronterface.spec -y
```

> [!TIP]
> Please find further informations about building a development environment and packaging in script [release_windows.bat](release_windows.bat) where we implemented an automated build for windows.
Please find further informations about building a development environment and packaging in the script [release_windows.bat](release_windows.bat) where we implemented an automated build for windows.

### Remark:

Expand Down
Binary file removed images/arrow_down.png
Binary file not shown.
Binary file removed images/arrow_keys.png
Binary file not shown.
Binary file removed images/arrow_up.png
Binary file not shown.
Binary file removed images/control_mini.png
Binary file not shown.
Binary file removed images/control_z_mini.png
Binary file not shown.
Binary file removed images/edit.png
Binary file not shown.
Binary file removed images/fit.png
Binary file not shown.
Binary file removed images/inject.png
Binary file not shown.
Binary file removed images/reset.png
Binary file not shown.
Binary file removed images/zoom_in.png
Binary file not shown.
Binary file removed images/zoom_out.png
Binary file not shown.
Binary file removed plater.ico
Binary file not shown.
Binary file removed plater.png
Binary file not shown.
17 changes: 17 additions & 0 deletions printrun/assets/controls/arrow_keys.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added printrun/assets/controls/control_mini.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added printrun/assets/controls/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
Binary file added printrun/assets/controls/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
Binary file added printrun/assets/controls/[email protected]
Binary file added printrun/assets/controls/control_z_mini.png
Binary file added printrun/assets/controls/[email protected]
6 changes: 6 additions & 0 deletions printrun/assets/toolbar/clear.svg
6 changes: 6 additions & 0 deletions printrun/assets/toolbar/clear_w.svg
8 changes: 8 additions & 0 deletions printrun/assets/toolbar/edit.svg
8 changes: 8 additions & 0 deletions printrun/assets/toolbar/edit_w.svg
7 changes: 7 additions & 0 deletions printrun/assets/toolbar/exit.svg
7 changes: 7 additions & 0 deletions printrun/assets/toolbar/exit_w.svg
6 changes: 6 additions & 0 deletions printrun/assets/toolbar/fit.svg
6 changes: 6 additions & 0 deletions printrun/assets/toolbar/fit_w.svg
Loading
Loading