Jack Dorsey představil (𝕏, Nostr) svůj nový projekt bitchat. Jedná se o bezpečnou decentralizovanou peer-to-peer aplikaci pro zasílání zpráv bez potřeby internetu, serverů a telefonních čísel. Využívá se Bluetooth Mesh Network. Detaily v technické dokumentaci. Zdrojové kódy jsou k dispozici pod licencí Unlicense.
Hudební přehrávač Amarok byl vydán v nové verzi 3.3 "Far Above the Clouds". Nově je postaven na Qt6/KF6 a využívá GStreamer místo Phononu.
Společnost IBM představila novou generaci svých serverů: IBM Power11.
Multiplatformní digitální pracovní stanice pro práci s audiem Ardour byla postavena na GTK2. Vývojáři neplánovali její portaci na GTK3 nebo GTK4. Naopak, v lednu loňského roku si vytvořili vlastní fork GTK2 s názvem YTK. Ten v únoru letošního roku přestal být volitelným a nově byla zcela odstraněna podpora GTK2.
Byla vydána nová verze 6.4 linuxové distribuce Parrot OS (Wikipedie). Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Společnost initMAX pořádá sérii bezplatných webinářů věnovaných novému Zabbixu 7.4. Podrobnosti a registrace na webu initMAX.
… více »Byla vydána verze 7.0 open source platformy pro správu vlastního cloudu OpenNebula (Wikipedie). Kódový název nové verze je Phoenix. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.
E-mailový klient Thunderbird byl vydán ve verzi 140.0 ESR „Eclipse“. Jde o vydání s dlouhodobou podporou, shrnující novinky v upozorněních, vzhledu, správě složek a správě účtů. Pozor, nezaměňovat s průběžným vydáním 140.0, které bylo dostupné o týden dříve.
Organizace Video Games Europe reprezentující vydavatele počítačových her publikovala prohlášení k občanské iniciativě Stop Destroying Videogames.
Společnost Raspberry Pi nově nabzí Raspberry Pi Camera Module 3 Sensor Assembly, tj. samostatné senzorové moduly z Raspberry Pi Camera Module 3.
#!/usr/bin/env python3 import pickle description="Unpickle data" kind="Input" class Plugin: def __init__(self, settings = None): self.settings = settings def Help(self): return """Unpickle data. Settings: path - (required) path to file where read data.""" def Run(self): with open(self.settings['path'], "rb") as fh: data = pickle.load(fh) return dataPovinné položky jsou:
#!/usr/bin/env python3 import pickle description="Pickle data" kind="Output" class Plugin: def __init__(self, settings = None): self.settings = settings def Help(self): return """Pickle data. Settings: path - (required) path to file where to store data.""" def Run(self, data): with open(self.settings['path'], "wb") as fh: pickle.dump(data, fh)Od vstupního pluginu se liší jen v několika detailech
Tiskni
Sdílej:
Nechci ti kazit radost z Pythonu, ale v čem je to lepší než:
cat vstupní-soubor.bin | program-1 | program-2 > výstupní-soubor.txt
v Shellu? :-)
Kde program-1
a program-2
jsou vstupní resp. výstupní „pluginy“.
Autor pluginu se nestará o nudné věci jako parsování parametrů z příkazové řádky.BTW: Kdysi jsem napsal argparse builder (github), ve kterém si argumenty příkazové řádky jednoduše naklikáš během asi tak minuty. Koukám, že už se to zobrazuje trochu rozbitě, ale pořád funguje, používám ho relativně často :)