diff --git a/Makefile b/Makefile
index feb3530..edc511f 100644
--- a/Makefile
+++ b/Makefile
@@ -11,15 +11,19 @@ install:
mkdir -p $(DESTDIR)/usr/share/glib-2.0/schemas/
mkdir -p $(DESTDIR)/usr/share/applications
mkdir -p $(DESTDIR)/usr/share/icons/hicolor/scalable/apps
- cp -vf target/release/pikman-update-manager $(DESTDIR)/usr/bin/
- cp -vf target/release/apt_update $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
- cp -vf target/release/apt_full_upgrade $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
- cp -vf data/wget.sh $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
+ cp -vf target/debug/pikman-update-manager $(DESTDIR)/usr/bin/
+ cp -vf data/flatpak-installer $(DESTDIR)/usr/bin/
+ cp -vf data/software-properties-gtk $(DESTDIR)/usr/bin/
+ cp -vf target/debug/apt_update $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
+ cp -vf target/debug/apt_full_upgrade $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
cp -vf data/modify_repo.sh $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
cp -vf data/*.gschema.xml $(DESTDIR)/usr/share/glib-2.0/schemas/
- #cp -vf data/com.github.pikaos-linux.pikagnomelayouts.desktop $(DESTDIR)/usr/share/applications/
- #cp -vfr data/polkit-1 $(DESTDIR)/usr/share/
- chmod 755 $(DESTDIR)/usr/bin/pika/pikman-update-manager
+ cp -vf data/com.github.pikaos-linux.pikmanupdatemanager.svg $(DESTDIR)/usr/share/icons/hicolor/scalable/apps/
+ cp -vf data/*.desktop $(DESTDIR)/usr/share/applications/
+ cp -vfr data/polkit-1 $(DESTDIR)/usr/share/
+ chmod 755 $(DESTDIR)/usr/bin/pikman-update-manager
+ chmod 755 $(DESTDIR)/usr/bin/flatpak-installer
+ chmod 755 $(DESTDIR)/usr/bin/software-properties-gtk
chmod 755 $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/*
install_no_build_debug:
@@ -29,11 +33,16 @@ install_no_build_debug:
mkdir -p $(DESTDIR)/usr/share/applications
mkdir -p $(DESTDIR)/usr/share/icons/hicolor/scalable/apps
cp -vf target/debug/pikman-update-manager $(DESTDIR)/usr/bin/
+ cp -vf data/flatpak-installer $(DESTDIR)/usr/bin/
+ cp -vf data/software-properties-gtk $(DESTDIR)/usr/bin/
cp -vf target/debug/apt_update $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
cp -vf target/debug/apt_full_upgrade $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
cp -vf data/modify_repo.sh $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/
cp -vf data/*.gschema.xml $(DESTDIR)/usr/share/glib-2.0/schemas/
- #cp -vf data/com.github.pikaos-linux.pikagnomelayouts.desktop $(DESTDIR)/usr/share/applications/
- #cp -vfr data/polkit-1 $(DESTDIR)/usr/share/
+ cp -vf data/com.github.pikaos-linux.pikmanupdatemanager.svg $(DESTDIR)/usr/share/icons/hicolor/scalable/apps/
+ cp -vf data/*.desktop $(DESTDIR)/usr/share/applications/
+ cp -vfr data/polkit-1 $(DESTDIR)/usr/share/
chmod 755 $(DESTDIR)/usr/bin/pikman-update-manager
+ chmod 755 $(DESTDIR)/usr/bin/flatpak-installer
+ chmod 755 $(DESTDIR)/usr/bin/software-properties-gtk
chmod 755 $(DESTDIR)/usr/lib/pika/pikman-update-manager/scripts/*
\ No newline at end of file
diff --git a/data/com.github.pikaos-linux.pikmanupdatemanager.desktop b/data/com.github.pikaos-linux.pikmanupdatemanager.desktop
new file mode 100644
index 0000000..4e13f34
--- /dev/null
+++ b/data/com.github.pikaos-linux.pikmanupdatemanager.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Pikman Update Manager
+Exec=pikman-update-manager
+Icon=com.github.pikaos-linux.pikmanupdatemanager
+Terminal=false
+Type=Application
+Encoding=UTF-8
+Categories=GNOME;GTK;Settings;X-GNOME-SystemSettings;X-GNOME-Settings-Panel;X-Unity-Settings-Panel;
+StartupNotify=true
diff --git a/data/com.github.pikaos-linux.pikmanupdatemanager.svg b/data/com.github.pikaos-linux.pikmanupdatemanager.svg
new file mode 100644
index 0000000..2c8e9fd
--- /dev/null
+++ b/data/com.github.pikaos-linux.pikmanupdatemanager.svg
@@ -0,0 +1,17 @@
+
diff --git a/data/flatpak-installer b/data/flatpak-installer
new file mode 100644
index 0000000..f8e8d5b
--- /dev/null
+++ b/data/flatpak-installer
@@ -0,0 +1,2 @@
+#! /bin/bash
+pikman-update-manager --flatpak-installer "$@"
\ No newline at end of file
diff --git a/data/flatpak-installer.desktop b/data/flatpak-installer.desktop
new file mode 100644
index 0000000..c1a87e5
--- /dev/null
+++ b/data/flatpak-installer.desktop
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Name=Flatpak Installer
+GenericName=Flatpak Installer
+Comment=Easily install Flatpaks
+Categories=GNOME;GTK;Settings;X-GNOME-SystemSettings;X-GNOME-Settings-Panel;X-Unity-Settings-Panel;
+Exec=flatpak-installer %s
+Icon=com.github.pikaos-linux.pikmanupdatemanager
+MimeType=application/vnd.flatpak.ref;
+Terminal=false
+Type=Application
+X-GNOME-Gettext-Domain=com.github.pikaos-linux.pikmanupdatemanager
+Keywords=Python;
+NoDisplay=true
\ No newline at end of file
diff --git a/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.modify.repo.policy b/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.modify.repo.policy
new file mode 100644
index 0000000..ea715a4
--- /dev/null
+++ b/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.modify.repo.policy
@@ -0,0 +1,19 @@
+
+
+
+
+
+ Authentication is required to modify APT sources
+ com.github.pikaos-linux.pika-kernel-manager
+
+ yes
+ yes
+ yes
+
+ /usr/lib/pika/pikman-update-manager/scripts/modify_repo.sh
+ true
+
+
+
\ No newline at end of file
diff --git a/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.update.manager.policy b/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.update.manager.policy
new file mode 100644
index 0000000..76fc089
--- /dev/null
+++ b/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.update.manager.policy
@@ -0,0 +1,19 @@
+
+
+
+
+
+ Authentication is required to update the APT cache
+ com.github.pikaos-linux.pika-kernel-manager
+
+ yes
+ yes
+ yes
+
+ /usr/lib/pika/pikman-update-manager/scripts/apt_update
+ true
+
+
+
\ No newline at end of file
diff --git a/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.upgrade.manager.policy b/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.upgrade.manager.policy
new file mode 100644
index 0000000..5602ff3
--- /dev/null
+++ b/data/polkit-1/actions/com.github.pikaos-linux.pikmanupdatemanager.upgrade.manager.policy
@@ -0,0 +1,19 @@
+
+
+
+
+
+ Authentication is required to upgrade APT packages
+ com.github.pikaos-linux.pika-kernel-manager
+
+ yes
+ yes
+ yes
+
+ /usr/lib/pika/pikman-update-manager/scripts/apt_full_upgrade
+ true
+
+
+
\ No newline at end of file
diff --git a/data/software-properties-gtk b/data/software-properties-gtk
new file mode 100644
index 0000000..a969efe
--- /dev/null
+++ b/data/software-properties-gtk
@@ -0,0 +1,2 @@
+#! /bin/bash
+pikman-update-manager --software-properties "$@"
\ No newline at end of file
diff --git a/data/software-properties-gtk.desktop b/data/software-properties-gtk.desktop
new file mode 100644
index 0000000..a7ceaa8
--- /dev/null
+++ b/data/software-properties-gtk.desktop
@@ -0,0 +1,43 @@
+[Desktop Entry]
+Name=Software & Updates (Repositary Management)
+GenericName=Software & Updates (Repositary Management)
+Comment=Configure the sources for installable software and updates
+Comment[cs]=Konfigurovat zdroje pro instalovatelný software a aktualizace
+Comment[da]=Konfigurér kilderne for installérbar software og opdateringer
+Comment[de]=Quellen zum Installieren von Software und Aktualisierungen einrichten
+Comment[el]=Ρύθμιση των πηγών για λογισμικό και ενημερώσεις
+Comment[en_AU]=Configure the sources for installable software and updates
+Comment[en_GB]=Configure the sources for installable software and updates
+Comment[es]=Configura los orígenes para el software instalable y las actualizaciones
+Comment[fi]=Muokkaa asennettavien ohjelmien ja päivitysten lähteitä
+Comment[fr]=Configurer les canaux logiciels (sources de mise à jour) et les mises à jour via Internet
+Comment[gl]=Configurar as fontes para programas e actualizacións instalables
+Comment[he]=הגדרת מקורות התוכנות להתקנה והעדכונים
+Comment[hr]=Podesi repozitorije i nadogradnje
+Comment[hu]=Telepíthető szoftverek és frissítések forrásának beállítása
+Comment[it]=Configura le sorgenti per gli aggiornamenti e per il software installabile
+Comment[ka]=პროგრამების დაყენებისა და განახლების წყაროების კონფიგურირება
+Comment[ko]=설치할 수 있는 소프트웨어와 업데이트를 위한 소스를 설정
+Comment[ku]=Ji bo nivîsbarî û rojanekirinên têne sazkirin çavkaniyan veava bike
+Comment[nl]=Softwarekanalen en internet-updates configureren
+Comment[pl]=Konfiguruj źródła pakietów oprogramowania i aktualizacji
+Comment[pt]=Configurar os repositórios de software e actualizações instaláveis
+Comment[pt_BR]=Configurar as fontes de aplicativos e atualizações
+Comment[ro]=Configurează sursele pentru software instalabil şi actualizări
+Comment[ru]=Настроить источники установки программ и обновлений
+Comment[sv]=Konfigurera källorna för installerbara programvaror och uppdateringar
+Comment[th]=ปรับแต่งแหล่งสำหรับซอฟต์แวร์และปรับปรุงที่ติดตั้งได้
+Comment[tr]=Kurulabilir yazılım ve güncellemeler için kaynakları yapılandır
+Comment[zh_CN]=设定可安装和升级的源
+Comment[zh_TW]=設置可安裝的軟體及更新部份之來源。
+Keywords=Drivers;Repositories;Repository;PPA;
+Exec=software-properties-gtk
+Icon=software-properties
+Terminal=false
+X-MultipleArgs=false
+Type=Application
+Categories=GNOME;GTK;Settings;X-GNOME-SystemSettings;X-GNOME-Settings-Panel;X-Unity-Settings-Panel;
+X-GNOME-Settings-Panel=software-properties
+X-Unity-Settings-Panel=software-properties
+MimeType=text/x-apt-sources-list;
+X-Ubuntu-Gettext-Domain=software-properties
\ No newline at end of file
diff --git a/just_in_case/__main__.py b/just_in_case/__main__.py
deleted file mode 100755
index 5d6f26f..0000000
--- a/just_in_case/__main__.py
+++ /dev/null
@@ -1,91 +0,0 @@
-#! /bin/python3
-
-import socket
-import os
-
-import sys
-import time
-
-import apt_pkg
-
-import apt
-import apt.progress.base
-
-def get_change(current, total):
- if current == total:
- return 100.0
- try:
- return float("{:.1f}".format(((current * 100) / total)))
- except ZeroDivisionError:
- return 0.0
-
-class UpdateProgressSocket(apt.progress.base.AcquireProgress):
- # Init
- def __init__(self):
- pass
-
- # Start
- def start(self):
- self.current_bytes = 0
- self.total_bytes = 0
- print("Starting APT Cache Update.")
- return super().start()
-
- # Stop
- def stop(self):
- print("\nAPT Cache Update Complete!")
- return super().stop()
-
- # Progrss pulse
- def pulse(self, owner):
- # Calculate current progress percentage
- progress_percent = get_change(self.current_bytes, self.total_bytes)
-
- # apt_update_progress ipc sock
- socket_path = "/tmp/pika_apt_update.sock"
-
- # Create a Unix domain socket
- with socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) as client:
- client.connect(socket_path)
- # Send percentage to socket as UTF-8
- client.sendall(str(progress_percent).encode('utf-8'))
-
- #response = client.recv(1024)
- #print(f"Received: {response.decode('utf-8')}")
-
- return True
-
-
- def fail(self, item):
- print("Failure at: %s %s" % (item.uri, item.shortdesc))
-
- def fetch(self, item):
- print("Fetch: %s %s" % (item.uri, item.shortdesc))
-
- def ims_hit(self, item):
- print("Download: %s %s" % (item.uri, item.shortdesc))
-
- def media_change(self, medium, drive):
- print(f"Please insert medium {medium} in drive {drive}")
- sys.stdin.readline()
- # return False
-
-def update_cache():
- # First of all, open the cache
- cache = apt.Cache()
- # Now, lets update the package list
- cache.update(UpdateProgressSocket())
- # We need to re-open the cache because it needs to read the package list
- cache.open(None)
- # We need to re-open the cache because it needs to read the package list
- for pkg in cache:
- if pkg.is_upgradable:
- print(f"{pkg.name} ({pkg.installed.version} -> {pkg.candidate.version})")
-
-def process(data):
- # Echo the input data
- return data
-
-if __name__ == "__main__":
-
- update_cache()
diff --git a/src/bin/gui/build_ui/mod.rs b/src/bin/gui/build_ui/mod.rs
index 5cee291..f67ce23 100644
--- a/src/bin/gui/build_ui/mod.rs
+++ b/src/bin/gui/build_ui/mod.rs
@@ -550,8 +550,13 @@ pub fn build_ui(app: &Application) {
.position(|r| r == "--flatpak-installer")
.unwrap() as i32)
+ 1) as usize;
- flatpak_entry_signal_action
+ if index > gtk_application_args.len() -1 {
+ flatpak_entry_signal_action
+ .activate(Some(&glib::Variant::from("")));
+ } else {
+ flatpak_entry_signal_action
.activate(Some(&glib::Variant::from(>k_application_args[index])));
+ }
}
0