
duckietv
Paquet d’installation silencieuse pour duckietv
202503250547-1
- package: tis-duckietv
- name: duckietv
- version: 202503250547-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 : 202503250547-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 : 1fe5d965-32f5-4880-a125-cd5f95cbc024
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-03-29T18:00:14.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 : f1M9LqMvNnAxRVdSSeBcZjHo91i6QLsEeri2FTycg5jOanb+KNWorH+RT30GNqKsM6RJRWQDSlKPdnTXtRnN7jfzgHAUI+61qD+BAB0RIr0hZPEoEEZ5tubFpUn2GZ+Pth82CQkkDxsOlfdZNYfLlUA4rrJXPBTKacCUBzhua2K3xREEHp+J2RYnzbYgq3NFQk+cZyek1y3GYlTVGoKmfiPGVpronmlmgm2TtE2likRxgh8uLpl3bdF7joO3LIDisKCdmmz8XigiYjZmV+sFr60/VpVngKrGuMEPCoRr8rQOnD3YvUTLIWk2ZWGnPSeoo/24JDWvwPtpbSLrNuVPMA==
# -*- 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()
2db91511a715a01294a1ee4d2b34147a2fe25f1e921ccc190065151f3b7ce7c6 : DuckieTV-202503250547-windows-x32.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
3ff1955c9bbebc0dc2d56817b3ef829e5105b7d28378f1f840bec5a22785a883 : WAPT/control
3e68915f17313c40cfa3a2191ea8823f8ea18c8448adcde77eba68b86f8f1507 : WAPT/icon.png
51b87fffd746194ec5d8df73957a8d86d2e4167ac2ce82c87452443fd9dfb6ad : luti.json
013be55e0719d5967fc8635aef7536dd2879b7eaa3c5ecd621363485e197618c : setup.py
c41ea1fcf0ebc012ee6bb93ff6a7fa94cefd43a593c90ba2d568aa4d772c4515 : update_package.py