{"id":81,"date":"2025-04-19T11:46:26","date_gmt":"2025-04-19T11:46:26","guid":{"rendered":"https:\/\/www.passiivi-instituutti.fi\/?p=81"},"modified":"2025-04-19T11:53:30","modified_gmt":"2025-04-19T11:53:30","slug":"tapaus-cde-icewm-ja-mita-siita-opittiin","status":"publish","type":"post","link":"https:\/\/www.passiivi-instituutti.fi\/index.php\/2025\/04\/19\/tapaus-cde-icewm-ja-mita-siita-opittiin\/","title":{"rendered":"Tapaus CDE\/IceWM ja mit\u00e4 siit\u00e4 opittiin"},"content":{"rendered":"\n<p>CDE (<em>Common Desktop Environment<\/em>) oli aikoinaan yleisin graafinen k\u00e4ytt\u00f6liittym\u00e4 l\u00e4hes kaikissa kaupallisissa Unix-j\u00e4rjestelmiss\u00e4. CDE:n synty ajoittuu 1990-luvun alkuun (Wikipediassa on kelpo artikkeli aiheesta) ja se s\u00e4ilyi hyvin pitk\u00e4\u00e4n kaupallisena ohjelmistona, tosin muistan ostaneeni melko edullisesti Motif-asennusmediat silloiseen Red Hat Linuxiin, ja niiden mukana tuli CDE. Vuonna 2012 CDE tehtiin open source &#8211; lisenssi\u00e4 noudattavaksi, vapaasti saataville ja k\u00e4ytett\u00e4v\u00e4ksi.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/CDE_Application_Builder.png\" alt=\"\" class=\"wp-image-82\" srcset=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/CDE_Application_Builder.png 1024w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/CDE_Application_Builder-300x225.png 300w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/CDE_Application_Builder-768x576.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">By Huihermit &#8211; Own work, LGPL, https:\/\/commons.wikimedia.org\/w\/index.php?curid=31280004<\/figcaption><\/figure>\n\n\n\n<p>Erin\u00e4isi\u00e4 muitakin klassisen Unix-ajan k\u00e4ytt\u00f6liittymi\u00e4 oli, esimerkiksi melko omintakeinen Silicon Graphicsin IRIX Interactive Desktop &#8211; tai kuten se aiemmin tunnettiin nimell\u00e4 Indigo Magic Desktop. SunOS-j\u00e4rjestelmiss\u00e4 ja my\u00f6hemmin viel\u00e4 Solariksenkin aikaan oli saatavilla OpenWindows joka oli alunperin NeWS:in huonetta ja sukua. SCO Unixeissa taisi olla Looking Glass, joka ehti hetkeksi viel\u00e4 Caldera Linuxiinkin. N\u00e4iden ohella erilaisia graafisia k\u00e4ytt\u00f6liittymi\u00e4h\u00e4n on valtavasti eik\u00e4 niit\u00e4 t\u00e4ss\u00e4 kannata luetella.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"889\" height=\"1024\" src=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_administration-889x1024.jpg\" alt=\"\" class=\"wp-image-84\" srcset=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_administration-889x1024.jpg 889w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_administration-260x300.jpg 260w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_administration-768x885.jpg 768w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_administration-1333x1536.jpg 1333w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_administration.jpg 1777w\" sizes=\"auto, (max-width: 889px) 100vw, 889px\" \/><figcaption class=\"wp-element-caption\">Huomaa: System Administrator&#8217;s Guide. Tosiaankin, k\u00e4ytt\u00f6liittym\u00e4nkin yll\u00e4pito CAD-ymp\u00e4rist\u00f6ss\u00e4 oli ty\u00f6teht\u00e4v\u00e4.<\/figcaption><\/figure>\n\n\n\n<p>CDE oli siis de facto kaupallisten Unix-j\u00e4rjestelmien k\u00e4ytt\u00f6liittym\u00e4. Se oli aikansa lapsi, eik\u00e4 ehk\u00e4 en\u00e4\u00e4 t\u00e4n\u00e4 p\u00e4iv\u00e4n\u00e4 arvioiden kaikkein nohevin, mutta siin\u00e4 on er\u00e4it\u00e4 piirteit\u00e4 jotka vieh\u00e4tt\u00e4v\u00e4t erityisesti Passiivi-Instituuttia ja sit\u00e4 l\u00e4hell\u00e4 olevia piirej\u00e4. Nostalgia on varmasti yksi motivaatiotekij\u00e4, mutta keveys ja tietynlainen levollisuus (<em>erityisesti dtterm joka on mielest\u00e4ni edelleen miellytt\u00e4vin terminaaliohjelma<\/em>) puhumattakaan hauskasta ja aivan k\u00e4ytt\u00f6kelpoisesta Desktop Korn Shell:ist\u00e4 (<em>dtksh<\/em>) joka sai minutkin tekem\u00e4\u00e4n erilaisia ihan nohevia graafisia k\u00e4ytt\u00f6liittymi\u00e4 eri jutuille.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"779\" height=\"1024\" src=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/dtksh_programming-779x1024.jpg\" alt=\"\" class=\"wp-image-83\" srcset=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/dtksh_programming-779x1024.jpg 779w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/dtksh_programming-228x300.jpg 228w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/dtksh_programming-768x1009.jpg 768w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/dtksh_programming-1169x1536.jpg 1169w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/dtksh_programming.jpg 1210w\" sizes=\"auto, (max-width: 779px) 100vw, 779px\" \/><figcaption class=\"wp-element-caption\">Pendergrastin mainio ohjelmointiopas CDE-k\u00e4ytt\u00f6liittym\u00e4n mukana tulleelle dtksh-ohjelmalle<\/figcaption><\/figure>\n\n\n\n<p>Meille siihen aikaan nuorille, alle tai t\u00e4p\u00e4r\u00e4sti kolmekymppisille CDE edusti jonkinlaista mennytt\u00e4 maailmaa, ja kun oivalsimme CDE:n muutamia aika r\u00e4ikeit\u00e4 security-ongelmia &#8211; puhumattakaan siit\u00e4 ett\u00e4 mielsimme CDE:n jotenkin raskaaksi ajettavaksi, saimme p\u00e4\u00e4h\u00e4mme l\u00e4hte\u00e4 tarjoamaan CAD-ymp\u00e4rist\u00f6\u00f6n rinnalle kevytt\u00e4 IceWM-ikkunointiymp\u00e4rist\u00f6\u00e4. T\u00e4m\u00e4 oli sin\u00e4ll\u00e4\u00e4n ihan hyv\u00e4\u00e4 tarkoittava juttu.<\/p>\n\n\n\n<p>Emme kuitenkaan aivan osanneet ymm\u00e4rt\u00e4\u00e4 sit\u00e4, ett\u00e4 muutokset (<em>melko voimakkaasti painostimme k\u00e4ytt\u00e4ji\u00e4 luopumaan CDE:st\u00e4 ja siirtym\u00e4\u00e4n IcewM-ikkunointiin<\/em>) tietojenk\u00e4sittely-ymp\u00e4rist\u00f6ss\u00e4 ovat aina joko riskaapeleita tai useimmiten ainakin loppuk\u00e4ytt\u00e4ji\u00e4 <em>\u00e4rsytt\u00e4vi\u00e4<\/em>. Moni CAD-ty\u00f6skentelij\u00e4 oli toisaalta meit\u00e4 kokeneempi Unixin k\u00e4ytt\u00e4j\u00e4n\u00e4, ja ennen muuta rakentanut muun muassa dtksh:n ja CDE:n k\u00e4yt\u00e4nt\u00f6jen mukaisesti oman ja siin\u00e4 vaiheessa jo varsin totutun ty\u00f6skentely-ymp\u00e4rist\u00f6ns\u00e4.<\/p>\n\n\n\n<p>Jonkinlaisen k\u00e4sityksen CAD-maailman tai CDE:n tehok\u00e4yt\u00f6st\u00e4 saanee siit\u00e4, ett\u00e4 muuan eritt\u00e4in taitava ohjelmoitsija pyysi Solaris 2.6-ty\u00f6asemansa tietty\u00e4 parametria muutettavaksi, sill\u00e4 oletusasetus (<em>taisi olla pty-lukum\u00e4\u00e4r\u00e4<\/em>) ei riitt\u00e4nyt h\u00e4nen k\u00e4yt\u00f6ss\u00e4\u00e4n! Ja toden totta, kun menin k\u00e4ym\u00e4\u00e4n h\u00e4nen luonaan h\u00e4n esitteli tyypillisen &#8220;workflow&#8217;nsa&#8221; jossa tosiaankin eri terminaali-istuntoja ja virtuaality\u00f6p\u00f6yti\u00e4 oli niin paljon, ett\u00e4 tuo oletus pty-lukum\u00e4\u00e4r\u00e4 mik\u00e4 oli muistaakseni 1023 tjsp., ei todellakaan riitt\u00e4nyt.<\/p>\n\n\n\n<p>Korostan t\u00e4ss\u00e4, ett\u00e4 h\u00e4n todella pystyi osoittamaan, ett\u00e4 tarvitsee yhdenaikaisia terminaaliyhteyksi\u00e4 ja muita pty-objekteja kuluttavia toimintoja niin runsaasti. No eih\u00e4n siin\u00e4 sen kummempaa kuin pikku muutokset ja asia korjaantui sill\u00e4. Mutta mit\u00e4 min\u00e4 olisin yksioikoisine IceWM-ideoineni kyennyt h\u00e4nelle opettamaan graafisesta Unix-ty\u00f6skentelyst\u00e4, tai ett\u00e4 miksi olisin h\u00e4nt\u00e4 v\u00e4kisin pakottamassa muuttamaan k\u00e4ytt\u00e4j\u00e4tottumuksiaan? Oppi oli karvas kalkki mutta oivalsin kohtalaisen pian, ett\u00e4 jokainen idea ei v\u00e4ltt\u00e4m\u00e4tt\u00e4 ole ainakaan sen arvoinen, ett\u00e4 sit\u00e4 pit\u00e4isi kovin kevyin perustein l\u00e4hte\u00e4 v\u00e4kisin pakottamaan ihmisille.<\/p>\n\n\n\n<p>No, vuosikymmenet ovat vier\u00e4ht\u00e4neet ja jo pari vuotta sitten oivalsin ett\u00e4 CDE tosiaan oli open source, ja ett\u00e4 se l\u00f6ytyi jopa muutamista Linux- ja BSD*-distroista suoraan pakettirepositoryista. Tosin parhaiten sain sen toimimaan k\u00e4\u00e4nt\u00e4m\u00e4ll\u00e4 sen itse l\u00e4hdekoodista, mutta joka tapauksessa yh\u00e4 useammasta Passiivi-Instituutin Linux- ja BSD*-koneesta l\u00f6ytyy nimenomaan CDE, joka on k\u00e4yt\u00f6ss\u00e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_bsd-1024x768.jpg\" alt=\"\" class=\"wp-image-85\" srcset=\"https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_bsd-1024x768.jpg 1024w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_bsd-300x225.jpg 300w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_bsd-768x576.jpg 768w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_bsd-1536x1152.jpg 1536w, https:\/\/www.passiivi-instituutti.fi\/wp-content\/uploads\/2025\/04\/cde_bsd.jpg 2000w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">T\u00e4ss\u00e4 on ohjelmistopakettien repositorysta asennettu CDE, mutta itse k\u00e4\u00e4nt\u00e4minenkin on sujuvaa.<\/figcaption><\/figure>\n\n\n\n<p>Taitavat ne pahamaineiset <em>rpc.cmsd<\/em> ja vastaavat prosessitkin siell\u00e4 py\u00f6ri\u00e4 auki olevine portteineen&#8230; mutta Passiivi-Instituutin tietojenk\u00e4sittelykammio j\u00e4rjestelmineen on kaukana pahasta maailmasta, ja  k\u00e4ytt\u00e4jiksi voidaan hyv\u00e4ksy\u00e4 vain Unixin alkuaikojen hyv\u00e4\u00e4 tarkoittavia ihmisi\u00e4. Tosin ehk\u00e4 emme sent\u00e4\u00e4n aivan r-protokolliin ja .rhosts-tiedostoihin mene intellektuellis-hygieenisist\u00e4 syist\u00e4.<\/p>\n\n\n\n<p>Tietysti X11 ja Wayland ovat kokonaan oman kirjoituksensa aihe, puhumattakaan nykyisist\u00e4 Gnome-, KDE- ja vastaavista k\u00e4ytt\u00f6liittymist\u00e4, mutta j\u00e4t\u00e4n niist\u00e4 kirjoittelun niille jotka niit\u00e4 paremmin tuntevat ja osaavat sanoa niist\u00e4 jotain muutakin kuin ehk\u00e4 sit\u00e4 pient\u00e4 kiukuttelua, mink\u00e4 koen Waylandista (vai onko se XWayland &#8211; en muista). Mutta yhden historiallisen anekdootin kirjaan t\u00e4h\u00e4n:<\/p>\n\n\n\n<p>Aikanaan t\u00f6rm\u00e4ttiin Gnomen kanssa siihen, ett\u00e4 siit\u00e4 puuttui multi-session tuki. T\u00e4ll\u00e4 siis tarkoitetaan automounter-hanskattuja kotihakemistoja ja tilannetta jossa henkil\u00f6 kirjautuu sek\u00e4 koneelta A ett\u00e4 koneelta B yhdenaikaisesti ymp\u00e4rist\u00f6\u00f6n. Gnome hajosi katastrofaalisesti t\u00e4llaisissa tilanteissa, muistuttaen keskivertoa spektaakkelia mik\u00e4 koetaan hydropneumaattisten Citro\u00ebnien kanssa.<\/p>\n\n\n\n<p>Otin ja kirjoitin itse Gnomen p\u00e4\u00e4jehulle ja sain vastauksen joka oli suurin piirtein t\u00e4llainen:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><em>&#8220;Minua ei kiinnosta mihin Gnomea k\u00e4ytet\u00e4\u00e4n ja mit\u00e4 mahdollisia ongelmia siin\u00e4 on. Gnome on minulle ohjelmointiparadigma.<\/em>&#8220;<\/p>\n<\/blockquote>\n\n\n\n<p>No, heppu meni sitten kai oikein Microsoftille t\u00f6ihin tuonnempana. Meill\u00e4 oli kuitenkin kai satoja ty\u00f6asemak\u00e4ytt\u00e4ji\u00e4, jotka olivat halukkaita k\u00e4ytt\u00e4m\u00e4\u00e4n jotakin muuta kuin CDE:t\u00e4 tai kovin minimaalista IceWM-k\u00e4ytt\u00f6liittym\u00e4\u00e4, mutta koska melko usein oltiin tilanteessa jossa k\u00e4yt\u00f6ss\u00e4 saattoi olla useampi kuin yksi ty\u00f6asema, juttu kuivui Gnomen osalta siihen. En tied\u00e4 onko Gnomessa t\u00e4n\u00e4 p\u00e4iv\u00e4n\u00e4 tuota multisession-tukea.<\/p>\n\n\n\n<p>Se, ett\u00e4 CDE on saatavilla open sourcena ja halukkaat voivat sit\u00e4 yh\u00e4 k\u00e4ytt\u00e4\u00e4, on itsess\u00e4\u00e4n kulttuuriteko ja Passiivi-Instituutissa suhtaudutaan kulttuuriasioihin lujasti ilakoiden.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>CDE (Common Desktop Environment) oli aikoinaan yleisin graafinen k\u00e4ytt\u00f6liittym\u00e4 l\u00e4hes kaikissa kaupallisissa Unix-j\u00e4rjestelmiss\u00e4. CDE:n synty ajoittuu 1990-luvun alkuun (Wikipediassa on [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-81","post","type-post","status-publish","format-standard","hentry","category-unix"],"_links":{"self":[{"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/posts\/81","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/comments?post=81"}],"version-history":[{"count":6,"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/posts\/81\/revisions"}],"predecessor-version":[{"id":92,"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/posts\/81\/revisions\/92"}],"wp:attachment":[{"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/media?parent=81"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/categories?post=81"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.passiivi-instituutti.fi\/index.php\/wp-json\/wp\/v2\/tags?post=81"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}