project renamed as 'bauh'

This commit is contained in:
Vinicius Moreira
2019-08-12 11:50:24 -03:00
parent 6d891683da
commit 19a11434fe
69 changed files with 202 additions and 321 deletions

View File

@@ -9,127 +9,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- suggestions are now retrieved asynchronously taking 45% less time. - suggestions are now retrieved asynchronously taking 45% less time.
- search response takes an average of 20% less time ( reaching 35% for several results ) - search response takes an average of 20% less time ( reaching 35% for several results )
- app boot takes 98% less time when snapd is installed, but disabled - app boot takes 98% less time when snapd is installed, but disabled
- FPAKMAN_TRAY (--tray) is not enabled by default (0). - BAUH_TRAY (--tray) is not enabled by default (0).
### Fixes ### Fixes
- not showing correctly the latest flatpak app versions when bringing the search results - not showing correctly the latest flatpak app versions when bringing the search results
- [flatpak dependency](https://github.com/vinifmor/fpakman/issues/36) - flatpak client dependency
## [0.5.0] - 2019-08-06
### Improvements
- search results sorting takes an average of 35% less time, reaching 60% in some scenarios
- app boot takes an average of 80% less time
- installed / uninstalled icons replaced by install / uninstall button
- check update button design changed
- app information is now available through an "Info" button
- app extra actions are now available through a "Settings" button instead of a right-click
- a confirmation popup is shown when the "install" / "upgrade all" button is clicked
- "About" icon added to the manage panel
- "Updates" icon left-aligned
- show application suggestions when no app is installed. Can be enabled / disabled through the environment variable / parameter FPAKMAN_SUGGESTIONS (--sugs)
- showing a warning popup after initialization when no Flatpak remotes are set
- new environment variable / argument to enable / disable the tray icon and update-check daemon: FPAKMAN_TRAY (--tray)
- minor GUI improvements
### Fixes:
- apps table not showing empty descriptions
- replacing default app icons by null icons
- maximized window resize fix when filtering apps
- changing table state after retrieving app history / information or an error happens
- i18n
### Comments:
- not adding Flatpak default remote (flathub) when initializing. It requires root actions, and will be addressed in a different way in future releases.
## [0.4.2] - 2019-07-28
### Improvements
- showing a warning dialog when the application starts and **snapd** is unavailable
### Fixes:
- [Snaps read index error](https://github.com/vinifmor/fpakman/issues/30)
## [0.4.1] - 2019-07-25
### Improvements
- retrieving some Snaps data (icon, description and confinement) through Ubuntu API instead of Snap Store
### Fixes:
- not showing app disk cached description when listing installed apps
- not updating disk cached data of installed apps
## [0.4.0] - 2019-07-25
### Features
- supporting snaps
- search filters by application type and updates
- "Refresh" option when right-clicking an installed snap application (see **Comments**)
- snap / flatpak usage can be enabled / disabled via this new environment variables and arguments: FPAKMAN_FLATPAK (--flatpak), FPAKMAN_SNAP (--snap)
### Improvements
- automatically shows all updates after refreshing
- more accurate search results.
- system notifications when an application is installed, removed or downgraded. Also when an error occurs.
- showing management panel when right-clicking the tray icon.
- "Updates" label replaced by an exclamation icon and moved to the right.
- new environments variables / arguments associated with performance: FPAKMAN_DOWNLOAD_ICONS (--download-icons), FPAKMAN_CHECK_PACKAGING_ONCE (--check-packaging-once)
- minor GUI improvements
### Comments
- currently snap daemon (2.40) automatically upgrades your installed applications in background. Although it's possible to check for new updates
programmatically, it requires root access and would mess up with the user experience if every 5 minutes the application asked for the password. But not to let the
user with empty hands, it was added a "Refresh" option when right-clicking an installed snap application. It will update the application if its not already updated by the daemon.
## [0.3.1] - 2019-07-13
### Improvements
- Console output now is optional and not shown by default
- Search bar is cleaned when 'Refresh' is clicked
- Full Flatpak database is not loaded during initialization: speeds up the process and reduces memory usage
- Applications data not available offline are now retrieved from Flathub API on demand and cached in memory and disk (only installed)
- In-memory cached data have an expiration time and are cleaned overtime to reduce memory usage
- Code was refactored to support other types of packaging in the future (e.g: snap)
- flatpak is not a requirement anymore
- the amount of columns of the applications table was reduced to improve the user experience
- new environment variables and arguments: FPAKMAN_ICON_EXPIRATION (--icon-exp), FPAKMAN_DISK_CACHE (--disk-cache)
- minor GUI improvements
### Fixes:
- flatpak 1.0.X: search is now retrieving the application name
- app crashes when there is no internet connection while initializing, downgrading or retrieving app history
## [0.3.0] - 2019-07-02
### Features
- Applications search
- Now when you right-click a selected application you can:
- retrieve its information
- retrieve its commit history
- downgrade
- install and uninstall it
- "About" window available when right-clicking the tray icon.
### Improvements
- Performance and memory usage
- Adding tooltips to toolbar buttons
- "Update ?" column renamed to "Upgrade ?"
- Management panel title renamed
- Showing runtime apps when no app is available
- Allowing to specify a custom app translation with the environment variable **FPAKMAN_LOCALE**
- Adding expiration time for cached app data. Default to 1 hour. The environment variable **FPAKMAN_CACHE_EXPIRATION** can change this value.
- Now the application accepts arguments related to environment variables as well. Check 'README.md'.
- Minor GUI improvements
- Notifying only new updates
- New icon
- Progress bar
## [0.2.1] - 2019-06-24
### Features
- Showing the number of apps and runtime updates available
### Fixes
- Retrieving information for the same AppId from different branches.
## [0.2.0] - 2019-06-18
### Features
- Management panel shows update commands streams
- Management panel status label is "orange" now
### Fixes
- Application name is not properly showing for Flatpak 1.2.X
## [0.1.0] - 2019-06-14
### Features
- System tray icon.
- Applications management window.
- Support for the following locales: PT, EN, ES.
- System notification for new updates.
- Update applications.

View File

@@ -1,2 +1,2 @@
include requirements.txt include requirements.txt
recursive-include fpakman/resources * recursive-include bauh/resources *

View File

@@ -1,4 +1,4 @@
## fpakman ## bauh
Non-official graphical user interface for Flatpak / Snap application management. It is a tray icon that let the user known when new updates are available and Non-official graphical user interface for Flatpak / Snap application management. It is a tray icon that let the user known when new updates are available and
an application management panel where you can search, update, install and uninstall applications. an application management panel where you can search, update, install and uninstall applications.
@@ -20,12 +20,12 @@ an application management panel where you can search, update, install and uninst
### Distribution ### Distribution
**PyPi** **PyPi**
``` ```
sudo pip3 install fpakman sudo pip3 install bauh
``` ```
**AUR** **AUR**
As **fpakman** package. There is also a staging version (**fpakman-staging**) but is intended for testing and may not work properly. As **bauh** package. There is also a staging version (**bauh-staging**) but is intended for testing and may not work properly.
### Manual installation: ### Manual installation:
@@ -33,35 +33,35 @@ If you prefer a manual and isolated installation, type the following commands wi
``` ```
python3 -m venv env python3 -m venv env
env/bin/pip install . env/bin/pip install .
env/bin/fpakman env/bin/bauh
``` ```
### Autostart ### Autostart
In order to autostart the application, use your Desktop Environment settings to register it as a startup application / script ("fpakman"). In order to autostart the application, use your Desktop Environment settings to register it as a startup application / script (**bauh**).
### Settings ### Settings
You can change some application settings via environment variables or arguments (type ```fpakman --help``` to get more information). You can change some application settings via environment variables or arguments (type ```bauh --help``` to get more information).
- **FPAKMAN_UPDATE_NOTIFICATION**: enable or disable system updates notifications. Use **0** (disable) or **1** (enable, default). - **BAUH_UPDATE_NOTIFICATION**: enable or disable system updates notifications. Use **0** (disable) or **1** (enable, default).
- **FPAKMAN_CHECK_INTERVAL**: define the updates check interval in seconds. Default: 60. - **BAUH_CHECK_INTERVAL**: define the updates check interval in seconds. Default: 60.
- **FPAKMAN_LOCALE**: define a custom app translation for a given locale key (e.g: 'pt', 'en', 'es', ...). Default: system locale. - **BAUH_LOCALE**: define a custom app translation for a given locale key (e.g: 'pt', 'en', 'es', ...). Default: system locale.
- **FPAKMAN_CACHE_EXPIRATION**: define a custom expiration time in SECONDS for cached API data. Default: 3600 (1 hour). - **BAUH_CACHE_EXPIRATION**: define a custom expiration time in SECONDS for cached API data. Default: 3600 (1 hour).
- **FPAKMAN_ICON_EXPIRATION**: define a custom expiration time in SECONDS for cached icons. Default: 300 (5 minutes). - **BAUH_ICON_EXPIRATION**: define a custom expiration time in SECONDS for cached icons. Default: 300 (5 minutes).
- **FPAKMAN_DISK_CACHE**: enables / disables disk cache. When disk cache is enabled, the installed applications data are loaded faster. Use **0** (disable) or **1** (enable, default). - **BAUH_DISK_CACHE**: enables / disables disk cache. When disk cache is enabled, the installed applications data are loaded faster. Use **0** (disable) or **1** (enable, default).
- **FPAKMAN_DOWNLOAD_ICONS**: Enables / disables app icons download. It may improve the application speed depending on how applications data are being retrieved. Use **0** (disable) or **1** (enable, default). - **BAUH_DOWNLOAD_ICONS**: Enables / disables app icons download. It may improve the application speed depending on how applications data are being retrieved. Use **0** (disable) or **1** (enable, default).
- **FPAKMAN_FLATPAK**: enables / disables flatpak usage. Use **0** (disable) or **1** (enabled, default) - **BAUH_FLATPAK**: enables / disables flatpak usage. Use **0** (disable) or **1** (enabled, default)
- **FPAKMAN_SNAP**: enables / disables snap usage. Use **0** (disable) or **1** (enabled, default) - **BAUH_SNAP**: enables / disables snap usage. Use **0** (disable) or **1** (enabled, default)
- **FPAKMAN_CHECK_PACKAGING_ONCE**: If the available supported packaging types should be checked ONLY once. It improves the application speed if enabled, but can generate errors if you uninstall any packaging technology while using it, and every time a supported packaging type is installed it will only be available after a restart. Use **0** (disable, default) or **1** (enable). - **BAUH_CHECK_PACKAGING_ONCE**: If the available supported packaging types should be checked ONLY once. It improves the application speed if enabled, but can generate errors if you uninstall any packaging technology while using it, and every time a supported packaging type is installed it will only be available after a restart. Use **0** (disable, default) or **1** (enable).
- **FPAKMAN_TRAY**: If the tray icon and update-check daemon should be created. Use **0** (disable, default) or **1** (enable). - **BAUH_TRAY**: If the tray icon and update-check daemon should be created. Use **0** (disable, default) or **1** (enable).
- **FPAKMAN_SUGGESTIONS**: If application suggestions should be displayed if no app is installed (runtimes do not count as apps). Use **0** (disable) or **1** (enable, default). - **BAUH_SUGGESTIONS**: If application suggestions should be displayed if no app is installed (runtimes do not count as apps). Use **0** (disable) or **1** (enable, default).
### How to improve the application performance ### How to improve the application performance
- If you don't care about a specific packaging technology and don't want **fpakman** to deal with it, just disable it via the specific argument or environment variable. For instance, if I don't care - If you don't care about a specific packaging technology and don't want the app to deal with it, just disable it via the specific argument or environment variable. For instance, if I don't care
about **snaps**, I can initialize the application setting "snap=0" (**fpakman --snap=0**). This will improve the application response time, since it won't need to do any verifications associated about **snaps**, I can initialize the application setting "snap=0" (**bauh --snap=0**). This will improve the application response time, since it won't need to do any verifications associated
with the technology that I don't care every time an action is executed. with the technology that I don't care every time an action is executed.
- If you don't care about restarting **fpakman** every time a new supported packaging technology is installed, set "check-packaging-once=1" (**fpakman --check-packaging-once=1**). This can reduce the application response time up to 80% in some scenarios, since it won't need to recheck if the packaging type is available for every action you request. - If you don't care about restarting the app every time a new supported packaging technology is installed, set "check-packaging-once=1" (**bauh --check-packaging-once=1**). This can reduce the application response time up to 80% in some scenarios, since it won't need to recheck if the packaging type is available for every action you request.
- If you don't mind to see the applications icons, you can set "download-icons=0" (**fpakman --download-icons=0**). The application may have a slight response improvement, since it will reduce the parallelism within it. - If you don't mind to see the applications icons, you can set "download-icons=0" (**bauh --download-icons=0**). The application may have a slight response improvement, since it will reduce the parallelism within it.
- If you don't mind app suggestions, disable it (**fpakman --sugs=0**) - If you don't mind app suggestions, disable it (**bauh --sugs=0**)
### Roadmap ### Roadmap
- Support for other packaging technologies - Support for other packaging technologies

View File

@@ -5,18 +5,18 @@ import sys
desktop_file = """ desktop_file = """
[Desktop Entry] [Desktop Entry]
Type = Application Type = Application
Name = fpakman Name = bauh
Categories = System; Categories = System;
Comment = Manage your Flatpak / Snap applications Comment = Manage your Flatpak / Snap applications
Exec = {path} Exec = {path}
Icon = {lib_path}/python{version}/site-packages/fpakman/resources/img/logo.svg Icon = {lib_path}/python{version}/site-packages/bauh/resources/img/logo.svg
""" """
py_version = "{}.{}".format(sys.version_info.major, sys.version_info.minor) py_version = "{}.{}".format(sys.version_info.major, sys.version_info.minor)
fpakman_cmd = os.getenv('FPAKMAN_PATH', '/usr/bin/fpakman') app_cmd = os.getenv('BAUH_PATH', '/usr/bin/bauh')
with open('fpakman.desktop', 'w+') as f: with open('bauh.desktop', 'w+') as f:
f.write(desktop_file.format(lib_path=os.getenv('FPAKMAN_LIB_PATH', '/usr/lib'), f.write(desktop_file.format(lib_path=os.getenv('BAUH_LIB_PATH', '/usr/lib'),
version=py_version, version=py_version,
path=fpakman_cmd)) path=app_cmd))

View File

@@ -5,22 +5,22 @@ import sys
desktop_file = """ desktop_file = """
[Desktop Entry] [Desktop Entry]
Type = Application Type = Application
Name = fpakman (tray) Name = bauh (tray)
Categories = System; Categories = System;
Comment = Manage your Flatpak / Snap applications Comment = Manage your Flatpak / Snap applications
Exec = {path} Exec = {path}
Icon = {lib_path}/python{version}/site-packages/fpakman/resources/img/logo.svg Icon = {lib_path}/python{version}/site-packages/bauh/resources/img/logo.svg
""" """
py_version = "{}.{}".format(sys.version_info.major, sys.version_info.minor) py_version = "{}.{}".format(sys.version_info.major, sys.version_info.minor)
fpakman_cmd = os.getenv('FPAKMAN_PATH', '/usr/bin/fpakman') + ' --tray=1' app_cmd = os.getenv('BAUH_PATH', '/usr/bin/bauh') + ' --tray=1'
with open('fpakman_tray.desktop', 'w+') as f: with open('bauh_tray.desktop', 'w+') as f:
f.write(desktop_file.format(lib_path=os.getenv('FPAKMAN_LIB_PATH', '/usr/lib'), f.write(desktop_file.format(lib_path=os.getenv('BAUH_LIB_PATH', '/usr/lib'),
version=py_version, version=py_version,
path=fpakman_cmd)) path=app_cmd))
with open('fpakman-tray', 'w') as f: with open('bauh-tray', 'w') as f:
f.write(fpakman_cmd) f.write(app_cmd)

View File

@@ -1,5 +1,5 @@
__version__ = '0.5.1' __version__ = '0.5.1'
__app_name__ = 'fpakman' __app_name__ = 'bauh'
import os import os
ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) ROOT_DIR = os.path.dirname(os.path.abspath(__file__))

View File

@@ -8,21 +8,21 @@ from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets import QApplication
from colorama import Fore from colorama import Fore
from fpakman import __version__, __app_name__ from bauh import __version__, __app_name__
from fpakman.core import resource from bauh.core import resource
from fpakman.core.controller import GenericApplicationManager from bauh.core.controller import GenericApplicationManager
from fpakman.core.disk import DiskCacheLoaderFactory from bauh.core.disk import DiskCacheLoaderFactory
from fpakman.core.flatpak.constants import FLATPAK_CACHE_PATH from bauh.core.flatpak.constants import FLATPAK_CACHE_PATH
from fpakman.core.flatpak.controller import FlatpakManager from bauh.core.flatpak.controller import FlatpakManager
from fpakman.core.flatpak.model import FlatpakApplication from bauh.core.flatpak.model import FlatpakApplication
from fpakman.core.snap.constants import SNAP_CACHE_PATH from bauh.core.snap.constants import SNAP_CACHE_PATH
from fpakman.core.snap.controller import SnapManager from bauh.core.snap.controller import SnapManager
from fpakman.core.snap.model import SnapApplication from bauh.core.snap.model import SnapApplication
from fpakman.util import util from bauh.util import util
from fpakman.util.cache import Cache from bauh.util.cache import Cache
from fpakman.util.memory import CacheCleaner from bauh.util.memory import CacheCleaner
from fpakman.view.qt.systray import TrayIcon from bauh.view.qt.systray import TrayIcon
from fpakman.view.qt.window import ManageWindow from bauh.view.qt.window import ManageWindow
def log_msg(msg: str, color: int = None): def log_msg(msg: str, color: int = None):
@@ -35,18 +35,18 @@ def log_msg(msg: str, color: int = None):
parser = argparse.ArgumentParser(prog=__app_name__, description="GUI for Flatpak applications management") parser = argparse.ArgumentParser(prog=__app_name__, description="GUI for Flatpak applications management")
parser.add_argument('-v', '--version', action='version', version='%(prog)s {}'.format(__version__)) parser.add_argument('-v', '--version', action='version', version='%(prog)s {}'.format(__version__))
parser.add_argument('-e', '--cache-exp', action="store", default=int(os.getenv('FPAKMAN_CACHE_EXPIRATION', 60 * 60)), type=int, help='cached API data expiration time in SECONDS. Default: %(default)s') parser.add_argument('-e', '--cache-exp', action="store", default=int(os.getenv('BAUH_CACHE_EXPIRATION', 60 * 60)), type=int, help='cached API data expiration time in SECONDS. Default: %(default)s')
parser.add_argument('-ie', '--icon-exp', action="store", default=int(os.getenv('FPAKMAN_ICON_EXPIRATION', 60 * 5)), type=int, help='cached icons expiration time in SECONDS. Default: %(default)s') parser.add_argument('-ie', '--icon-exp', action="store", default=int(os.getenv('BAUH_ICON_EXPIRATION', 60 * 5)), type=int, help='cached icons expiration time in SECONDS. Default: %(default)s')
parser.add_argument('-l', '--locale', action="store", default=os.getenv('FPAKMAN_LOCALE', 'en'), help='Translation key. Default: %(default)s') parser.add_argument('-l', '--locale', action="store", default=os.getenv('BAUH_LOCALE', 'en'), help='Translation key. Default: %(default)s')
parser.add_argument('-i', '--check-interval', action="store", default=int(os.getenv('FPAKMAN_CHECK_INTERVAL', 60)), type=int, help='Updates check interval in SECONDS. Default: %(default)s') parser.add_argument('-i', '--check-interval', action="store", default=int(os.getenv('BAUH_CHECK_INTERVAL', 60)), type=int, help='Updates check interval in SECONDS. Default: %(default)s')
parser.add_argument('-n', '--update-notification', action="store", choices=[0, 1], default=os.getenv('FPAKMAN_UPDATE_NOTIFICATION', 1), type=int, help='Enables / disables system notifications for new updates. Default: %(default)s') parser.add_argument('-n', '--update-notification', action="store", choices=[0, 1], default=os.getenv('BAUH_UPDATE_NOTIFICATION', 1), type=int, help='Enables / disables system notifications for new updates. Default: %(default)s')
parser.add_argument('-dc', '--disk-cache', action="store", choices=[0, 1], default=os.getenv('FPAKMAN_DISK_CACHE', 1), type=int, help='Enables / disables disk cache. When disk cache is enabled, the installed applications data are loaded faster. Default: %(default)s') parser.add_argument('-dc', '--disk-cache', action="store", choices=[0, 1], default=os.getenv('BAUH_DISK_CACHE', 1), type=int, help='Enables / disables disk cache. When disk cache is enabled, the installed applications data are loaded faster. Default: %(default)s')
parser.add_argument('-di', '--download-icons', action="store", choices=[0, 1], default=os.getenv('FPAKMAN_DOWNLOAD_ICONS', 1), type=int, help='Enables / disables app icons download. It may improve the application speed, depending of how applications data are retrieved by their extensions.') parser.add_argument('-di', '--download-icons', action="store", choices=[0, 1], default=os.getenv('BAUH_DOWNLOAD_ICONS', 1), type=int, help='Enables / disables app icons download. It may improve the application speed, depending of how applications data are retrieved by their extensions.')
parser.add_argument('--flatpak', action="store", default=os.getenv('FPAKMAN_FLATPAK', 1), choices=[0, 1], type=int, help='Enables / disables flatpak usage. Default: %(default)s') parser.add_argument('--flatpak', action="store", default=os.getenv('BAUH_FLATPAK', 1), choices=[0, 1], type=int, help='Enables / disables flatpak usage. Default: %(default)s')
parser.add_argument('--snap', action="store", default=os.getenv('FPAKMAN_SNAP', 1), choices=[0, 1], type=int, help='Enables / disables snap usage. Default: %(default)s') parser.add_argument('--snap', action="store", default=os.getenv('BAUH_SNAP', 1), choices=[0, 1], type=int, help='Enables / disables snap usage. Default: %(default)s')
parser.add_argument('-co', '--check-packaging-once', action="store", default=os.getenv('FPAKMAN_CHECK_PACKAGING_ONCE', 0), choices=[0, 1], type=int, help='If the available supported packaging types should be checked ONLY once. It improves the application speed if enabled, but can generate errors if you uninstall any packaging technology while using it, and every time a supported packaging type is installed it will only be available after a restart. Default: %(default)s') parser.add_argument('-co', '--check-packaging-once', action="store", default=os.getenv('BAUH_CHECK_PACKAGING_ONCE', 0), choices=[0, 1], type=int, help='If the available supported packaging types should be checked ONLY once. It improves the application speed if enabled, but can generate errors if you uninstall any packaging technology while using it, and every time a supported packaging type is installed it will only be available after a restart. Default: %(default)s')
parser.add_argument('--tray', action="store", default=os.getenv('FPAKMAN_TRAY', 0), choices=[0, 1], type=int, help='If the tray icon and update-check daemon should be created. Default: %(default)s') parser.add_argument('--tray', action="store", default=os.getenv('BAUH_TRAY', 0), choices=[0, 1], type=int, help='If the tray icon and update-check daemon should be created. Default: %(default)s')
parser.add_argument('--sugs', action="store", default=os.getenv('FPAKMAN_SUGGESTIONS', 1), choices=[0, 1], type=int, help='If app suggestions should be displayed if no app is installed (runtimes do not count as apps). Default: %(default)s') parser.add_argument('--sugs', action="store", default=os.getenv('BAUH_SUGGESTIONS', 1), choices=[0, 1], type=int, help='If app suggestions should be displayed if no app is installed (runtimes do not count as apps). Default: %(default)s')
args = parser.parse_args() args = parser.parse_args()
if args.cache_exp < 0: if args.cache_exp < 0:

View File

@@ -1,6 +1,6 @@
from pathlib import Path from pathlib import Path
from fpakman import __app_name__ from bauh import __app_name__
HOME_PATH = Path.home() HOME_PATH = Path.home()
CACHE_PATH = '{}/.cache/{}'.format(HOME_PATH, __app_name__) CACHE_PATH = '{}/.cache/{}'.format(HOME_PATH, __app_name__)

View File

@@ -3,9 +3,9 @@ from argparse import Namespace
from threading import Thread from threading import Thread
from typing import List, Dict from typing import List, Dict
from fpakman.core.disk import DiskCacheLoader, DiskCacheLoaderFactory from bauh.core.disk import DiskCacheLoader, DiskCacheLoaderFactory
from fpakman.core.model import Application, ApplicationUpdate from bauh.core.model import Application, ApplicationUpdate
from fpakman.core.system import FpakmanProcess from bauh.core.system import BauhProcess
class ApplicationManager(ABC): class ApplicationManager(ABC):
@@ -23,7 +23,7 @@ class ApplicationManager(ABC):
pass pass
@abstractmethod @abstractmethod
def downgrade_app(self, app: Application, root_password: str) -> FpakmanProcess: def downgrade_app(self, app: Application, root_password: str) -> BauhProcess:
pass pass
@abstractmethod @abstractmethod
@@ -35,11 +35,11 @@ class ApplicationManager(ABC):
pass pass
@abstractmethod @abstractmethod
def update_and_stream(self, app: Application) -> FpakmanProcess: def update_and_stream(self, app: Application) -> BauhProcess:
pass pass
@abstractmethod @abstractmethod
def uninstall_and_stream(self, app: Application, root_password: str) -> FpakmanProcess: def uninstall_and_stream(self, app: Application, root_password: str) -> BauhProcess:
pass pass
@abstractmethod @abstractmethod
@@ -55,7 +55,7 @@ class ApplicationManager(ABC):
pass pass
@abstractmethod @abstractmethod
def install_and_stream(self, app: Application, root_password: str) -> FpakmanProcess: def install_and_stream(self, app: Application, root_password: str) -> BauhProcess:
pass pass
@abstractmethod @abstractmethod
@@ -71,7 +71,7 @@ class ApplicationManager(ABC):
pass pass
@abstractmethod @abstractmethod
def refresh(self, app: Application, root_password: str) -> FpakmanProcess: def refresh(self, app: Application, root_password: str) -> BauhProcess:
pass pass
@abstractmethod @abstractmethod
@@ -202,7 +202,7 @@ class GenericApplicationManager(ApplicationManager):
def can_downgrade(self): def can_downgrade(self):
return True return True
def downgrade_app(self, app: Application, root_password: str) -> FpakmanProcess: def downgrade_app(self, app: Application, root_password: str) -> BauhProcess:
man = self._get_manager_for(app) man = self._get_manager_for(app)
if man and man.can_downgrade(): if man and man.can_downgrade():
@@ -216,19 +216,19 @@ class GenericApplicationManager(ApplicationManager):
if man: if man:
return man.clean_cache_for(app) return man.clean_cache_for(app)
def update_and_stream(self, app: Application) -> FpakmanProcess: def update_and_stream(self, app: Application) -> BauhProcess:
man = self._get_manager_for(app) man = self._get_manager_for(app)
if man: if man:
return man.update_and_stream(app) return man.update_and_stream(app)
def uninstall_and_stream(self, app: Application, root_password: str) -> FpakmanProcess: def uninstall_and_stream(self, app: Application, root_password: str) -> BauhProcess:
man = self._get_manager_for(app) man = self._get_manager_for(app)
if man: if man:
return man.uninstall_and_stream(app, root_password) return man.uninstall_and_stream(app, root_password)
def install_and_stream(self, app: Application, root_password: str) -> FpakmanProcess: def install_and_stream(self, app: Application, root_password: str) -> BauhProcess:
man = self._get_manager_for(app) man = self._get_manager_for(app)
if man: if man:
@@ -269,7 +269,7 @@ class GenericApplicationManager(ApplicationManager):
if man: if man:
return man.requires_root(action, app) return man.requires_root(action, app)
def refresh(self, app: Application, root_password: str) -> FpakmanProcess: def refresh(self, app: Application, root_password: str) -> BauhProcess:
self._wait_to_be_ready() self._wait_to_be_ready()
man = self._get_manager_for(app) man = self._get_manager_for(app)

View File

@@ -4,8 +4,8 @@ from pathlib import Path
from threading import Thread, Lock from threading import Thread, Lock
from typing import List, Dict from typing import List, Dict
from fpakman.core.model import Application from bauh.core.model import Application
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class DiskCacheLoader(Thread): class DiskCacheLoader(Thread):

View File

@@ -1,4 +1,4 @@
from fpakman.core.constants import CACHE_PATH from bauh.core.constants import CACHE_PATH
FLATHUB_URL = 'https://flathub.org' FLATHUB_URL = 'https://flathub.org'
FLATHUB_API_URL = FLATHUB_URL + '/api/v1' FLATHUB_API_URL = FLATHUB_URL + '/api/v1'

View File

@@ -4,15 +4,15 @@ from argparse import Namespace
from datetime import datetime from datetime import datetime
from typing import List, Dict from typing import List, Dict
from fpakman.core import disk from bauh.core import disk
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.disk import DiskCacheLoader from bauh.core.disk import DiskCacheLoader
from fpakman.core.flatpak import flatpak from bauh.core.flatpak import flatpak
from fpakman.core.flatpak.model import FlatpakApplication from bauh.core.flatpak.model import FlatpakApplication
from fpakman.core.flatpak.worker import FlatpakAsyncDataLoader, FlatpakUpdateLoader from bauh.core.flatpak.worker import FlatpakAsyncDataLoader, FlatpakUpdateLoader
from fpakman.core.model import ApplicationData, ApplicationUpdate from bauh.core.model import ApplicationData, ApplicationUpdate
from fpakman.core.system import FpakmanProcess from bauh.core.system import BauhProcess
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class FlatpakManager(ApplicationManager): class FlatpakManager(ApplicationManager):
@@ -97,7 +97,7 @@ class FlatpakManager(ApplicationManager):
def can_downgrade(self): def can_downgrade(self):
return True return True
def downgrade_app(self, app: FlatpakApplication, root_password: str) -> FpakmanProcess: def downgrade_app(self, app: FlatpakApplication, root_password: str) -> BauhProcess:
commits = flatpak.get_app_commits(app.ref, app.origin) commits = flatpak.get_app_commits(app.ref, app.origin)
@@ -107,8 +107,8 @@ class FlatpakManager(ApplicationManager):
if commit_idx == len(commits) - 1: if commit_idx == len(commits) - 1:
return None return None
return FpakmanProcess(subproc=flatpak.downgrade_and_stream(app.ref, commits[commit_idx + 1], root_password), return BauhProcess(subproc=flatpak.downgrade_and_stream(app.ref, commits[commit_idx + 1], root_password),
success_phrase='Updates complete.') success_phrase='Updates complete.')
def clean_cache_for(self, app: FlatpakApplication): def clean_cache_for(self, app: FlatpakApplication):
self.api_cache.delete(app.base_data.id) self.api_cache.delete(app.base_data.id)
@@ -116,11 +116,11 @@ class FlatpakManager(ApplicationManager):
if app.supports_disk_cache() and os.path.exists(app.get_disk_cache_path()): if app.supports_disk_cache() and os.path.exists(app.get_disk_cache_path()):
shutil.rmtree(app.get_disk_cache_path()) shutil.rmtree(app.get_disk_cache_path())
def update_and_stream(self, app: FlatpakApplication) -> FpakmanProcess: def update_and_stream(self, app: FlatpakApplication) -> BauhProcess:
return FpakmanProcess(subproc=flatpak.update_and_stream(app.ref)) return BauhProcess(subproc=flatpak.update_and_stream(app.ref))
def uninstall_and_stream(self, app: FlatpakApplication, root_password: str = None) -> FpakmanProcess: def uninstall_and_stream(self, app: FlatpakApplication, root_password: str = None) -> BauhProcess:
return FpakmanProcess(subproc=flatpak.uninstall_and_stream(app.ref)) return BauhProcess(subproc=flatpak.uninstall_and_stream(app.ref))
def get_info(self, app: FlatpakApplication) -> dict: def get_info(self, app: FlatpakApplication) -> dict:
app_info = flatpak.get_app_info_fields(app.base_data.id, app.branch) app_info = flatpak.get_app_info_fields(app.base_data.id, app.branch)
@@ -132,8 +132,8 @@ class FlatpakManager(ApplicationManager):
def get_history(self, app: FlatpakApplication) -> List[dict]: def get_history(self, app: FlatpakApplication) -> List[dict]:
return flatpak.get_app_commits_data(app.ref, app.origin) return flatpak.get_app_commits_data(app.ref, app.origin)
def install_and_stream(self, app: FlatpakApplication, root_password: str) -> FpakmanProcess: def install_and_stream(self, app: FlatpakApplication, root_password: str) -> BauhProcess:
return FpakmanProcess(subproc=flatpak.install_and_stream(app.base_data.id, app.origin)) return BauhProcess(subproc=flatpak.install_and_stream(app.base_data.id, app.origin))
def is_enabled(self): def is_enabled(self):
return flatpak.is_installed() return flatpak.is_installed()
@@ -145,7 +145,7 @@ class FlatpakManager(ApplicationManager):
def requires_root(self, action: str, app: FlatpakApplication): def requires_root(self, action: str, app: FlatpakApplication):
return action == 'downgrade' return action == 'downgrade'
def refresh(self, app: FlatpakApplication, root_password: str) -> FpakmanProcess: def refresh(self, app: FlatpakApplication, root_password: str) -> BauhProcess:
raise Exception("'refresh' is not supported for {}".format(app.__class__.__name__)) raise Exception("'refresh' is not supported for {}".format(app.__class__.__name__))
def prepare(self): def prepare(self):

View File

@@ -2,8 +2,8 @@ import re
import subprocess import subprocess
from typing import List from typing import List
from fpakman.core import system from bauh.core import system
from fpakman.core.exception import NoInternetException from bauh.core.exception import NoInternetException
BASE_CMD = 'flatpak' BASE_CMD = 'flatpak'

View File

@@ -1,6 +1,6 @@
from fpakman.core import resource from bauh.core import resource
from fpakman.core.flatpak.constants import FLATPAK_CACHE_PATH from bauh.core.flatpak.constants import FLATPAK_CACHE_PATH
from fpakman.core.model import Application, ApplicationData from bauh.core.model import Application, ApplicationData
class FlatpakApplication(Application): class FlatpakApplication(Application):

View File

@@ -4,13 +4,13 @@ from threading import Thread
from colorama import Fore from colorama import Fore
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.flatpak import flatpak from bauh.core.flatpak import flatpak
from fpakman.core.flatpak.constants import FLATHUB_API_URL, FLATHUB_URL from bauh.core.flatpak.constants import FLATHUB_API_URL, FLATHUB_URL
from fpakman.core.flatpak.model import FlatpakApplication from bauh.core.flatpak.model import FlatpakApplication
from fpakman.core.model import ApplicationStatus from bauh.core.model import ApplicationStatus
from fpakman.core.worker import AsyncDataLoader from bauh.core.worker import AsyncDataLoader
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class FlatpakAsyncDataLoader(AsyncDataLoader): class FlatpakAsyncDataLoader(AsyncDataLoader):

View File

@@ -1,7 +1,7 @@
from abc import ABC, abstractmethod from abc import ABC, abstractmethod
from enum import Enum from enum import Enum
from fpakman.core import resource from bauh.core import resource
class ApplicationStatus(Enum): class ApplicationStatus(Enum):

View File

@@ -1,5 +1,5 @@
from fpakman import ROOT_DIR from bauh import ROOT_DIR
def get_path(resource_path): def get_path(resource_path):

View File

@@ -1,4 +1,4 @@
from fpakman.core.constants import CACHE_PATH from bauh.core.constants import CACHE_PATH
SNAP_API_URL = 'https://search.apps.ubuntu.com/api/v1' SNAP_API_URL = 'https://search.apps.ubuntu.com/api/v1'
SNAP_CACHE_PATH = '{}/snap/installed'.format(CACHE_PATH) SNAP_CACHE_PATH = '{}/snap/installed'.format(CACHE_PATH)

View File

@@ -4,15 +4,15 @@ from argparse import Namespace
from datetime import datetime from datetime import datetime
from typing import Dict, List from typing import Dict, List
from fpakman.core import disk from bauh.core import disk
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.disk import DiskCacheLoader from bauh.core.disk import DiskCacheLoader
from fpakman.core.model import ApplicationData, Application, ApplicationUpdate from bauh.core.model import ApplicationData, Application, ApplicationUpdate
from fpakman.core.snap import snap from bauh.core.snap import snap
from fpakman.core.snap.model import SnapApplication from bauh.core.snap.model import SnapApplication
from fpakman.core.snap.worker import SnapAsyncDataLoader from bauh.core.snap.worker import SnapAsyncDataLoader
from fpakman.core.system import FpakmanProcess from bauh.core.system import BauhProcess
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class SnapManager(ApplicationManager): class SnapManager(ApplicationManager):
@@ -76,8 +76,8 @@ class SnapManager(ApplicationManager):
def read_installed(self, disk_loader: DiskCacheLoader) -> List[SnapApplication]: def read_installed(self, disk_loader: DiskCacheLoader) -> List[SnapApplication]:
return [self.map_json(app_json, installed=True, disk_loader=disk_loader) for app_json in snap.read_installed()] return [self.map_json(app_json, installed=True, disk_loader=disk_loader) for app_json in snap.read_installed()]
def downgrade_app(self, app: Application, root_password: str) -> FpakmanProcess: def downgrade_app(self, app: Application, root_password: str) -> BauhProcess:
return FpakmanProcess(subproc=snap.downgrade_and_stream(app.base_data.name, root_password), wrong_error_phrase=None) return BauhProcess(subproc=snap.downgrade_and_stream(app.base_data.name, root_password), wrong_error_phrase=None)
def clean_cache_for(self, app: SnapApplication): def clean_cache_for(self, app: SnapApplication):
self.api_cache.delete(app.base_data.name) self.api_cache.delete(app.base_data.name)
@@ -88,11 +88,11 @@ class SnapManager(ApplicationManager):
def can_downgrade(self): def can_downgrade(self):
return True return True
def update_and_stream(self, app: SnapApplication) -> FpakmanProcess: def update_and_stream(self, app: SnapApplication) -> BauhProcess:
pass pass
def uninstall_and_stream(self, app: SnapApplication, root_password: str) -> FpakmanProcess: def uninstall_and_stream(self, app: SnapApplication, root_password: str) -> BauhProcess:
return FpakmanProcess(subproc=snap.uninstall_and_stream(app.base_data.name, root_password)) return BauhProcess(subproc=snap.uninstall_and_stream(app.base_data.name, root_password))
def get_app_type(self): def get_app_type(self):
return SnapApplication return SnapApplication
@@ -112,8 +112,8 @@ class SnapManager(ApplicationManager):
def get_history(self, app: Application) -> List[dict]: def get_history(self, app: Application) -> List[dict]:
return [] return []
def install_and_stream(self, app: SnapApplication, root_password: str) -> FpakmanProcess: def install_and_stream(self, app: SnapApplication, root_password: str) -> BauhProcess:
return FpakmanProcess(subproc=snap.install_and_stream(app.base_data.name, app.confinement, root_password)) return BauhProcess(subproc=snap.install_and_stream(app.base_data.name, app.confinement, root_password))
def is_enabled(self) -> bool: def is_enabled(self) -> bool:
return snap.is_installed() return snap.is_installed()
@@ -125,8 +125,8 @@ class SnapManager(ApplicationManager):
def requires_root(self, action: str, app: SnapApplication): def requires_root(self, action: str, app: SnapApplication):
return action != 'search' return action != 'search'
def refresh(self, app: SnapApplication, root_password: str) -> FpakmanProcess: def refresh(self, app: SnapApplication, root_password: str) -> BauhProcess:
return FpakmanProcess(subproc=snap.refresh_and_stream(app.base_data.name, root_password)) return BauhProcess(subproc=snap.refresh_and_stream(app.base_data.name, root_password))
def prepare(self): def prepare(self):
pass pass

View File

@@ -1,6 +1,6 @@
from fpakman.core import resource from bauh.core import resource
from fpakman.core.model import Application, ApplicationData from bauh.core.model import Application, ApplicationData
from fpakman.core.snap.constants import SNAP_CACHE_PATH from bauh.core.snap.constants import SNAP_CACHE_PATH
class SnapApplication(Application): class SnapApplication(Application):

View File

@@ -2,7 +2,7 @@ import re
import subprocess import subprocess
from typing import List from typing import List
from fpakman.core import system from bauh.core import system
BASE_CMD = 'snap' BASE_CMD = 'snap'

View File

@@ -3,13 +3,13 @@ import traceback
from colorama import Fore from colorama import Fore
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.model import ApplicationStatus from bauh.core.model import ApplicationStatus
from fpakman.core.snap import snap from bauh.core.snap import snap
from fpakman.core.snap.constants import SNAP_API_URL from bauh.core.snap.constants import SNAP_API_URL
from fpakman.core.snap.model import SnapApplication from bauh.core.snap.model import SnapApplication
from fpakman.core.worker import AsyncDataLoader from bauh.core.worker import AsyncDataLoader
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class SnapAsyncDataLoader(AsyncDataLoader): class SnapAsyncDataLoader(AsyncDataLoader):

View File

@@ -2,11 +2,11 @@ import os
import subprocess import subprocess
from typing import List from typing import List
from fpakman import __app_name__ from bauh import __app_name__
from fpakman.core import resource from bauh.core import resource
class FpakmanProcess: class BauhProcess:
def __init__(self, subproc: subprocess.Popen, success_phrase: str = None, wrong_error_phrase: str = '[sudo] password for'): def __init__(self, subproc: subprocess.Popen, success_phrase: str = None, wrong_error_phrase: str = '[sudo] password for'):
self.subproc = subproc self.subproc = subproc

View File

@@ -3,7 +3,7 @@ from threading import Thread
from colorama import Fore from colorama import Fore
from fpakman.core.model import Application from bauh.core.model import Application
class AsyncDataLoader(Thread): class AsyncDataLoader(Thread):

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View File

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 74 KiB

View File

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Before

Width:  |  Height:  |  Size: 6.6 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -2,7 +2,7 @@ import time
from threading import Thread from threading import Thread
from typing import List from typing import List
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class CacheCleaner(Thread): class CacheCleaner(Thread):

View File

@@ -1,6 +1,6 @@
import locale import locale
from fpakman.core import resource from bauh.core import resource
import glob import glob
import re import re

View File

@@ -2,11 +2,11 @@ from PyQt5.QtCore import Qt
from PyQt5.QtGui import QPixmap from PyQt5.QtGui import QPixmap
from PyQt5.QtWidgets import QVBoxLayout, QDialog, QLabel from PyQt5.QtWidgets import QVBoxLayout, QDialog, QLabel
from fpakman import __version__, __app_name__ from bauh import __version__, __app_name__
from fpakman.core import resource from bauh.core import resource
PROJECT_URL = 'https://github.com/vinifmor/fpakman' PROJECT_URL = 'https://github.com/vinifmor/' + __app_name__
LICENSE_URL = 'https://raw.githubusercontent.com/vinifmor/fpakman/master/LICENSE' LICENSE_URL = 'https://raw.githubusercontent.com/vinifmor/{}/master/LICENSE'.format(__app_name__)
class AboutDialog(QDialog): class AboutDialog(QDialog):

View File

@@ -8,12 +8,12 @@ from PyQt5.QtNetwork import QNetworkAccessManager, QNetworkRequest
from PyQt5.QtWidgets import QTableWidget, QTableView, QMenu, QAction, QTableWidgetItem, QWidget, \ from PyQt5.QtWidgets import QTableWidget, QTableView, QMenu, QAction, QTableWidgetItem, QWidget, \
QHeaderView, QLabel, QHBoxLayout, QPushButton, QToolButton, QToolBar QHeaderView, QLabel, QHBoxLayout, QPushButton, QToolButton, QToolBar
from fpakman.core import resource from bauh.core import resource
from fpakman.core.model import ApplicationStatus from bauh.core.model import ApplicationStatus
from fpakman.util import util from bauh.util import util
from fpakman.util.cache import Cache from bauh.util.cache import Cache
from fpakman.view.qt import dialog from bauh.view.qt import dialog
from fpakman.view.qt.view_model import ApplicationView, ApplicationViewStatus from bauh.view.qt.view_model import ApplicationView, ApplicationViewStatus
INSTALL_BT_STYLE = 'background: {back}; color: white; font-size: 10px; font-weight: bold' INSTALL_BT_STYLE = 'background: {back}; color: white; font-size: 10px; font-weight: bold'

View File

@@ -1,7 +1,7 @@
from PyQt5.QtGui import QIcon from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QMessageBox from PyQt5.QtWidgets import QMessageBox
from fpakman.core import resource from bauh.core import resource
def show_error(title: str, body: str, icon: QIcon = QIcon(resource.get_path('img/logo.svg'))): def show_error(title: str, body: str, icon: QIcon = QIcon(resource.get_path('img/logo.svg'))):

View File

@@ -5,7 +5,7 @@ from PyQt5.QtCore import Qt
from PyQt5.QtGui import QColor from PyQt5.QtGui import QColor
from PyQt5.QtWidgets import QDialog, QVBoxLayout, QTableWidget, QTableWidgetItem, QHeaderView from PyQt5.QtWidgets import QDialog, QVBoxLayout, QTableWidget, QTableWidgetItem, QHeaderView
from fpakman.util.cache import Cache from bauh.util.cache import Cache
class HistoryDialog(QDialog): class HistoryDialog(QDialog):

View File

@@ -2,8 +2,8 @@ from PyQt5.QtCore import QSize
from PyQt5.QtWidgets import QDialog, QVBoxLayout, QFormLayout, QGroupBox, \ from PyQt5.QtWidgets import QDialog, QVBoxLayout, QFormLayout, QGroupBox, \
QLineEdit, QLabel QLineEdit, QLabel
from fpakman.util import util from bauh.util import util
from fpakman.util.cache import Cache from bauh.util.cache import Cache
IGNORED_ATTRS = {'name', '__app__'} IGNORED_ATTRS = {'name', '__app__'}

View File

@@ -4,7 +4,7 @@ import subprocess
from PyQt5.QtWidgets import QInputDialog, QLineEdit from PyQt5.QtWidgets import QInputDialog, QLineEdit
from fpakman.view.qt.dialog import show_error from bauh.view.qt.dialog import show_error
def is_root(): def is_root():

View File

@@ -6,12 +6,12 @@ from PyQt5.QtCore import QThread, pyqtSignal, QCoreApplication, Qt
from PyQt5.QtGui import QIcon from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QSystemTrayIcon, QMenu from PyQt5.QtWidgets import QSystemTrayIcon, QMenu
from fpakman import __app_name__ from bauh import __app_name__
from fpakman.core import resource, system from bauh.core import resource, system
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.model import ApplicationUpdate from bauh.core.model import ApplicationUpdate
from fpakman.view.qt.about import AboutDialog from bauh.view.qt.about import AboutDialog
from fpakman.view.qt.window import ManageWindow from bauh.view.qt.window import ManageWindow
class UpdateCheck(QThread): class UpdateCheck(QThread):

View File

@@ -6,18 +6,18 @@ from typing import List
import requests import requests
from PyQt5.QtCore import QThread, pyqtSignal from PyQt5.QtCore import QThread, pyqtSignal
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.exception import NoInternetException from bauh.core.exception import NoInternetException
from fpakman.core.model import ApplicationStatus from bauh.core.model import ApplicationStatus
from fpakman.core.system import FpakmanProcess from bauh.core.system import BauhProcess
from fpakman.util.cache import Cache from bauh.util.cache import Cache
from fpakman.view.qt import dialog from bauh.view.qt import dialog
from fpakman.view.qt.view_model import ApplicationView from bauh.view.qt.view_model import ApplicationView
class AsyncAction(QThread): class AsyncAction(QThread):
def notify_subproc_outputs(self, proc: FpakmanProcess, signal) -> bool: def notify_subproc_outputs(self, proc: BauhProcess, signal) -> bool:
""" """
:param subproc: :param subproc:
:param signal: :param signal:

View File

@@ -1,6 +1,6 @@
from enum import Enum from enum import Enum
from fpakman.core.model import Application from bauh.core.model import Application
class ApplicationViewStatus(Enum): class ApplicationViewStatus(Enum):

View File

@@ -7,19 +7,19 @@ from PyQt5.QtGui import QIcon, QWindowStateChangeEvent, QPixmap
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QApplication, QCheckBox, QHeaderView, QToolButton, QToolBar, \ from PyQt5.QtWidgets import QWidget, QVBoxLayout, QApplication, QCheckBox, QHeaderView, QToolButton, QToolBar, \
QSizePolicy, QLabel, QPlainTextEdit, QLineEdit, QProgressBar, QHBoxLayout QSizePolicy, QLabel, QPlainTextEdit, QLineEdit, QProgressBar, QHBoxLayout
from fpakman.core import resource, system from bauh.core import resource, system
from fpakman.core.controller import ApplicationManager from bauh.core.controller import ApplicationManager
from fpakman.core.model import Application from bauh.core.model import Application
from fpakman.util.cache import Cache from bauh.util.cache import Cache
from fpakman.view.qt import dialog from bauh.view.qt import dialog
from fpakman.view.qt.about import AboutDialog from bauh.view.qt.about import AboutDialog
from fpakman.view.qt.apps_table import AppsTable from bauh.view.qt.apps_table import AppsTable
from fpakman.view.qt.history import HistoryDialog from bauh.view.qt.history import HistoryDialog
from fpakman.view.qt.info import InfoDialog from bauh.view.qt.info import InfoDialog
from fpakman.view.qt.root import is_root, ask_root_password from bauh.view.qt.root import is_root, ask_root_password
from fpakman.view.qt.thread import UpdateSelectedApps, RefreshApps, UninstallApp, DowngradeApp, GetAppInfo, \ from bauh.view.qt.thread import UpdateSelectedApps, RefreshApps, UninstallApp, DowngradeApp, GetAppInfo, \
GetAppHistory, SearchApps, InstallApp, AnimateProgress, VerifyModels, RefreshApp, FindSuggestions, ListWarnings GetAppHistory, SearchApps, InstallApp, AnimateProgress, VerifyModels, RefreshApp, FindSuggestions, ListWarnings
from fpakman.view.qt.view_model import ApplicationView from bauh.view.qt.view_model import ApplicationView
DARK_ORANGE = '#FF4500' DARK_ORANGE = '#FF4500'

View File

@@ -7,7 +7,8 @@ DESCRIPTION = (
AUTHOR = "Vinicius Moreira" AUTHOR = "Vinicius Moreira"
AUTHOR_EMAIL = "vinicius_fmoreira@hotmail.com" AUTHOR_EMAIL = "vinicius_fmoreira@hotmail.com"
URL = "https://github.com/vinifmor/fpakman" NAME = 'bauh'
URL = "https://github.com/vinifmor/" + NAME
file_dir = os.path.dirname(os.path.abspath(__file__)) file_dir = os.path.dirname(os.path.abspath(__file__))
@@ -15,12 +16,12 @@ with open(file_dir + '/requirements.txt', 'r') as f:
requirements = [line.strip() for line in f.readlines() if line] requirements = [line.strip() for line in f.readlines() if line]
with open(file_dir + '/fpakman/__init__.py', 'r') as f: with open(file_dir + '/{}/__init__.py'.format(NAME), 'r') as f:
exec(f.readlines()[0]) exec(f.readlines()[0])
setup( setup(
name="fpakman", name=NAME,
version=eval('__version__'), version=eval('__version__'),
description=DESCRIPTION, description=DESCRIPTION,
long_description=DESCRIPTION, long_description=DESCRIPTION,
@@ -29,11 +30,11 @@ setup(
python_requires=">=3.5", python_requires=">=3.5",
url=URL, url=URL,
packages=find_packages(), packages=find_packages(),
package_data={"fpakman": ["resources/locale/*", "resources/img/*"]}, package_data={NAME: ["resources/locale/*", "resources/img/*"]},
install_requires=requirements, install_requires=requirements,
entry_points={ entry_points={
"console_scripts": [ "console_scripts": [
"fpakman=fpakman.app" "{name}={name}.app".format(name=NAME)
] ]
}, },
include_package_data=True, include_package_data=True,