Organizátoři konference LinuxDays ukončili veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata, která na letošní konferenci zaznějí. Hlasovat můžete do neděle 7. září. Poté podle výsledků hlasování organizátoři sestaví program pro letošní ročník. Konference proběhne 4. a 5. října v Praze.
Byla vydána verze 11.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. Vypíchnout lze, že v Plasmě byl implementován 22letý požadavek. Historie schránky nově umožňuje ohvězdičkovat vybrané položky a mít k ním trvalý a snadný přístup.
Wayfire, kompozitní správce oken běžící nad Waylandem a využívající wlroots, byl vydán ve verzi 0.10.0. Zdrojové kódy jsou k dispozici na GitHubu. Videoukázky na YouTube.
Před necelými čtyřmi měsíci byl Steven Deobald jmenován novým výkonným ředitelem GNOME Foundation. Včera skončil, protože "nebyl pro tuto roli v tento čas ten pravý".
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 156 (pdf).
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.8.1. Přehled novinek v Changelogu.
Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.
Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.
Ubuntu nově pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 4. snapshot Ubuntu 25.10 (Questing Quokka).
A já si myslím, že python je soubor a ne adresář a proto v něm nemůže být activate. A odpovídal by tomu i název okna z prvního obrázku.
Ups. Myslel jsem, že se tazatel snaží spustit soubor activate v adresáři python, ale asi se snaží příkazem acitvate spustit soubor python. To má ale asi špatně syntakticky.
1) Myslím, že python je soubor a proto v něm nemůžeš mít activate, jako by šlo o adresář.
2) Změna vlastníka: sudo chown tomas:tomas /cesta/k/tomu/co/chces/menit
venv/bin/activate
, takze ~/venv/bin/activate
- ten neexistuje.~/naucse-python/venv/bin/
a pokusis se sourcovat venv/bin/python/activate
, coz ale vzhledem k aktualnimu adresari je ~/naucse-python/venv/bin/venv/bin/python/activate
- ten neexistuje.~/naucse-python/
a zkus to znovupython/activate
../../venv/bin/python/activate
cd ~/naucse-python source venv/bin/python/activate
Zavedl jsem systém, který mám nainstalovaný na flešce a v ~/naucse-python/venv/ mám bin/ include/ lib/ lib64/ pyvenv.cfg share/ .
Podstatnější ale je, co je v ~/naucse-python/venv/bin/ . Já tam mám mnohem více souborů: activate activate.csh activate.fish easy_install easy_install-3.6 pip pip3 pip3.6 python python3 .
Tomáši
na tvém místě bych začal znovu. Drž se striktně toho co tam píší. Pokud už něco bude nainstalováno, tak ti to systém oznámí a prostě budeš jen pokračovat dál.
~/naucse-python/venv/binčo pravdepodobne znamená
/home/tomas/naucse-python/venv/bin, tak príkaz
source venv/bin/python/activateznamená, že chceš spustiť skript, ktorého celá cesta je
/home/tomas/naucse-python/venv/bin/venv/bin/python/activateNo a keď budeme mať jasno v tom, kde ten súbor vlastne je, tak treba vedieť, že v Linuxe sú buď programy skompilované alebo v podobe skriptu. Použitie "source" naznačuje, že ten tvoj program "activate" je skript. Presvedčiť sa dá tak, že sa pozrieš dovnútra. Ak je to skript, tak pravdepodobne začína znakmi
#!a za nimi nasleduje program, ktorý bude interpretovať zvyšok skriptu. Ak tam je uvedený program nesprávny (napr. s nesprávnou cestou), tak to fungovať nebude. Už nebudem ďalej špekulovať. Ujasni si kde ten súbor je, čo je v ňom napísané a podľa toho sa pohneš ďalej.
Mně připadá, že netušíš, co přesně chceš udělat. To je ale nejdůležitější první krok — ujasnit si, čeho chceš nějakými příkazy shellu docílit.
Příkaz source
je specifický pro shell (například Bash). Je zhruba stejný jako příkaz „tečka na začátku řádku“ a načte do současného shellu, ať už interaktivního nebo spuštěného se skriptem, obsah požadovaného souboru, který ale musí být taky shell skript. Těžko můžeš do shellu načíst skript v Pythonu. To řekne tak leda syntax error
.
Předpokládám tedy, že chceš spustit skript v Pythonu. Dejme tomu, že máme skript typu Hello, World v souboru /tmp/blah.py
. Takhle by se ten soubor dal vytvořit:
cat > /tmp/blah.py <<<"print('hello fucking world')"
Takhle by se dalo prohlédnout, co v něm je:
cat /tmp/blah.py
A takhle by se dal spustit:
python3 /tmp/blah.py
Nebo s úplnými cestami:
/usr/bin/python3 /tmp/blah.py
Nebo když budeš ve správném adresáři:
cd /tmp python3 blah.py
cd /tmp python3 ./blah.py
Všimni si, že na tohle^^^ vůbec nebylo potřeba, aby byl soubor spustitelný (aby měl nastavený x
bit). Spustitelný je totiž interpret Pythonu, který pak interpretuje příslušný skript v Pythonu.
Pokud chceš používat blah.py
přímo jako spustitelný soubor, k tomu slouží shebang Můžeš si přidat do souboru ten speciální první řádek nebo znovu vytvořit soubor třeba takto:
cat > /tmp/blah.py <<-BLAH #!/usr/bin/python3 print('hello fucking world') BLAH
Soubor blah.py
tedy bude obsahovat toto (cat /tmp/blah.py
):
#!/usr/bin/python3 print('hello fucking world')
Pak nastavíš, že má být spustitelný:
chmod +x /tmp/blah.py
A pak ho spustíš:
/tmp/blah.py
Nebo tedy přímo z místního adresáře:
cd /tmp ./blah.py
Je jenom potřeba si ujasnit, kde je současný adresář, kde je soubor, který chceš spustit, co v něm je (a má být) atd. atp. To je celé. Tedy neprovádět nějaký návod naslepo a s chybamí, ale vždy mít přehled o tom, co který krok dělá a znamená, jak si můžu prohlédnout výsledek nějaké akce (obsah souboru, cíl symlinku, práva souboru (ls -l
) atd.) a co vlastně dělám.
V tom tvém screenshotu používáš relativní cestu k souboru, ale první dva adresáře té relativní cesty jsou tam chybně navíc, protože to je adresář, ve kterém už jsi, který máš jako současný adresář v shellu. Pak není divu, že to celé nefunguje. (Samozřejmě tam asi budou ještě i další chyby.)
Tiskni
Sdílej: