start migrating the project to a package

This commit is contained in:
Andreas Zweili 2019-04-22 10:28:50 +02:00
parent 5d80c72384
commit 01bb72e14c
13 changed files with 107 additions and 25 deletions

View File

@ -7,8 +7,8 @@ dist/borg-qt: venv
. venv/bin/activate; \ . venv/bin/activate; \
pyinstaller --hidden-import=PyQt5.sip \ pyinstaller --hidden-import=PyQt5.sip \
--add-data=borg_qt/static/icons:static/icons \ --add-data=borg_qt/static/icons:static/icons \
--add-data=borg_qt/static/UI:static/UI \ --add-data=borg_qt/static/UI:static/UI -n borg_qt\
-F borg_qt/borg_qt.py; \ -F borg_qt/__main__.py; \
) )
venv: venv/bin/activate venv: venv/bin/activate

0
borg_qt/__init__.py Normal file
View File

View File

@ -3,8 +3,8 @@
import sys import sys
from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets import QApplication
from main_window import MainWindow from borg_qt.main_window import MainWindow
from helper import get_parser from borg_qt.helper import get_parser
if __name__ == "__main__": if __name__ == "__main__":

View File

@ -1,11 +1,9 @@
import os
import shutil
import subprocess import subprocess
import json import json
from PyQt5.QtCore import QThread from PyQt5.QtCore import QThread
from helper import BorgException, show_error from borg_qt.helper import BorgException, show_error
class BorgQtThread(QThread): class BorgQtThread(QThread):

View File

@ -9,8 +9,8 @@ from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QDialog, QFileDialog from PyQt5.QtWidgets import QDialog, QFileDialog
from PyQt5 import uic from PyQt5 import uic
from helper import BorgException from borg_qt.helper import BorgException
from systemd import SystemdFile from borg_qt.systemd import SystemdFile
class Config(QDialog): class Config(QDialog):

View File

@ -1,9 +1,7 @@
import os import os
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QDialog from PyQt5.QtWidgets import QDialog
from PyQt5 import uic from PyQt5 import uic
from PyQt5.QtGui import QIcon, QPixmap
class Help(QDialog): class Help(QDialog):

View File

@ -2,7 +2,7 @@ import argparse
import os import os
import math import math
import shutil import shutil
from PyQt5.QtCore import QCoreApplication, QUrl from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QMessageBox from PyQt5.QtWidgets import QMessageBox
from PyQt5.QtGui import QDesktopServices from PyQt5.QtGui import QDesktopServices

View File

@ -6,12 +6,12 @@ from PyQt5.QtCore import QCoreApplication
from PyQt5.QtWidgets import (QMainWindow, QFileSystemModel, QFileDialog, from PyQt5.QtWidgets import (QMainWindow, QFileSystemModel, QFileDialog,
QMessageBox) QMessageBox)
from config import Config from borg_qt.config import Config
from helper import (BorgException, show_error, convert_size, open_path, from borg_qt.helper import (BorgException, show_error, convert_size, open_path,
create_path, remove_path, check_path) create_path, remove_path, check_path)
from help import Help from borg_qt.help import Help
import borg_interface as borg import borg_qt.borg_interface as borg
from progress import ProgressDialog from borg_qt.progress import ProgressDialog
class MainWindow(QMainWindow): class MainWindow(QMainWindow):

View File

@ -1,5 +1,4 @@
import os import os
import time
from PyQt5.QtWidgets import QDialog from PyQt5.QtWidgets import QDialog
from PyQt5 import uic from PyQt5 import uic

88
setup.py Normal file
View File

@ -0,0 +1,88 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Note: To use the 'upload' functionality of this file, you must:
# $ pip install twine
import io
import os
from setuptools import find_packages, setup
# Package meta-data.
NAME = 'borg_qt'
DESCRIPTION = 'A graphical frontend for BorgBackup.'
URL = 'https://github.com/borg-qt/borg-qt.git'
EMAIL = ''
AUTHOR = 'Andreas Zweili'
REQUIRES_PYTHON = '>=3.6.0'
VERSION = '2019-02-23'
# What packages are required for this module to be executed?
REQUIRED = [
'PyQt5', 'borgbackup[fuse]==1.1.8',
]
# What packages are optional?
EXTRAS = {
# 'fancy feature': ['django'],
}
# The rest you shouldn't have to touch too much :)
# ------------------------------------------------
# Except, perhaps the License and Trove Classifiers!
# If you do change the License, remember to change the Trove Classifier for that!
here = os.path.abspath(os.path.dirname(__file__))
# Import the README and use it as the long-description.
# Note: this will only work if 'README.md' is present in your MANIFEST.in file!
try:
with io.open(os.path.join(here, 'README.md'), encoding='utf-8') as f:
long_description = '\n' + f.read()
except FileNotFoundError:
long_description = DESCRIPTION
# Load the package's __version__.py module as a dictionary.
about = {}
if not VERSION:
project_slug = NAME.lower().replace("-", "_").replace(" ", "_")
with open(os.path.join(here, project_slug, '__version__.py')) as f:
exec(f.read(), about)
else:
about['__version__'] = VERSION
# Where the magic happens:
setup(
name=NAME,
version=about['__version__'],
description=DESCRIPTION,
long_description=long_description,
long_description_content_type='text/markdown',
author=AUTHOR,
author_email=EMAIL,
python_requires=REQUIRES_PYTHON,
url=URL,
packages=find_packages(exclude=["tests", "*.tests", "*.tests.*", "tests.*"]),
# If your package is a single module, use this instead of 'packages':
# py_modules=['mypackage'],
# entry_points={
# 'console_scripts': ['mycli=mymodule:cli'],
# },
install_requires=REQUIRED,
extras_require=EXTRAS,
include_package_data=True,
license='GPLv3',
classifiers=[
# Trove classifiers
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
'License :: OSI Approved :: GNU Public License v3',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy'
],
)

View File

@ -5,9 +5,8 @@ from time import strftime
from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets import QApplication
import context import borg_qt.borg_interface as borg
import borg_interface as borg from borg_qt.helper import create_path
from helper import create_path
app = QApplication(sys.argv) app = QApplication(sys.argv)

View File

@ -9,8 +9,8 @@ from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets import QApplication
from PyQt5.QtTest import QTest from PyQt5.QtTest import QTest
from main_window import MainWindow from borg_qt.main_window import MainWindow
from helper import BorgException from borg_qt.helper import BorgException
app = QApplication(sys.argv) app = QApplication(sys.argv)

View File

@ -1,6 +1,6 @@
import os import os
from systemd import SystemdFile from borg_qt.systemd import SystemdFile
def test_write_unit(mock_home, monkeypatch): def test_write_unit(mock_home, monkeypatch):