Apple na své vývojářské konferenci WWDC24 (Worldwide Developers Conference, keynote) představil řadu novinek: svou umělou inteligenci pojmenovanou jednoduše Apple Intelligence, iOS 18, visionOS 2, macOS Sequoia, iPadOS 18, watchOS 11, …
Vyšla nová verze XMPP (Jabber) klienta Gajim, která přidává podporu reakcí pomocí emoji (XEP-0444: Message Reactions) a citace zpráv (XEP-0461: Message Replies). Přehled dalších vylepšení je k dispozici na oficiálních stránkách.
Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.
Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).
Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
S níže popsaným postupem jsem strávil krušné chvilky, takže rád ostatním od problému pomůžu.
V následujícím textu předpokládám, že na je na počítači nainstalován (Open)SUSE 10.0 s alespoň minimálním X Window systémem a C/C++ vývojovými nástroji, a že se chystáme instalovat 10g release 2. Dále předpokládám znalost základních termínů Oracle.
Samotný DB server není potřeba, pokud existuje možnost připojení na nějaký síťový. Já si jej ale pro jistotu stejně instaluji.
Nejprve stáhneme a nainstalujeme tzv. orarun balík (běhové prostředí Oracle) ze staršího SUSE Linux Enterprise Serveru.
Jako root instalujeme pomocí
rpm -ivh --nodeps orarun-1.8-109.15.i586.rpm
a stále jako root zůstáváme.
Přes YaST nainstalujeme libaio a libaio-devel balíky (asynchronní IO, hlavně nesplést s libao). YaST zde vypíše pestrobarevné varování o nesplněných závislostech s pdksh a xshared, ale to nevadí, klidně je ignorujme, protože to je pozůstatek SLESu.
Orarun nám mimo jiné vytvořil nového uživatele oracle a skupinu
oinstall, pod kterými vše poběží. Uživatel oracle je ale vypnutý, takže
musíme buď proklikat YaST (Bezpečnost a uživatelé - Správce uživatelů),
anebo editujeme login shell v /etc/passwd
a nastavíme
heslo.
V /etc/profile.d/oracle.sh
editujeme proměnnou ORACLE_HOME
na $ORACLE_BASE/product/10gR2
a zvolíme ORACLE_SID
.
Dále spustíme /usr/sbin/rcoracle start
, což nastaví parametry linuxového jádra na Oraclu příjemné. Také zde ignorujme varovná hlášení o nenastavené proměnné ORACLE_HOME
- nastaví se posléze.
Pak opustíme roota a přihlásíme se do X uživatele oracle. Z webu Oracle
stažený zip balík (10201_database_linux32.zip) rozbalíme a pustíme se
do nejjednoduššího hacku v dějinách databází - v souboru
database/install/oraparam.ini
do seznamu "Certified Versions"
připíšeme SuSE-10 (a to i přesto, že třeba používáme OpenSUSE). Tuto
editaci lze obejít parametrem -ignoresysprereqs
při instalaci,
ale to jsem se jednak dozvěděl až později, a druhak je to takové bez
šťávy.
A teď už nic nebrání tomu, abychom spustili runInstaller
,
který nás provede celou instalací (ano, je to v grafice, protože máme na
instalaci málo času a nervů). Manuálně musíme provést kontrolu
"Product-Specific Prerequisites Checks?", protože instalátor opět nenajde
SUSE 10. V závěru ještě musíme pod rootem spustit skripty
/opt/oracle/oraInventory/orainstRoot.sh
a
/opt/oracle/product/10gR2/root.sh
, k čemuž nás ovšem vyzve
dialogové okénko. Nyní by už měl být server dostupný včetně nastavených
tnsnames a listeneru, o čemž se přesvědčíme např. programem
tnsping
.
Pokud chceme spouštět Oracle automaticky při startu, editujeme v souboru
/etc/sysconfig/oracle
proměnnou START_ORACLE_DB
na "yes", to samé s listenerem apod. Můžeme také použít dobrodiní YaSTu
(Systém - Editor souborů /etc/sysconfig - Productivity - Databases -
Oracle). Na svém pracovním stroji mám nastavení následující: V
/etc/sysconfig/oracle
mám start Oracle a příslušenství
povolen, přičemž službu nespouštím v žádném runlevelu, anžto je to potvora
nenažraná. Lokální DB server si spouštím podle potřeby přes
/etc/init.d/oracle start
.
Opět pod uživatelem oracle
rozbalíme stažený balík
(10201_client_linux32.zip), ve vzniklém instalačním adresáři provedeme výše
popsanou úpravu client/install/oraparam.ini
, čímž obejdeme
kontrolu podporovaných verzí operačního systému, a v X spustíme instalátor.
Protože instalujeme vývojářské prostředí, nezvolíme tzv. instantního
klienta (tj. minimální běhové prostředí klientských aplikací), ale
vybereme software pro DBA nebo vývojáře.
Do .profile
si přidáme Oracle proměnné, abychom mohli
spouštět patřičné programy, a třeba se dostali k tnsnames.
# oracle vecirek
export ORACLE_HOME=/opt/oracle/product/10gR2
export PATH=$PATH:$ORACLE_HOME/bin
Oracle také neregistruje své knihovny v ld.so.conf
. Proto
si v /etc/ld.so.conf.d/
vytvořím soubor
oracle.conf
, který bude automaticky vložen při načtení
linkeru. Do něj napíšu /opt/oracle/product/10gR2/lib
a zavolám
ldconfig
.
sqlplus
je určitě šikovný nástroj, ale my, jako správní
pojídači koláčů, raději sáhneme po něčem, co je pro vývoj šikovnější, co
nám například pomůže s laděním SQL nebo monitoringem databáze. V linuxovém
světě nemáme na výběr, musí nám vyhovovat TOra a TOra pro SUSE v RPM neexistuje a TOra
naneštěstí používá hodně nestandardní způsob překladu ze zdrojových
kódů...
Protože si nechceme zahnojit systém a protože nechceme číst dlouhé manuály balení do RPM, použijeme kompilaci do domácího adresáře vývojáře, toho času do mého. V systému musíme mít pochopitelně nainstalovány tzv. devel RPM balíky Qt qt3-devel a o něco méně pochopitelně qt3-devel-tools. Stažený balík (tora-1.3.18.tar.gz) rozbalíme a vezmeme tyto pečlivě odladěné configure parametry. Protože SUSE a protože Tora.
./configure \
--prefix=/home/pvanek/tora-bin\
--without-kde\
--with-qt-dir=/usr/lib/qt3\
--with-qt-includes=/usr/lib/qt3/include\
--with-qt-libraries=/usr/lib/qt3/lib\
--with-static-oracle
Autor nemá nic proti KDE, sám jej používá, ale nechtělo se mu instalovat
kde-devel balíky. Bez parametru --with-static-oracle
nebude
dostupná Oracle komponenta (to je ten SUSE důvod). Ostatní cesty ke
knihovnám a hlavičkovým souborům si na koleně vyráběný configure skript sám
nenajde.
Psaní větších bloků PL/SQL příkazů je pro někoho pohodlnější v tomto editoru. Existuje do něj řada modulů, které spolupracují s databázovým serverem. Já si vybral oracle.vim, ze kterého v podstatě používám prosté spouštění obsahu souboru jako sqlplus skriptů, a nasazuji tím editované package apod. (Pikantní je zejména to, že gVim používám pouze ve Windows.)
Jádrem konfigurace je úprava procedury SelectDatabase()
,
kde lze definovat často používaná připojení v poměrně srozumitelné if
podmínce.
EM je správcovský nástroj spouštěný jako webová aplikace na vlastním web serveru.
Před spuštěním musíme nastavit identifikátor databáze, kterou chceme
pomocí EM prohlížet, např.:export ORACLE_SID=s0test
a
jako uživatel oracle zavoláme /opt/oracle/product/10gR2/bin/emctl
start dbconsole
. Výpisy spouštění EM nám řeknou, že je vše dostupné
webovým prohlížečem na adrese
http://pvanek.clance.local:1158/em/console
.
Pozor - některé funkce EM nelze provozovat v Konqueroru, takže se spuštění Firefoxu nevyhneme.
Veselé SQLení...
Nástroje: Tisk bez diskuse
Tiskni Sdílej:
/boot/grub/menu.lst
? Je to taky soubor, stejně jako knihovny X? Je! A je svou existencí nebezpečný nebo je v něm bezpečnostní díra???