
duckietv
Paquet d’installation silencieuse pour duckietv
202509161900-1
- package: tis-duckietv
- name: duckietv
- version: 202509161900-1
- maintainer: Amel FRADJ
- licence: DuckieTV is Free (as in free beer) and Open Source, and comes with as little legal nonsense as possible.
- target_os: windows
- architecture: x64
- signature_date:
- size: 160.83 Mo
- homepage : schizoduckie.github.io/DuckieTV/
package : tis-duckietv
version : 202509161900-1
architecture : x64
section : base
priority : optional
name : duckietv
categories :
maintainer : Amel FRADJ
description : DuckieTV is an app that caters to TV show addicts by providing a personalized calendar of TV shows
depends :
conflicts :
maturity : PROD
locale :
target_os : windows
min_wapt_version :
sources :
installed_size :
impacted_process :
description_fr : DuckieTV est une application qui s'occupe des accros aux émissions télévisées en fournissant un calendrier personnalisé des émissions télévisées
description_pl : DuckieTV to aplikacja przeznaczona dla osób uzależnionych od programów telewizyjnych, która zapewnia spersonalizowany kalendarz programów telewizyjnych
description_de : DuckieTV ist eine App, die sich um TV-Show-Süchtige kümmert, indem sie einen personalisierten Kalender für TV-Shows bereitstellt
description_es : DuckieTV es una aplicación para adictos a los programas de televisión que ofrece un calendario personalizado de los mismos
description_pt : A DuckieTV é uma aplicação que se destina aos viciados em programas de televisão, fornecendo um calendário personalizado de programas de televisão
description_it : DuckieTV è un'applicazione che si rivolge agli appassionati di programmi televisivi fornendo un calendario personalizzato di spettacoli televisivi
description_nl : DuckieTV is een app voor tv-programma-verslaafden met een gepersonaliseerde kalender van tv-programma's
description_ru : DuckieTV - это приложение, предназначенное для любителей телевизионных шоу и предоставляющее персональный календарь телепередач
audit_schedule :
editor :
keywords :
licence : DuckieTV is Free (as in free beer) and Open Source, and comes with as little legal nonsense as possible.
homepage : schizoduckie.github.io/DuckieTV/
package_uuid : e3327b77-7bda-431d-be3f-58c1bb5f0139
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 3e68915f17313c40cfa3a2191ea8823f8ea18c8448adcde77eba68b86f8f1507
signer : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date : 2025-09-21T08:01:42.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature : Cb7F6rpb5QWa2GpFF25twY7VNGBUK+oUlq21MNnSgjkZq+/wAzP6tViZ1JvEYmQoB4sAiVrwaADUwtGZXOHxk4MZc1jwn1Fgfl9x7/EyZSc9Y8Lya0g5asJnbH/sL/qgqveT43aTHQn1QYJKh0RMUXG44tZFwmSka+s5w9JoL4oqRvvpboozDzQpZgz8bx6/xZydfsLKMVkJo6fSbX7JN6fc7174zSacprfVqlXpgq+g99JK9YQ3PocqOKnyAI6D7+3j1dpDrhMkSWczcWI3FvofEZXKDTm/ausz970yvoU6oO3PpPWlduuFxJzu/eOYdxBdGEucxFwSKRzn6mmclA==
# -*- coding: utf-8 -*-
from setuphelpers import *
import glob
import re
r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()
{
"key":"DuckieTV",
"name":"DuckieTV",
"version":"",
"install_date":"",
"install_location":"",
"uninstall_string":"C:\\Users\\Administrator\\AppData\\Roaming\\DuckieTV\\uninstall.exe",
"publisher":"",
"system_component":0,
"win64":false
}
"""
def install():
# Finding the executable with the version in its name
bin_name = glob.glob('DuckieTV-*-windows-x64.exe')[0]
# Extracting version from the filename using regex
version = re.search(r'DuckieTV-([\d.]+)-windows-x64\.exe', bin_name).group(1)
# Logging the extracted version for debugging purposes
print(f"Extracted version from filename: {version}")
# Installing the software
install_exe_if_needed(
bin_name,
silentflags='/S',
key='DuckieTV',
min_version=version,
get_version=lambda _: version, # Lambda function that returns the extracted version
timeout=600,
)
# Function to set the version in the registry after installation
def get_version(app_registry_dict):
# Return the default version if not found to force installation
return app_registry_dict.get("version", "0.0.0.0")
# -*- coding: utf-8 -*-
from setuphelpers import *
import re
import zipfile
def update_package():
# Declaring local variables
package_updated = False
proxies = get_proxies()
if not proxies:
proxies = get_proxies_from_wapt_console()
dict_arch = {
"x64" :"-windows-x64",
"x86" : "-windows-x32"
}
git_repo = "DuckieTV/Nightlies"
url_api = "https://api.github.com/repos/%s/releases/latest" % git_repo
# Getting latest version information from official sources
print("API used is: %s" % url_api)
json_load = json.loads(wgets(url_api, proxies=proxies))
for download in json_load["assets"]:
if download["browser_download_url"].endswith(".zip") and dict_arch[control.architecture] in download["browser_download_url"] :
url_dl = download["browser_download_url"]
version = json_load["tag_name"].split("-")[-1]
filename = download["name"]
break
if not isfile(filename):
package_updated = True
wget(url_dl,filename,proxies=proxies)
# Extract .exe from downloaded .zip
with zipfile.ZipFile(filename, 'r') as zip_ref:
zip_ref.extractall('.')
# Assuming the .exe file is extracted to the current directory, adjust as needed
extracted_files = zip_ref.namelist()
exe_file = next((f for f in extracted_files if f.endswith('.exe')), None)
if exe_file:
# Optionally move or do something with the extracted .exe file
# For example, you could move it to a specific directory
os.rename(exe_file, f'./{exe_file}')
# Clean up the downloaded .zip file
if isfile(filename):
remove_file(filename)
#nettoyer les fichiers temporaires
for f in glob.glob('*.exe'):
if f != exe_file:
remove_file(f)
control.set_software_version(version)
control.save_control_to_wapt()
0a6251e3e6293211ba4db2963de19068efcb2db94e227e35bb5b3124696263ef : DuckieTV-202509161900-windows-x64.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
a94be31778cbc36f16fdd2bbf59cdc4ce1595dd1889ced66899a3af2a4433921 : WAPT/control
3e68915f17313c40cfa3a2191ea8823f8ea18c8448adcde77eba68b86f8f1507 : WAPT/icon.png
78b746960d268ad128b84824c0932f051b392d984db8aeeb68af424a6381f57a : luti.json
225254455e74071906d7b85e4899fc295ce67e24ae1822cc36d810af3e736975 : setup.py
c41ea1fcf0ebc012ee6bb93ff6a7fa94cefd43a593c90ba2d568aa4d772c4515 : update_package.py