diff --git a/.github/workflows/python-package-conda.yml b/.github/workflows/python-package-conda.yml new file mode 100644 index 0000000..09cb1b5 --- /dev/null +++ b/.github/workflows/python-package-conda.yml @@ -0,0 +1,43 @@ +name: Python Package using Conda + +on: [push, workflow_dispatch] + +jobs: + example-2-win: + name: build Windows + runs-on: "windows-latest" + steps: + - name: Check out repository + uses: actions/checkout@v4 + - uses: conda-incubator/setup-miniconda@v2 + with: + activate-environment: Picf + environment-file: ./resources/environment.yml + python-version: 3.8.5 + auto-activate-base: false + + - name: Build Environment + shell: cmd + run: conda activate Picf & setup.bat + + - name: Packaging + shell: cmd + run: conda activate Picf & pyinstaller main.spec + + - name: Tree + shell: cmd + run: tree ./build/ + + # - name: Archive Release + # uses: thedoctor0/zip-release@0.7.5 + # with: + # type: 'zip' + # filename: 'Picf-Windows.zip' + # path: './build/*' + + - name: Upload Artifact + uses: actions/upload-artifact@v3 + with: + name: Picf-Windows + path: "./build/*" + diff --git a/main.spec b/main.spec new file mode 100644 index 0000000..82adf5b --- /dev/null +++ b/main.spec @@ -0,0 +1,51 @@ +# -*- mode: python ; coding: utf-8 -*- + + +block_cipher = None + + +a = Analysis( + ['main.py'], + pathex=['.\\utils\\CW.py', '.\\utils\\display_by_person.py', '.\\utils\\embedder.py', '.\\utils\\face_functions.py', '.\\utils\\facenet.py', '.\\utils\\sort_images.py','.\\gui\\core\\functions.py', '.\\gui\\core\\json_settings.py', '.\\gui\\core\\json_themes.py', '.\\gui\\core\\qt_core.py', '.\\gui\\uis\\columns\\ui_left_column.py', '.\\gui\\uis\\columns\\ui_right_column.py', '.\\gui\\uis\\pages\\ui_main_pages.py', '.\\gui\\uis\\windows\\main_window\\flow_layout.py', '.\\gui\\uis\\windows\\main_window\\functions_main_window.py', '.\\gui\\uis\\windows\\main_window\\setup_main_window.py', '.\\gui\\uis\\windows\\main_window\\ui_main.py', '.\\gui\\widgets\\py_checkbox\\py_checkbox.py', '.\\gui\\widgets\\py_circular_progress\\py_circular_progress.py', '.\\gui\\widgets\\py_credits_bar\\py_credits.py', '.\\gui\\widgets\\py_dialog\\py_dialog.py', '.\\gui\\widgets\\py_grips\\py_grips.py', '.\\gui\\widgets\\py_icon_button\\py_icon_button.py', '.\\gui\\widgets\\py_image\\py_image.py', '.\\gui\\widgets\\py_image_page\\py_image_page.py', '.\\gui\\widgets\\py_left_column\\py_icon.py', '.\\gui\\widgets\\py_left_column\\py_left_button.py', '.\\gui\\widgets\\py_left_column\\py_left_column.py', '.\\gui\\widgets\\py_left_menu\\py_div.py', '.\\gui\\widgets\\py_left_menu\\py_left_menu.py', '.\\gui\\widgets\\py_left_menu\\py_left_menu_button.py', '.\\gui\\widgets\\py_line_edit\\py_line_edit.py', '.\\gui\\widgets\\py_push_button\\py_push_button.py', '.\\gui\\widgets\\py_slider\\py_slider.py', '.\\gui\\widgets\\py_table_widget\\py_table_widget.py', '.\\gui\\widgets\\py_table_widget\\style.py', '.\\gui\\widgets\\py_title_bar\\py_div.py', '.\\gui\\widgets\\py_title_bar\\py_title_bar.py', '.\\gui\\widgets\\py_title_bar\\py_title_button.py', '.\\gui\\widgets\\py_toggle\\py_toggle.py', '.\\gui\\widgets\\py_window\\py_window.py', '.\\gui\\widgets\\py_window\\styles.py'], + binaries=[], + datas=[], + hiddenimports=[], + hookspath=[], + hooksconfig={}, + runtime_hooks=[], + excludes=[], + win_no_prefer_redirects=False, + win_private_assemblies=False, + cipher=block_cipher, + noarchive=False, +) +pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) + +exe = EXE( + pyz, + a.scripts, + [], + exclude_binaries=True, + name='main', + debug=True, + bootloader_ignore_signals=False, + strip=False, + upx=True, + console=True, + disable_windowed_traceback=False, + argv_emulation=False, + target_arch=None, + codesign_identity=None, + entitlements_file=None, + icon='icon.ico' +) +coll = COLLECT( + exe, + a.binaries, + a.zipfiles, + a.datas, + strip=False, + upx=True, + upx_exclude=[], + name='main', +) diff --git a/resources/environment.yml b/resources/environment.yml index c40949a..b5adad9 100644 --- a/resources/environment.yml +++ b/resources/environment.yml @@ -13,7 +13,9 @@ dependencies: - scikit-learn=1.0.1 - PyWavelets=1.1.1 - pip: + - pyinstaller - imutils==0.5.4 - PySide6==6.2.1 - tensorflow==2.7.0 -#prefix: C:\Users\Yashaswi\anaconda3\envs\sorter \ No newline at end of file + - protobuf==3.19.4 +#prefix: C:\Users\Yashaswi\anaconda3\envs\sorter