O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.
Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.
Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.
#!/bin/env python import os handler = os.popen('rpm -qa', 'r') packages = handler.readlines() packages.sort() handler.close() cmd = 'rpm -e %s --test 2> /dev/null' for package in packages: package=package.strip() if os.system(cmd%package) == 0: print package
#!/usr/bin/env python import rpm timeflag = rpm.RPMTAG_INSTALLTIME class packages: def __init__(self): print "Fetching packages from database" ts = rpm.TransactionSet() mi = ts.dbMatch() self.pckgs = list(mi) print "done. %d items found" %len(self.pckgs) def wholename(self, pkg_obj): return "%s-%s-%s.%s" % (pkg_obj['name'], pkg_obj['version'], pkg_obj['release'], pkg_obj['arch']) def orphans_only(self): print 'Searching orphans' orphans = [] req_lookup = {} for h in self.pckgs: for r in h[rpm.RPMTAG_REQUIRENAME]: req_lookup[r] = h for h in self.pckgs: is_orphan = True for prov in h[rpm.RPMTAG_PROVIDES] + h[rpm.RPMTAG_FILENAMES]: try: whowants = req_lookup[prov] if h is not whowants: #does not want itself is_orphan = False break except KeyError: pass if is_orphan: orphans.append(h) self.pckgs = orphans print "done. %d orphans found." %len(self.pckgs) def sort_key(self, keyname): def compare(a, b): return cmp(a[keyname], b[keyname]) self.pckgs.sort(cmp = compare) def show(self): print "Printing names of %d packages:" %len(self.pckgs) for h in self.pckgs: print self.wholename(h) if __name__ == '__main__': rpms = packages() rpms.orphans_only() rpms.sort_key(timeflag) rpms.show()Vyhledá to všechny balíčky, na kterých nic nezávisí (kromě sebe sama). Balíčky to setřídí podle data instalace, přičemž poslední vypsaný je nejnovější. Formát výpisu obsahuje i verzi a architekturu, takže i na 64bitu lze název vzít do myši a předat příkazu
rpm -eaniž by to psalo "specifies multiple packages".
def show(self): print "Printing names of %d packages:" %len(self.pckgs) for h in self.pckgs: print '%8d %s' %(h[rpm.RPMTAG_SIZE], self.wholename(h)) if __name__ == '__main__': rpms = packages() rpms.orphans_only() rpms.sort_key(rpm.RPMTAG_SIZE) rpms.show()Tak to vypíše odinstalovatelné balíčky setříděné podle velikosti. Hned je vidět, kterého žrouta lze rovnou odstranit.
/var/log/yum.log
.Tiskni Sdílej: