Byla vydána nová verze 10.2 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze nové balíčky Immich, Immich Machine Learning, uv a RustDesk Client.
TypeScript (Wikipedie), tj. JavaScript rozšířený o statické typování a další atributy, byl vydán v nové verzi 6.0. Příští verze 7.0 je kvůli výkonu přepisována do programovacího jazyka Go.
Christian Schaller z Red Hatu na svém blogu popsal své zkušenosti s používáním AI při vývoji open source aplikací pro Linux. Pomocí různých AI aktualizoval nebo vytvořil aplikace Elgato Light GNOME Shell extension, Dell Ultrasharp Webcam 4K, Red Hat Planet, WMDock, XMMS resuscitated (aktualizace z GTK 2 a Esound na GTK 4, GStreamer a PipeWire) a Monkey Bubble. SANE ovladač pro skener Plustek OpticFilm 8200i se mu zatím nepovedl.
Americké firmy Tesla a SpaceX postaví v texaském Austinu moderní komplex na výrobu čipů pro umělou inteligenci (AI). Součástí projektu s názvem Terafab budou dvě moderní továrny na výrobu čipů – jedna se zaměří na automobily a humanoidní roboty, druhá na datová centra ve vesmíru. Uvedl to generální ředitel těchto firem Elon Musk. Projekt by podle odhadů měl stát 20 miliard USD (zhruba 425 miliard Kč).
Byla vydána nová stabilní verze 6.11 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo
… více »Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:
… více »Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).
Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
V Gemini sídlí v době psaní tohoto zápisku Android 7.1.1 s jádrem 3.18.41 (build 10.5.2018). Jak jsem psal minule, Android je předinstalován, ale dá se připravit dual- , triple- či quad- boot s tím, že se rozdělí disk. Od doby, kdy jsem to dělal já vývoj trochu pokročil, nabízí se triple boot a už je v nabídce i rooted android. Ano, takhle jednoduché je získat na Androidu roota. Já jsem ještě musel ještě v "scatter file" měnit u partišny SYS23 boot.img na root_boot.img . Takže máme rootlý android 7.
V oficiálních návodech se hovoří o programu Magisk Manager, který z pochopitelných důvodů nenajdete na Google Play
. Když ho ručně stáhnete, postupujete podle celkem blbovzdorného návodu na webových stránkách. Po rebootu jako by se nic nestalo. Ale stalo. Po té, co jste spustili "Instalovat" a nechali proběhnout reboot, ožily moduly "Magisk Hide", který informaci, že je Android rootnutý schovává před zvědavými aplikacemi (některé bankovní aplikace nemají rootnutý Android rády) a hlavně "Superuser". Ze začátku mne překvapilo, že tam nevidím žádnou aplikaci. Když jsem ale nainstaloval a spustil první aplikaci, která si řekla o roota (blíže viz níže) a povolil, objevila se tam. A když jsem Total Commaneru roota odepřel, objevila se tam taky, s možností volbu změnit. Takhle nějak si to představuji.
. Teda rootovskou konzoli. Bez hesla, jako na N900. Paráda. Pro moje účely (pro začátek primárně mc a ssh) to zatím stačí a jdeme dál.
Buď není žádné zabezpečení (heslo, gesto, pin), nebo musím před zadáváním hesla swajpovat po obrazovce. To je dost opruz.
V diskuzi i na fóru mi od minulého zápisku odpověděli a řešení je prosté. Místo swipe se praští do mezerníku. To jde. Spolu s prodloužením doby do zhasnutí obrazovky z výchozích 30s na 2 minuty (dá se dřív přes Fn-Esc čili OFF) je to jen minimální zdržení, jen občas na poprvé nezareaguje enter - netuším proč. Každopádně vyřešeno - jestli píšu "Heslo" nebo " Heslo" je mi dost jedno. Když to občas nechce vzít enter, stačí ještě ťuknout do escape. Bez opuštění základní psací polohy. OK.
Dlouhý stisk je k ničemu
Tak tady začal můj výlet do hlubin světa androidu.Na gemini mi vadila první řada, která je Esc - 1 ... 0, Del/BS. V Gemini tupě udělali a HW popsali Esc +ěščřžýáíé, čímž se ale klávesa ě, která má být mezi Q a W dostala až mezi W a E. Takže dost neintuitivní. Takže přesun o jedno doleva, máme Esc ěščřžýáíé a "rezervu dne". Co s ní uděláme ? No samozřejmě, že mrtvou klávesu, která tam patří, takže "'" a "ˇ".
České mrtvé klávesy - háček a čárka (na umlaut zatím kašlu, ale už mám adepta na jeho umístění) mají Unicode ekvivalenty - je to Combining Caron (neboli háček) a Combining Acute Accent čili čárka. A ty se normálně do mapy zapíší a hotovo.
Jo, zapíší a hotovo, co ta nula, co tam byla před tím ? Hmm. Vrátíme se ještě jednou na začátek k té dokumentaci Androidu. Dozvíme se, že Android zná víc modifikátorů než linux:
.
), ale odmítají spolupracovat.
Standardně mají být na fn-šipka. V originál .kcm souborech i u mne je "fallback MOVE_END", MOVE_HOME, PAGE_UP a PAGE_DOWN. Jenže to nic nedělá. Když připojím externí HW USB klávesnici, tak tyhle funkce fungují. Třeba i v níže popsaném editoru. Ale z vestavěné klávesnice ani nic. V rámci zoufalství jsem zkusil i přes shift-šipka namapovat ty ASCII hodnoty jako \u00xx, ale ani to nefunguje. Bohužel procházet tento zápisek bez těchto čtyř kláves v Google Chrome je dost zatrest. Asi zkusím najít nějakou aplikaci, která by mi přesně vypsala jaké dostává klávesy (nebo objevit jak se něco takového v AS píše) ... nebo nevím. Ale editor (pokud to není EMACS/VIM) který tohle neumí je dost ... ehmm ... nevyhovující
.
# Copyright (C) 2012 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Czech (EU - qwertz) keyboard layout.
# Modified by jirka
#
type OVERLAY
map key 86 PLUS
### ROW 1
key 1 {
label: '1'
base: '\u011b'
capslock: '\u011a'
rshift: '1'
lshift: '+'
alt: '!'
fn: '^'
}
key 2 {
label: '2'
base: '\u0161'
capslock: '\u0160'
shift: '2'
alt: '@'
fn: '\\'
}
key 3 {
label: '3'
base: '\u010d'
capslock: '\u010c'
shift: '3'
alt: '#'
fn: '|'
}
key 4 {
label: '4'
base: '\u0159'
capslock: '\u0158'
shift: '4'
alt: '$'
fn: '~'
}
key 5 {
label: '5'
base: '\u017e'
capslock: '\u017d'
shift: '5'
alt: '%'
fn: '('
}
key 6 {
label: '6'
base: '\u00fd'
capslock: '\u00dd'
shift: '6'
alt: '^'
fn: ')'
}
key 7 {
label: '7'
base: '\u00e1'
capslock: '\u00c1'
shift: '7'
alt: '&'
fn: '{'
}
key 8 {
label: '8'
base: '\u00ed'
capslock: '\u00cd'
shift: '8'
alt: '*'
fn: '}'
}
key 9 {
label: '9'
base: '\u00e9'
capslock: '\u00c9'
shift: '9'
alt: '('
fn: '%'
}
key 0 {
label: '0'
base: '\u0301'
capslock: '+'
rshift: '0'
lshift: '\u030c'
alt: ')'
fn: '='
}
key DEL {
base: fallback DEL
shift: fallback FORWARD_DEL
}
### ROW 2
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
fn: '['
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
alt: '\u20ac'
fn: ']'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
fn: '\u20ac'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key Y {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
fn: '<'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
fn: '>'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
fn: '/'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
fn: '\''
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
fn: '\u00fa'
}
key ENTER {
label: '\n'
base: '\n'
}
### ROW 3
key TAB {
label: '\t'
base: '\t'
}
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
fn: '@'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
key F {
label: 'F'
base: 'f'
shift, capslock: 'F'
}
key G {
label: 'G'
base: 'g'
shift, capslock: 'G'
fn: '$'
}
key H {
label: 'H'
base: 'h'
shift, capslock: 'H'
fn: '*'
}
key J {
label: 'J'
base: 'j'
shift, capslock: 'J'
fn: '"'
}
key K {
label: 'K'
base: 'k'
shift, capslock: 'K'
fn: '!'
}
key L {
label: 'L'
base: 'l'
shift, capslock: 'L'
fn: ';'
}
key APOSTROPHE {
label: '-'
base: '\u016f'
lshift: '"'
rshift: '!'
fn: '-'
fn+shift: '_'
}
### ROW 4
#key SHIFT_LEFT {
#}
key Z {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
fn: '#'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
fn: '&'
alt: '#'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
alt: '&'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
alt: '@'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
}
key M {
label: 'M'
base: 'm'
shift, capslock: 'M'
alt: '\u00b5'
fn: '`'
}
key PERIOD {
label: '.'
base: '.'
lshift: ':'
rshift: ';'
alt: '>'
shift+alt: '\u00f7'
fn: '\u0082'
# insert
}
key DPAD_UP {
base: fallback DPAD_UP
fn: fallback PAGE_UP
rshift: '\u0073'
}
#key SHIFT_RIGHT {
#}
### ROW 5
#key CTRL_LEFT {
#}
#key FUNCTION {
#}
#key ALT_LEFT {
# fn: fallback SHOW_DIALER
#}
key SPACE {
label: ' '
base: ' '
alt, meta: fallback SEARCH
ctrl: fallback LANGUAGE_SWITCH
}
key COMMA {
label: ','
base: ','
lshift: '?'
rshift: '!'
alt: '<'
shift+alt: '\u00d7'
}
#
key DPAD_LEFT {
base: fallback DPAD_LEFT
fn: fallback MOVE_HOME
rshift: '\u0071'
}
key DPAD_DOWN {
base: fallback DPAD_DOWN
fn: fallback PAGE_DOWN
rshift: '\u0081'
}
key DPAD_RIGHT {
base: fallback DPAD_RIGHT
fn: fallback MOVE_END
rshift: '\u0079'
}
Tiskni
Sdílej:
. Tak si počkej na další díl