
duckietv
Paquet d’installation silencieuse pour duckietv
202509050742-1
- package: tis-duckietv
- name: duckietv
- version: 202509050742-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: x86
- signature_date:
- size: 152.29 Mo
- homepage : schizoduckie.github.io/DuckieTV/
package : tis-duckietv
version : 202509050742-1
architecture : x86
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 : 14ce4c15-a662-4d79-8670-e777e0ba3a95
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-10T00:23:00.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 : fbDz+qNTvH7FT8LlFgTdynG5mSaayuU9DGLfnmek3FGOKHscZBIGqx1N+hh0i6zlqWSYXjOqGFqPVpK2rL1PsYmrCyg5pfJ1eRjKsJSavGg7Tm2yD7QMFi9j6eVj0OU12b+0lczmYrI8HwC/g2ScD23WFw7wL75V1WfQX0VAOs/1ZE3j6L35ZDBRNviyTOY7K9OnsQVeLklHgcLAYjW8aNzC6A62M0b0xHX14xI2YeX5uZRaWGzKl0N1NDHK/WU+uehpP1gT+CMmNSvefpHIM6Nhx9xQhazHyiUdVGbr++GiACa0se4teh+Zg/CfHS5TSYD+rDPc574Ith7rPrYj+g==
# -*- 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-x32.exe')[0]
# Extracting version from the filename using regex
version = re.search(r'DuckieTV-([\d.]+)-windows-x32\.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()
357cfed19fbb9588b9b4390166070874ff5f2907bf3e024245d9147cd86cf4af : DuckieTV-202509050742-windows-x32.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
1d5e868d7b29a7ed5969f2c9117317bef02f70325e5efacf42abb2d2d8608064 : WAPT/control
3e68915f17313c40cfa3a2191ea8823f8ea18c8448adcde77eba68b86f8f1507 : WAPT/icon.png
d369c02898d31c5859d0ee211276caff1bc56e9947688478f3c5fad98511c4a4 : luti.json
013be55e0719d5967fc8635aef7536dd2879b7eaa3c5ecd621363485e197618c : setup.py
c41ea1fcf0ebc012ee6bb93ff6a7fa94cefd43a593c90ba2d568aa4d772c4515 : update_package.py