mirror of
https://github.com/freedomofpress/dangerzone.git
synced 2025-04-29 02:12:36 +02:00
Remove everything related to updating the container image
This commit is contained in:
parent
1f1bb2b353
commit
e81e6ccc6c
6 changed files with 67 additions and 134 deletions
|
@ -10,72 +10,72 @@ RUN apk -U upgrade && \
|
||||||
poppler-utils \
|
poppler-utils \
|
||||||
py3-magic \
|
py3-magic \
|
||||||
py3-pillow \
|
py3-pillow \
|
||||||
sudo \
|
sudo
|
||||||
tesseract-ocr \
|
# tesseract-ocr \
|
||||||
tesseract-ocr-data-afr \
|
# tesseract-ocr-data-afr \
|
||||||
tesseract-ocr-data-ara \
|
# tesseract-ocr-data-ara \
|
||||||
tesseract-ocr-data-aze \
|
# tesseract-ocr-data-aze \
|
||||||
tesseract-ocr-data-bel \
|
# tesseract-ocr-data-bel \
|
||||||
tesseract-ocr-data-ben \
|
# tesseract-ocr-data-ben \
|
||||||
tesseract-ocr-data-bul \
|
# tesseract-ocr-data-bul \
|
||||||
tesseract-ocr-data-cat \
|
# tesseract-ocr-data-cat \
|
||||||
tesseract-ocr-data-ces \
|
# tesseract-ocr-data-ces \
|
||||||
tesseract-ocr-data-chi_sim \
|
# tesseract-ocr-data-chi_sim \
|
||||||
tesseract-ocr-data-chi_tra \
|
# tesseract-ocr-data-chi_tra \
|
||||||
tesseract-ocr-data-chr \
|
# tesseract-ocr-data-chr \
|
||||||
tesseract-ocr-data-dan \
|
# tesseract-ocr-data-dan \
|
||||||
tesseract-ocr-data-deu \
|
# tesseract-ocr-data-deu \
|
||||||
tesseract-ocr-data-ell \
|
# tesseract-ocr-data-ell \
|
||||||
tesseract-ocr-data-enm \
|
# tesseract-ocr-data-enm \
|
||||||
tesseract-ocr-data-epo \
|
# tesseract-ocr-data-epo \
|
||||||
tesseract-ocr-data-equ \
|
# tesseract-ocr-data-equ \
|
||||||
tesseract-ocr-data-est \
|
# tesseract-ocr-data-est \
|
||||||
tesseract-ocr-data-eus \
|
# tesseract-ocr-data-eus \
|
||||||
tesseract-ocr-data-fin \
|
# tesseract-ocr-data-fin \
|
||||||
tesseract-ocr-data-fra \
|
# tesseract-ocr-data-fra \
|
||||||
tesseract-ocr-data-frk \
|
# tesseract-ocr-data-frk \
|
||||||
tesseract-ocr-data-frm \
|
# tesseract-ocr-data-frm \
|
||||||
tesseract-ocr-data-glg \
|
# tesseract-ocr-data-glg \
|
||||||
tesseract-ocr-data-grc \
|
# tesseract-ocr-data-grc \
|
||||||
tesseract-ocr-data-heb \
|
# tesseract-ocr-data-heb \
|
||||||
tesseract-ocr-data-hin \
|
# tesseract-ocr-data-hin \
|
||||||
tesseract-ocr-data-hrv \
|
# tesseract-ocr-data-hrv \
|
||||||
tesseract-ocr-data-hun \
|
# tesseract-ocr-data-hun \
|
||||||
tesseract-ocr-data-ind \
|
# tesseract-ocr-data-ind \
|
||||||
tesseract-ocr-data-isl \
|
# tesseract-ocr-data-isl \
|
||||||
tesseract-ocr-data-ita \
|
# tesseract-ocr-data-ita \
|
||||||
tesseract-ocr-data-ita_old \
|
# tesseract-ocr-data-ita_old \
|
||||||
tesseract-ocr-data-jpn \
|
# tesseract-ocr-data-jpn \
|
||||||
tesseract-ocr-data-kan \
|
# tesseract-ocr-data-kan \
|
||||||
tesseract-ocr-data-kat \
|
# tesseract-ocr-data-kat \
|
||||||
tesseract-ocr-data-kor \
|
# tesseract-ocr-data-kor \
|
||||||
tesseract-ocr-data-lav \
|
# tesseract-ocr-data-lav \
|
||||||
tesseract-ocr-data-lit \
|
# tesseract-ocr-data-lit \
|
||||||
tesseract-ocr-data-mal \
|
# tesseract-ocr-data-mal \
|
||||||
tesseract-ocr-data-mkd \
|
# tesseract-ocr-data-mkd \
|
||||||
tesseract-ocr-data-mlt \
|
# tesseract-ocr-data-mlt \
|
||||||
tesseract-ocr-data-msa \
|
# tesseract-ocr-data-msa \
|
||||||
tesseract-ocr-data-nld \
|
# tesseract-ocr-data-nld \
|
||||||
tesseract-ocr-data-nor \
|
# tesseract-ocr-data-nor \
|
||||||
tesseract-ocr-data-pol \
|
# tesseract-ocr-data-pol \
|
||||||
tesseract-ocr-data-por \
|
# tesseract-ocr-data-por \
|
||||||
tesseract-ocr-data-ron \
|
# tesseract-ocr-data-ron \
|
||||||
tesseract-ocr-data-rus \
|
# tesseract-ocr-data-rus \
|
||||||
tesseract-ocr-data-slk \
|
# tesseract-ocr-data-slk \
|
||||||
tesseract-ocr-data-slv \
|
# tesseract-ocr-data-slv \
|
||||||
tesseract-ocr-data-spa \
|
# tesseract-ocr-data-spa \
|
||||||
tesseract-ocr-data-spa_old \
|
# tesseract-ocr-data-spa_old \
|
||||||
tesseract-ocr-data-sqi \
|
# tesseract-ocr-data-sqi \
|
||||||
tesseract-ocr-data-srp \
|
# tesseract-ocr-data-srp \
|
||||||
tesseract-ocr-data-swa \
|
# tesseract-ocr-data-swa \
|
||||||
tesseract-ocr-data-swe \
|
# tesseract-ocr-data-swe \
|
||||||
tesseract-ocr-data-tam \
|
# tesseract-ocr-data-tam \
|
||||||
tesseract-ocr-data-tel \
|
# tesseract-ocr-data-tel \
|
||||||
tesseract-ocr-data-tgl \
|
# tesseract-ocr-data-tgl \
|
||||||
tesseract-ocr-data-tha \
|
# tesseract-ocr-data-tha \
|
||||||
tesseract-ocr-data-tur \
|
# tesseract-ocr-data-tur \
|
||||||
tesseract-ocr-data-ukr \
|
# tesseract-ocr-data-ukr \
|
||||||
tesseract-ocr-data-vie
|
# tesseract-ocr-data-vie
|
||||||
|
|
||||||
# Install pdftk
|
# Install pdftk
|
||||||
RUN \
|
RUN \
|
||||||
|
|
|
@ -70,9 +70,6 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
self.settings_widget.start_clicked.connect(self.start_clicked)
|
self.settings_widget.start_clicked.connect(self.start_clicked)
|
||||||
self.settings_widget.close_window.connect(self.close)
|
self.settings_widget.close_window.connect(self.close)
|
||||||
self.settings_widget.hide()
|
self.settings_widget.hide()
|
||||||
QtCore.QTimer.singleShot(
|
|
||||||
1, self.settings_widget.check_update_container_default_state
|
|
||||||
)
|
|
||||||
|
|
||||||
# Tasks
|
# Tasks
|
||||||
self.tasks_widget = TasksWidget(
|
self.tasks_widget = TasksWidget(
|
||||||
|
|
|
@ -75,12 +75,6 @@ class SettingsWidget(QtWidgets.QWidget):
|
||||||
ocr_layout.addWidget(self.ocr_combobox)
|
ocr_layout.addWidget(self.ocr_combobox)
|
||||||
ocr_layout.addStretch()
|
ocr_layout.addStretch()
|
||||||
|
|
||||||
# Update container
|
|
||||||
self.update_checkbox = QtWidgets.QCheckBox("Update container")
|
|
||||||
update_layout = QtWidgets.QHBoxLayout()
|
|
||||||
update_layout.addWidget(self.update_checkbox)
|
|
||||||
update_layout.addStretch()
|
|
||||||
|
|
||||||
# Button
|
# Button
|
||||||
self.start_button = QtWidgets.QPushButton("Convert to Safe Document")
|
self.start_button = QtWidgets.QPushButton("Convert to Safe Document")
|
||||||
self.start_button.clicked.connect(self.start_button_clicked)
|
self.start_button.clicked.connect(self.start_button_clicked)
|
||||||
|
@ -100,7 +94,6 @@ class SettingsWidget(QtWidgets.QWidget):
|
||||||
if platform.system() != "Windows":
|
if platform.system() != "Windows":
|
||||||
layout.addLayout(open_layout)
|
layout.addLayout(open_layout)
|
||||||
layout.addLayout(ocr_layout)
|
layout.addLayout(ocr_layout)
|
||||||
layout.addLayout(update_layout)
|
|
||||||
layout.addSpacing(20)
|
layout.addSpacing(20)
|
||||||
layout.addLayout(button_layout)
|
layout.addLayout(button_layout)
|
||||||
layout.addStretch()
|
layout.addStretch()
|
||||||
|
@ -136,36 +129,6 @@ class SettingsWidget(QtWidgets.QWidget):
|
||||||
if index != -1:
|
if index != -1:
|
||||||
self.open_combobox.setCurrentIndex(index)
|
self.open_combobox.setCurrentIndex(index)
|
||||||
|
|
||||||
if self.global_common.settings.get("update_container"):
|
|
||||||
self.update_checkbox.setCheckState(QtCore.Qt.Checked)
|
|
||||||
else:
|
|
||||||
self.update_checkbox.setCheckState(QtCore.Qt.Unchecked)
|
|
||||||
|
|
||||||
def check_update_container_default_state(self):
|
|
||||||
# Is update containers required?
|
|
||||||
if self.global_common.custom_container:
|
|
||||||
self.update_checkbox.setCheckState(QtCore.Qt.Unchecked)
|
|
||||||
self.update_checkbox.setEnabled(False)
|
|
||||||
self.update_checkbox.hide()
|
|
||||||
else:
|
|
||||||
with self.global_common.exec_dangerzone_container(
|
|
||||||
[
|
|
||||||
"ls",
|
|
||||||
self.global_common.get_container_name(),
|
|
||||||
]
|
|
||||||
) as p:
|
|
||||||
stdout_data, stderror_data = p.communicate()
|
|
||||||
|
|
||||||
# The user canceled, or permission denied
|
|
||||||
if p.returncode == 126 or p.returncode == 127:
|
|
||||||
self.close_window.emit()
|
|
||||||
return
|
|
||||||
|
|
||||||
# Check the output
|
|
||||||
if b"dangerzone" not in stdout_data:
|
|
||||||
self.update_checkbox.setCheckState(QtCore.Qt.Checked)
|
|
||||||
self.update_checkbox.setEnabled(False)
|
|
||||||
|
|
||||||
def update_ui(self):
|
def update_ui(self):
|
||||||
if platform.system() == "Windows":
|
if platform.system() == "Windows":
|
||||||
# Because the save checkbox is always checked in Windows, the
|
# Because the save checkbox is always checked in Windows, the
|
||||||
|
@ -220,9 +183,6 @@ class SettingsWidget(QtWidgets.QWidget):
|
||||||
self.global_common.settings.set(
|
self.global_common.settings.set(
|
||||||
"open_app", self.open_combobox.currentText()
|
"open_app", self.open_combobox.currentText()
|
||||||
)
|
)
|
||||||
self.global_common.settings.set(
|
|
||||||
"update_container", self.update_checkbox.checkState() == QtCore.Qt.Checked
|
|
||||||
)
|
|
||||||
self.global_common.settings.save()
|
self.global_common.settings.save()
|
||||||
|
|
||||||
# Start!
|
# Start!
|
||||||
|
|
|
@ -46,26 +46,6 @@ class TaskBase(QtCore.QThread):
|
||||||
return p.returncode, output, stderr
|
return p.returncode, output, stderr
|
||||||
|
|
||||||
|
|
||||||
class PullImageTask(TaskBase):
|
|
||||||
def __init__(self, global_common, common):
|
|
||||||
super(PullImageTask, self).__init__()
|
|
||||||
self.global_common = global_common
|
|
||||||
self.common = common
|
|
||||||
|
|
||||||
def run(self):
|
|
||||||
self.update_label.emit(
|
|
||||||
"Pulling container image (this might take a few minutes)"
|
|
||||||
)
|
|
||||||
self.update_details.emit("")
|
|
||||||
args = ["pull"]
|
|
||||||
returncode, _, _ = self.exec_container(args)
|
|
||||||
|
|
||||||
if returncode != 0:
|
|
||||||
return
|
|
||||||
|
|
||||||
self.task_finished.emit()
|
|
||||||
|
|
||||||
|
|
||||||
class ConvertToPixels(TaskBase):
|
class ConvertToPixels(TaskBase):
|
||||||
def __init__(self, global_common, common):
|
def __init__(self, global_common, common):
|
||||||
super(ConvertToPixels, self).__init__()
|
super(ConvertToPixels, self).__init__()
|
||||||
|
|
|
@ -5,7 +5,7 @@ import platform
|
||||||
import subprocess
|
import subprocess
|
||||||
from PySide2 import QtCore, QtGui, QtWidgets
|
from PySide2 import QtCore, QtGui, QtWidgets
|
||||||
|
|
||||||
from .tasks import PullImageTask, ConvertToPixels, ConvertToPDF
|
from .tasks import ConvertToPixels, ConvertToPDF
|
||||||
|
|
||||||
|
|
||||||
class TasksWidget(QtWidgets.QWidget):
|
class TasksWidget(QtWidgets.QWidget):
|
||||||
|
@ -59,8 +59,6 @@ class TasksWidget(QtWidgets.QWidget):
|
||||||
)
|
)
|
||||||
|
|
||||||
def start(self):
|
def start(self):
|
||||||
if self.global_common.settings.get("update_container"):
|
|
||||||
self.tasks += [PullImageTask]
|
|
||||||
self.tasks += [ConvertToPixels, ConvertToPDF]
|
self.tasks += [ConvertToPixels, ConvertToPDF]
|
||||||
self.next_task()
|
self.next_task()
|
||||||
|
|
||||||
|
|
|
@ -13,8 +13,6 @@ class Settings:
|
||||||
"ocr_language": "English",
|
"ocr_language": "English",
|
||||||
"open": True,
|
"open": True,
|
||||||
"open_app": None,
|
"open_app": None,
|
||||||
"update_container": True,
|
|
||||||
"linux_prefers_typing_password": None,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
self.load()
|
self.load()
|
||||||
|
|
Loading…
Reference in a new issue