Skip to content

Commit

Permalink
name changes all over the place
Browse files Browse the repository at this point in the history
  • Loading branch information
n8marti committed Oct 21, 2024
1 parent e115374 commit 42fc29b
Show file tree
Hide file tree
Showing 52 changed files with 82 additions and 68 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/autobuild-main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Run shell tasks
run: |
echo "DATE=$(date +%Y%m%d)" >> $GITHUB_ENV
find -name LogosLinuxInstaller -type f -exec chmod +x {} \;
find -name oudedatai -type f -exec chmod +x {} \;
- name: Upload release to test repo
uses: softprops/action-gh-release@v1
with:
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/build-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,12 +52,12 @@ jobs:
- name: Build with pyinstaller
id: pyinstaller
run: |
pyinstaller logos_on_linux.spec --clean
echo "bin_name=logos-on-linux" >> $GITHUB_OUTPUT
pyinstaller ou_dedatai.spec --clean
echo "bin_name=oudedatai" >> $GITHUB_OUTPUT
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: logos-on-linux
path: dist/logos-on-linux
name: oudedatai
path: dist/oudedatai
compression-level: 0
2 changes: 1 addition & 1 deletion .github/workflows/build-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
- name: download
uses: actions/download-artifact@v4
with:
name: LogosLinuxInstaller
name: oudedatai
- name: release
uses: softprops/action-gh-release@v1
env:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ jobs:
name: ${{ needs.build.outputs.bin_name }}
- name: Fix file permissions
run: |
find -name LogosLinuxInstaller -type f
find -name LogosLinuxInstaller -type f -exec chmod +x {} \;
find -name oudedatai -type f
find -name oudedatai -type f -exec chmod +x {} \;
- name: Upload release to test repo
uses: softprops/action-gh-release@v1
with:
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ FROM ubuntu:focal
# Prevent popups during install of requirements
ENV DEBIAN_FRONTEND=noninteractive

# LogosLinuxInstaller Requirements
# Ou Dedatai Requirements
RUN apt update -qq && apt install -y -qq git build-essential gdb lcov pkg-config \
libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev \
libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev \
Expand All @@ -28,4 +28,4 @@ RUN pyenv install --verbose ${PYTHON_VERSION}
RUN pyenv global ${PYTHON_VERSION}

WORKDIR /usr/src/app
ENTRYPOINT ["sh", "-c", "pip install --no-cache-dir .[build] && pyinstaller logos_on_linux.spec"]
ENTRYPOINT ["sh", "-c", "pip install --no-cache-dir .[build] && pyinstaller ou_dedatai.spec"]
20 changes: 14 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,23 @@
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/f730f74748c348cb9b3ff2fa1654c84b)](https://app.codacy.com/manual/FaithLife-Community/LogosLinuxInstaller?utm_source=github.com&utm_medium=referral&utm_content=FaithLife-Community/LogosLinuxInstaller&utm_campaign=Badge_Grade_Dashboard)
[![Automation testing](https://img.shields.io/badge/Automation-testing-sucess)](https://github.com/FaithLife-Community/LogosLinuxInstallTests) [![Installer LogosBible](https://img.shields.io/badge/Installer-LogosBible-blue)](https://www.logos.com) [![LastRelease](https://img.shields.io/github/v/release/FaithLife-Community/LogosLinuxInstaller)](https://github.com/FaithLife-Community/LogosLinuxInstaller/releases)

# Install Logos Bible Software on Linux
# Ou Dedatai

This repository contains a Python program for installing and maintaining FaithLife's Logos Bible (Verbum) Software on Linux.
>Remember Jesus Christ, risen from the dead, the offspring of David, as preached in my gospel, for which I am suffering, bound with chains as a criminal. **But the word of God is not bound!**
ἀλλʼ **ὁ λόγος** τοῦ θεοῦ **οὐ δέδεται**
>
> Second Timothy 2:8–9, ESV
## Manages Logos Bible Software via Wine

This repository contains a Python program for installing and maintaining [FaithLife](https://faithlife.com/)'s [Logos Bible (Verbum) Software](https://www.logos.com/) via [Wine](https://www.winehq.org/).

This program is created and maintained by the FaithLife Community and is licensed under the MIT License.

## LogosLinuxInstaller

The main program is a distributable executable and contains Python itself and all necessary Python packages.
## oudetai binary

The main program is a distributable executable binary and contains Python itself and all necessary Python packages.

When running the program, it will attempt to determine your operating system and package manager.
It will then attempt to install all needed system dependencies during the installation of Logos.
Expand Down Expand Up @@ -121,11 +129,11 @@ $ cd LogosLinuxInstaller
# docker run --rm -v $(pwd):/usr/src/app logosinstaller
```

The built binary will now be in `./dist/logos-on-linux`.
The built binary will now be in `./dist/oudedatai`.

## Install guide (possibly outdated)

NOTE: You can run Logos on Linux using the Steam Proton Experimental binary, which often has the latest and greatest updates to make Logos run even smoother. The script should be able to find the binary automatically, unless your Steam install is located outside of your HOME directory.
NOTE: You can run **Ou Dedatai** using the Steam Proton Experimental binary, which often has the latest and greatest updates to make Logos run even smoother. The script should be able to find the binary automatically, unless your Steam install is located outside of your HOME directory.

If you want to install your distro's dependencies outside of the script, please see the [System Dependencies wiki page](https://github.com/FaithLife-Community/LogosLinuxInstaller/wiki/System-Dependencies).

6 changes: 3 additions & 3 deletions logos_on_linux.spec → ou_dedatai.spec
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ a = Analysis(
pathex=[],
#binaries=[('/usr/bin/tclsh8.6', '.')],
binaries=[],
datas=[('logos_on_linux/img/*-128-icon.png', 'img')],
hiddenimports=['logos_on_linux'],
datas=[('ou_dedatai/img/*-128-icon.png', 'img')],
hiddenimports=[],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
Expand All @@ -22,7 +22,7 @@ exe = EXE(
a.binaries,
a.datas,
[],
name='logos-on-linux',
name='oudedatai',
debug=False,
bootloader_ignore_signals=False,
strip=False,
Expand Down
File renamed without changes.
File renamed without changes.
15 changes: 11 additions & 4 deletions logos_on_linux/config.py → ou_dedatai/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@
from datetime import datetime


# Define app name variables.
name_app = 'Ou Dedatai'
name_binary = 'oudedatai'
name_package = 'ou_dedatai'
repo_link = "https://github.com/FaithLife-Community/LogosLinuxInstaller"

# Define and set variables that are required in the config file.
core_config_keys = [
"FLPRODUCT", "TARGETVERSION", "TARGET_RELEASE_VERSION",
Expand All @@ -27,7 +33,7 @@
'DEBUG': False,
'DELETE_LOG': None,
'DIALOG': None,
'LOGOS_LOG': os.path.expanduser("~/.local/state/FaithLife-Community/Logos_on_Linux.log"), # noqa: E501
'LOGOS_LOG': os.path.expanduser(f"~/.local/state/FaithLife-Community/{name_binary}.log"), # noqa: E501
'wine_log': os.path.expanduser("~/.local/state/FaithLife-Community/wine.log"), # noqa: #E501
'LOGOS_EXE': None,
'LOGOS_EXECUTABLE': None,
Expand Down Expand Up @@ -57,7 +63,7 @@
APPIMAGE_FILE_PATH = None
authenticated = False
BADPACKAGES = None
DEFAULT_CONFIG_PATH = os.path.expanduser("~/.config/FaithLife-Community/Logos_on_Linux.json") # noqa: E501
DEFAULT_CONFIG_PATH = os.path.expanduser(f"~/.config/FaithLife-Community/{name_binary}.json") # noqa: E501
FLPRODUCTi = None
GUI = None
INSTALL_STEP = 0
Expand All @@ -67,7 +73,7 @@
LLI_AUTHOR = "Ferion11, John Goodman, T. H. Wright, N. Marti"
LLI_CURRENT_VERSION = "4.0.0-beta.1"
LLI_LATEST_VERSION = None
LLI_TITLE = "Logos Linux Installer"
LLI_TITLE = name_app
LOG_LEVEL = logging.WARNING
LOGOS_BLUE = '#0082FF'
LOGOS_GRAY = '#E7E7E7'
Expand All @@ -77,7 +83,7 @@
LOGOS_FORCE_ROOT = False
LOGOS_ICON_FILENAME = None
LOGOS_ICON_URL = None
LOGOS_LATEST_VERSION_FILENAME = "LogosLinuxInstaller"
LOGOS_LATEST_VERSION_FILENAME = name_binary
LOGOS_LATEST_VERSION_URL = None
LOGOS9_RELEASES = None # used to save downloaded releases list
LOGOS9_WINE64_BOTTLE_TARGZ_NAME = "wine64_bottle.tar.gz"
Expand All @@ -91,6 +97,7 @@
PACKAGE_MANAGER_COMMAND_QUERY = None
PACKAGES = None
PASSIVE = None
pid_file = f'/tmp/{name_binary}.pid'
PRESENT_WORKING_DIRECTORY = os.getcwd()
QUERY_PREFIX = None
REBOOT_REQUIRED = None
Expand Down
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion logos_on_linux/gui_app.py → ou_dedatai/gui_app.py
Original file line number Diff line number Diff line change
Expand Up @@ -668,7 +668,7 @@ def configure_app_button(self, evt=None):
self.gui.app_button.config(command=self.run_installer)

def run_installer(self, evt=None):
classname = "LogosLinuxInstaller"
classname = config.name_binary
self.installer_win = Toplevel()
InstallerWindow(self.installer_win, self.root, class_=classname)
self.root.icon = config.LOGOS_ICON_URL
Expand Down
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
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
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
4 changes: 2 additions & 2 deletions logos_on_linux/installer.py → ou_dedatai/installer.py
Original file line number Diff line number Diff line change
Expand Up @@ -658,7 +658,7 @@ def ensure_launcher_executable(app=None):
)

# Copy executable to config.INSTALLDIR.
launcher_exe = Path(f"{config.INSTALLDIR}/LogosLinuxInstaller")
launcher_exe = Path(f"{config.INSTALLDIR}/{config.name_binary})")
if launcher_exe.is_file():
logging.debug("Removing existing launcher binary.")
launcher_exe.unlink()
Expand Down Expand Up @@ -809,7 +809,7 @@ def create_launcher_shortcuts():
logos_icon_path = app_dir / logos_icon_src.name

if system.get_runmode() == 'binary':
lli_executable = f"{installdir}/LogosLinuxInstaller"
lli_executable = f"{installdir}/{config.name_binary}"
else:
script = Path(sys.argv[0]).expanduser().resolve()
# Find python in virtual environment.
Expand Down
File renamed without changes.
8 changes: 4 additions & 4 deletions logos_on_linux/main.py → ou_dedatai/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -384,8 +384,8 @@ def check_incompatibilities():
question_text = "Remove AppImageLauncher? A reboot will be required."
secondary = (
"Your system currently has AppImageLauncher installed.\n"
"LogosLinuxInstaller is not compatible with AppImageLauncher.\n"
"For more information, see: https://github.com/FaithLife-Community/LogosLinuxInstaller/issues/114" # noqa: E501
f"{config.name_app} is not compatible with AppImageLauncher.\n"
f"For more information, see: {config.repo_link}/issues/114"
)
no_text = "User declined to remove AppImageLauncher."
msg.logos_continue_question(question_text, no_text, secondary)
Expand Down Expand Up @@ -466,7 +466,7 @@ def main():


def close():
logging.debug("Closing Logos on Linux.")
logging.debug(f"Closing {config.name_app}.")
for thread in threads:
# Only wait on non-daemon threads.
if not thread.daemon:
Expand All @@ -477,7 +477,7 @@ def close():
wine.end_wine_processes()
else:
logging.debug("No extra processes found.")
logging.debug("Closing Logos on Linux finished.")
logging.debug(f"Closing {config.name_app} finished.")


if __name__ == '__main__':
Expand Down
6 changes: 3 additions & 3 deletions logos_on_linux/msg.py → ou_dedatai/msg.py
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ def logos_warn(message):
def ui_message(message, secondary=None, detail=None, app=None, parent=None, fatal=False): # noqa: E501
if detail is None:
detail = ''
WIKI_LINK = "https://github.com/FaithLife-Community/LogosLinuxInstaller/wiki" # noqa: E501
WIKI_LINK = f"{config.repo_link}/wiki"
TELEGRAM_LINK = "https://t.me/linux_logos"
MATRIX_LINK = "https://matrix.to/#/#logosbible:matrix.org"
help_message = f"If you need help, please consult:\n{WIKI_LINK}\n{TELEGRAM_LINK}\n{MATRIX_LINK}" # noqa: E501
Expand All @@ -191,7 +191,7 @@ def ui_message(message, secondary=None, detail=None, app=None, parent=None, fata
def logos_error(message, secondary=None, detail=None, app=None, parent=None):
# if detail is None:
# detail = ''
# WIKI_LINK = "https://github.com/FaithLife-Community/LogosLinuxInstaller/wiki" # noqa: E501
# WIKI_LINK = f"{config.repo_link}/wiki"
# TELEGRAM_LINK = "https://t.me/linux_logos"
# MATRIX_LINK = "https://matrix.to/#/#logosbible:matrix.org"
# help_message = f"If you need help, please consult:\n{WIKI_LINK}\n{TELEGRAM_LINK}\n{MATRIX_LINK}" # noqa: E501
Expand All @@ -215,7 +215,7 @@ def logos_error(message, secondary=None, detail=None, app=None, parent=None):
logging.critical(message)
if secondary is None or secondary == "":
try:
os.remove("/tmp/LogosLinuxInstaller.pid")
os.remove(config.pid_file)
except FileNotFoundError: # no pid file when testing functions
pass
os.kill(os.getpgid(os.getpid()), signal.SIGKILL)
Expand Down
8 changes: 4 additions & 4 deletions logos_on_linux/network.py → ou_dedatai/network.py
Original file line number Diff line number Diff line change
Expand Up @@ -410,7 +410,7 @@ def set_logoslinuxinstaller_latest_release_config():
json_data = get_latest_release_data(releases_url)
logoslinuxinstaller_url = get_latest_release_url(json_data)
if logoslinuxinstaller_url is None:
logging.critical("Unable to set LogosLinuxInstaller release without URL.") # noqa: E501
logging.critical(f"Unable to set {config.name_app} release without URL.") # noqa: E501
return
config.LOGOS_LATEST_VERSION_URL = logoslinuxinstaller_url
config.LOGOS_LATEST_VERSION_FILENAME = os.path.basename(logoslinuxinstaller_url) # noqa: #501
Expand Down Expand Up @@ -563,8 +563,8 @@ def get_logos_releases(app=None):

def update_lli_binary(app=None):
lli_file_path = os.path.realpath(sys.argv[0])
lli_download_path = Path(config.MYDOWNLOADS) / "LogosLinuxInstaller"
temp_path = Path(config.MYDOWNLOADS) / "LogosLinuxInstaller.tmp"
lli_download_path = Path(config.MYDOWNLOADS) / config.name_binary
temp_path = Path(config.MYDOWNLOADS) / f"{config.name_binary}.tmp"
logging.debug(
f"Updating Logos Linux Installer to latest version by overwriting: {lli_file_path}") # noqa: E501

Expand All @@ -579,7 +579,7 @@ def update_lli_binary(app=None):

logos_reuse_download(
config.LOGOS_LATEST_VERSION_URL,
"LogosLinuxInstaller",
config.name_binary,
config.MYDOWNLOADS,
app=app,
)
Expand Down
4 changes: 2 additions & 2 deletions logos_on_linux/system.py → ou_dedatai/system.py
Original file line number Diff line number Diff line change
Expand Up @@ -715,7 +715,7 @@ def install_dependencies(packages, bad_packages, logos9_packages=None, app=None)
message = "The system needs to install/remove packages, but it requires manual intervention." # noqa: E501
detail = (
"Please run the following command in a terminal, then restart "
f"LogosLinuxInstaller:\n{sudo_command}\n"
f"{config.name_app}:\n{sudo_command}\n"
)
if config.DIALOG == "tk":
if hasattr(app, 'root'):
Expand All @@ -739,7 +739,7 @@ def install_dependencies(packages, bad_packages, logos9_packages=None, app=None)
17,
app.manualinstall_q,
app.manualinstall_e,
f"Please run the following command in a terminal, then select \"Continue\" when finished.\n\nLogosLinuxInstaller:\n{sudo_command}\n", # noqa: E501
f"Please run the following command in a terminal, then select \"Continue\" when finished.\n\n{config.name_app}:\n{sudo_command}\n", # noqa: E501
"User cancelled dependency installation.", # noqa: E501
message,
options=["Continue", "Return to Main Menu"], dialog=config.use_python_dialog)) # noqa: E501
Expand Down
24 changes: 12 additions & 12 deletions logos_on_linux/tui_app.py → ou_dedatai/tui_app.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@
class TUI:
def __init__(self, stdscr):
self.stdscr = stdscr
#if config.current_logos_version is not None:
self.title = f"Welcome to Logos on Linux {config.LLI_CURRENT_VERSION} ({config.lli_release_channel})"
self.subtitle = f"Logos Version: {config.current_logos_version} ({config.logos_release_channel})"
#else:
# self.title = f"Welcome to Logos on Linux ({config.LLI_CURRENT_VERSION})"
# if config.current_logos_version is not None:
self.title = f"Welcome to {config.name_app} {config.LLI_CURRENT_VERSION} ({config.lli_release_channel})" # noqa: E501
self.subtitle = f"Logos Version: {config.current_logos_version} ({config.logos_release_channel})" # noqa: E501
# else:
# self.title = f"Welcome to {config.name_app} ({config.LLI_CURRENT_VERSION})" # noqa: E501
self.console_message = "Starting TUI…"
self.llirunning = True
self.active_progress = False
Expand Down Expand Up @@ -233,15 +233,15 @@ def end(self, signal, frame):

def update_main_window_contents(self):
self.clear()
self.title = f"Welcome to Logos on Linux {config.LLI_CURRENT_VERSION} ({config.lli_release_channel})"
self.subtitle = f"Logos Version: {config.current_logos_version} ({config.logos_release_channel})"
self.console = tui_screen.ConsoleScreen(self, 0, self.status_q, self.status_e, self.title, self.subtitle, 0)
self.title = f"Welcome to {config.name_app} {config.LLI_CURRENT_VERSION} ({config.lli_release_channel})" # noqa: E501
self.subtitle = f"Logos Version: {config.current_logos_version} ({config.logos_release_channel})" # noqa: E501
self.console = tui_screen.ConsoleScreen(self, 0, self.status_q, self.status_e, self.title, self.subtitle, 0) # noqa: E501
self.menu_screen.set_options(self.set_tui_menu_options(dialog=False))
#self.menu_screen.set_options(self.set_tui_menu_options(dialog=True))
# self.menu_screen.set_options(self.set_tui_menu_options(dialog=True))
self.switch_q.put(1)
self.refresh()

#ERR: On a sudden resize, the Curses menu is not properly resized,
# ERR: On a sudden resize, the Curses menu is not properly resized,
# and we are not currently dynamically passing the menu options based
# on the current screen, but rather always passing the tui menu options.
# To replicate, open Terminator, run LLI full screen, then his Ctrl+A.
Expand Down Expand Up @@ -531,7 +531,7 @@ def utilities_menu_select(self, choice):
utils.change_logos_release_channel()
self.update_main_window_contents()
self.go_to_main_menu()
elif choice == "Change Logos on Linux Release Channel":
elif choice == f"Change {config.name_app} Release Channel":
self.reset_screen()
utils.change_lli_release_channel()
network.set_logoslinuxinstaller_latest_release_config()
Expand Down Expand Up @@ -1037,7 +1037,7 @@ def set_utilities_menu_options(self, dialog=False):
if utils.file_exists(config.LOGOS_EXE):
labels_utils_installed = [
"Change Logos Release Channel",
"Change Logos on Linux Release Channel",
f"Change {config.name_app} Release Channel",
# "Back Up Data",
# "Restore Data"
]
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 42fc29b

Please sign in to comment.