
duckietv
Paquet d’installation silencieuse pour duckietv
202509011532-1
- package: tis-duckietv
- name: duckietv
- version: 202509011532-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 : 202509011532-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 : fd926399-ec5b-4712-b454-a95e5098a268
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-06T07:00:36.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 : CdKAzsXngp1Gq5ja342JMOy/RW8C0Fff7+lksZcK3/a4sbfNptYgjWQzUA4ygDijvoc7pt0ypDoldS7y40m0WjeM9/PMG23LOFk8bZYBs+AwW6nsnMPP41s03X84y794Qj1+Jao5TtsbfzpxHBzxXHC7GEb2Z6/lIc7Pwn2e6PYn5n3Qrh7YmML2u2UoKfTialjqqO72QKwIlCynkxLSjNnanRX7HFAxyvJ70K+HufkM725kKRI24tzK8SzqDjIMGXAgMcSi8+Cg7U7pYmTlYNMLm4eDA0tgkYvyZj5yC6Gz7TRMjjiC2jSh/0TgCZO8pQbfZHAY2xwRc1JL9iKJRQ==
# -*- 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()
fca4f5550543de2cc846c6ae98e933c7466a5041fca04caca1255922f44c8ade : DuckieTV-202509011532-windows-x64.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
f5228fe0c94df34222a7949b9081ed2462d42b2be2ebd03c5e6c676658d44318 : WAPT/control
3e68915f17313c40cfa3a2191ea8823f8ea18c8448adcde77eba68b86f8f1507 : WAPT/icon.png
5bc95b1bcaf8f1381be887f47387693f5c3ebef5ac586ccd3f0b32a6e4628f36 : luti.json
225254455e74071906d7b85e4899fc295ce67e24ae1822cc36d810af3e736975 : setup.py
c41ea1fcf0ebc012ee6bb93ff6a7fa94cefd43a593c90ba2d568aa4d772c4515 : update_package.py