8 Commits

Author SHA1 Message Date
adbb97ecc2 added desc_act option 2023-06-03 16:27:13 +02:00
b10c023810 next try adding patchelf installation
All checks were successful
Package Release / package_on_ubuntu (push) Has been cancelled
Package Release / package_on_windows (push) Has been cancelled
2023-05-27 15:27:17 +02:00
757debce3a trying nuitka with linux 2023-05-27 15:23:35 +02:00
a8f033ac5b switching to nuitka, fix removing build folders 2023-05-27 15:19:49 +02:00
a32aff730e fixes indentations 2023-05-27 15:10:37 +02:00
0cd44016f5 trying out nuitka on github actions 2023-05-27 15:09:44 +02:00
21930ba8e9 fixed ubuntu & Windows package creation 2023-05-27 13:38:52 +02:00
b96c0914ed Update package.yml 2023-05-27 13:36:45 +02:00
2 changed files with 65 additions and 13 deletions

View File

@@ -6,11 +6,50 @@ on:
workflow_dispatch:
jobs:
package:
runs-on: self-hosted
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
package_on_ubuntu:
runs-on: ubuntu-selfhosted
steps:
- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: 3.x
- name: Checkout repository
uses: actions/checkout@v3
- name: Upgrade Pip
run: python -m pip install --upgrade pip
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get install patchelf -y
pip install -r requirements.txt
pip install nuitka
sudo apt install patchelf
- name: Build and package
run: python3 -m nuitka StartUI.py --onefile --enable-plugin=pyqt5 --product-version=1.6.0 --disable-console --include-data-files=webuiGUI.py=webuiGUI.py --output-dir=./dist --noinclude-pytest-mode=nofollow --noinclude-setuptools-mode=nofollow
- name: remove build folders
run: |
rm -rf dist/StartUI.build
rm -rf dist/StartUI.dist
rm -rf dist/StartUI.onefile-build
- name: Executive permission
run: |
chmod +x dist/StartUI
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: ubuntu-binary-v1.6
path: dist
package_on_windows:
runs-on: windows-selfhosted
steps:
- name: Set up Python
uses: actions/setup-python@v3
@@ -20,22 +59,25 @@ jobs:
- name: Checkout repository
uses: actions/checkout@v3
- name: Create and activate venv
run: python -m venv StartUI_env
- name: Upgrade Pip
run: python -m pip install --upgrade pip
- name: Install dependencies
run: |
pip install -r requirements.txt
pip install pyinstaller
pip install nuitka
- name: Build and package
run: pyinstaller --noconfirm --onefile --windowed StartUI.py --add-data="webuiGUI.py:."
run: nuitka StartUI.py --onefile --enable-plugin=pyqt5 --product-version=1.6.0 --disable-console --include-data-files=webuiGUI.py=webuiGUI.py --output-dir=./dist --noinclude-pytest-mode=nofollow --noinclude-setuptools-mode=nofollow
- name: remove build folders
run: |
Remove-Item -Recurse -Force ./dist/StartUI.build
Remove-Item -Recurse -Force ./dist/StartUI.dist
Remove-Item -Recurse -Force ./dist/StartUI.onefile-build
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.os }}-binary-v1.6
name: windows-binary-v1.6
path: dist

View File

@@ -1,7 +1,8 @@
import sys, os, gpustat, json, subprocess, platform, psutil, re, requests, darkdetect, qdarkstyle, time
from PyQt5.QtWidgets import QApplication, QHBoxLayout, QToolBar, QMessageBox, QAction, QMainWindow, QSpinBox, QLabel, QVBoxLayout, QComboBox, QSlider, QCheckBox, QLineEdit, QFileDialog, QPushButton, QWidget, QListWidget, QListWidgetItem, QGridLayout, QRadioButton, QFrame
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QDoubleValidator, QIntValidator
from PyQt5.QtWidgets import QAction, QApplication, QCheckBox, QComboBox, QFileDialog, QFrame, QGridLayout, QHBoxLayout, QLabel, QLineEdit, QListWidget, QListWidgetItem, QMainWindow, QMessageBox, QPushButton, QRadioButton, QSlider, QSpinBox, QToolBar, QVBoxLayout, QWidget
# For showing the current version and checking for updates
version = "1.6"
@@ -542,11 +543,16 @@ class MainWindow(QMainWindow):
self.use_triton_checkbox.setToolTip("Use Triton for inference.")
layout.addWidget(self.use_triton_checkbox, 22 + (len(gpu_stats) * 2), 1)
# Add desc_act option Checkbox
self.use_desc_act_checkbox = QCheckBox("Use desc_act")
self.use_desc_act_checkbox.setToolTip("For models that don\'t have a quantize_config.json, this parameter is used to define whether to set desc_act or not in BaseQuantizeConfig.")
layout.addWidget(self.use_desc_act_checkbox, 23 + (len(gpu_stats) * 2), 0)
# Add horizontal line to seperate the Checkboxes
line = QFrame()
line.setFrameShape(QFrame.HLine)
line.setFrameShadow(QFrame.Sunken)
layout.addWidget(line, 23 + (len(gpu_stats) * 2), 0, 1, 3)
layout.addWidget(line, 29 + (len(gpu_stats) * 2), 0, 1, 3)
# New GUI Options based on Toolbox Checkboxes.
@@ -1861,6 +1867,10 @@ class MainWindow(QMainWindow):
if self.use_triton_checkbox.isChecked():
command += " --triton"
# if desc_act is checked
if self.use_desc_act_checkbox.isChecked():
command += " --desc_act"
# Adds the chosen extensions to the list of the command.
extensions = [self.extensions_list.item(i).text() for i in range(self.extensions_list.count()) if self.extensions_list.item(i).checkState() == Qt.Checked]
if self.use_extensions_checkbox.isChecked():