xorg.scm 232 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976
  1. ;;; GNU Guix --- Functional package management for GNU
  2. ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
  3. ;;; Copyright © 2014, 2015, 2017, 2018, 2020 Mark H Weaver <mhw@netris.org>
  4. ;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
  5. ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
  6. ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
  7. ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
  8. ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com>
  9. ;;; Copyright © 2016, 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
  10. ;;; Copyright © 2016 Nikita <nikita@n0.is>
  11. ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
  12. ;;; Copyright © 2016 David Craven <david@craven.ch>
  13. ;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
  14. ;;; Copyright © 2017, 2018, 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
  15. ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
  16. ;;; Copyright © 2017, 2020 Arun Isaac <arunisaac@systemreboot.net>
  17. ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
  18. ;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
  19. ;;; Copyright © 2018, 2020 Oleg Pykhalov <go.wigust@gmail.com>
  20. ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
  21. ;;; Copyright © 2019 nee <nee@cock.li>
  22. ;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com>
  23. ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
  24. ;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com>
  25. ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
  26. ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
  27. ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
  28. ;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
  29. ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
  30. ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
  31. ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
  32. ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
  33. ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
  34. ;;; Copyright © 2021 qblade <qblade@protonmail.com>
  35. ;;;
  36. ;;; This file is part of GNU Guix.
  37. ;;;
  38. ;;; GNU Guix is free software; you can redistribute it and/or modify it
  39. ;;; under the terms of the GNU General Public License as published by
  40. ;;; the Free Software Foundation; either version 3 of the License, or (at
  41. ;;; your option) any later version.
  42. ;;;
  43. ;;; GNU Guix is distributed in the hope that it will be useful, but
  44. ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
  45. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  46. ;;; GNU General Public License for more details.
  47. ;;;
  48. ;;; You should have received a copy of the GNU General Public License
  49. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
  50. (define-module (gnu packages xorg)
  51. #:use-module ((guix licenses) #:prefix license:)
  52. #:use-module (guix packages)
  53. #:use-module (guix download)
  54. #:use-module (guix git-download)
  55. #:use-module (guix build-system gnu)
  56. #:use-module (guix build-system perl)
  57. #:use-module (guix build-system python)
  58. #:use-module (guix utils)
  59. #:use-module (gnu packages)
  60. #:use-module (gnu packages aidc)
  61. #:use-module (gnu packages anthy)
  62. #:use-module (gnu packages autotools)
  63. #:use-module (gnu packages bash)
  64. #:use-module (gnu packages bison)
  65. #:use-module (gnu packages check)
  66. #:use-module (gnu packages compression)
  67. #:use-module (gnu packages emacs)
  68. #:use-module (gnu packages flex)
  69. #:use-module (gnu packages fontutils)
  70. #:use-module (gnu packages freedesktop)
  71. #:use-module (gnu packages gettext)
  72. #:use-module (gnu packages gl)
  73. #:use-module (gnu packages glib)
  74. #:use-module (gnu packages gnupg)
  75. #:use-module (gnu packages gperf)
  76. #:use-module (gnu packages gtk)
  77. #:use-module (gnu packages haskell-xyz)
  78. #:use-module (gnu packages inkscape)
  79. #:use-module (gnu packages image)
  80. #:use-module (gnu packages imagemagick)
  81. #:use-module (gnu packages libbsd)
  82. #:use-module (gnu packages libedit)
  83. #:use-module (gnu packages linux)
  84. #:use-module (gnu packages llvm)
  85. #:use-module (gnu packages m4)
  86. #:use-module (gnu packages ncurses)
  87. #:use-module (gnu packages pciutils)
  88. #:use-module (gnu packages perl)
  89. #:use-module (gnu packages perl-check)
  90. #:use-module (gnu packages pkg-config)
  91. #:use-module (gnu packages python)
  92. #:use-module (gnu packages python-compression)
  93. #:use-module (gnu packages python-crypto)
  94. #:use-module (gnu packages python-xyz)
  95. #:use-module (gnu packages qt)
  96. #:use-module (gnu packages spice)
  97. #:use-module (gnu packages video)
  98. #:use-module (gnu packages xiph)
  99. #:use-module (gnu packages xml)
  100. #:use-module (gnu packages xdisorg))
  101. ;; When cross-compiling certain packages, "--disable-malloc0returnsnull"
  102. ;; needs to be passed. Otherwise, the configure script will try to run a
  103. ;; binary for the host on the build machine.
  104. (define (malloc0-flags)
  105. (if (%current-target-system)
  106. ;; At least on glibc-based systems, malloc(0) evaluates to a non-NULL
  107. ;; pointer (except in out-of-memory situations). On other systems,
  108. ;; --enable-malloc0returnsnull might be required instead.
  109. '("--disable-malloc0returnsnull")
  110. '()))
  111. ;; packages without propagated input
  112. ;; (rationale for this separation: The packages in PROPAGATED_INPUTS need to
  113. ;; be defined first, the split makes book-keeping easier.)
  114. ;; compiles only on macos
  115. ;; (define-public applewmproto
  116. (define xorg-cf-files
  117. ;; The xorg-cf-files package contains the data files for the imake utility,
  118. ;; defining the known settings for a wide variety of platforms (many of which
  119. ;; have not been verified or tested in over a decade), and for many of the
  120. ;; libraries formerly delivered in the X.Org monolithic releases.
  121. ;;
  122. ;; License: x11, see COPYING
  123. (origin
  124. (method url-fetch)
  125. (uri "mirror://xorg/individual/util/xorg-cf-files-1.0.6.tar.bz2")
  126. (sha256
  127. (base32 "0kckng0zs1viz0nr84rdl6dswgip7ndn4pnh5nfwnviwpsfmmksd"))))
  128. (define-public imake
  129. (package
  130. (name "imake")
  131. (version "1.0.8")
  132. (source
  133. (origin
  134. (method url-fetch)
  135. (uri (string-append "mirror://xorg/individual/util/imake-"
  136. version ".tar.bz2"))
  137. (sha256
  138. (base32 "00m7l90ws72k1qm101sd2rx92ckd50cszyng5d4dd77jncbf9lmq"))))
  139. (build-system gnu-build-system)
  140. (native-inputs
  141. `(("pkg-config" ,pkg-config)))
  142. (inputs
  143. `(("xorg-cf-files" ,xorg-cf-files)
  144. ("xorgproto" ,xorgproto)))
  145. (arguments
  146. `(#:phases
  147. (modify-phases %standard-phases
  148. (add-after 'install 'install-data
  149. (lambda* (#:key inputs outputs #:allow-other-keys)
  150. (let ((cf-files (assoc-ref inputs "xorg-cf-files"))
  151. (out (assoc-ref outputs "out"))
  152. (unpack (assoc-ref %standard-phases 'unpack))
  153. (patch-source-shebangs
  154. (assoc-ref %standard-phases 'patch-source-shebangs)))
  155. (mkdir "xorg-cf-files")
  156. (with-directory-excursion "xorg-cf-files"
  157. (apply unpack (list #:source cf-files))
  158. (apply patch-source-shebangs (list #:source cf-files))
  159. (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf"
  160. "linux.cf" "Amoeba.cf" "cygwin.cf")
  161. (("/bin/sh") (which "bash")))
  162. (invoke "./configure"
  163. (string-append "SHELL=" (which "bash"))
  164. (string-append "--prefix=" out))
  165. (invoke "make" "install"))))))))
  166. (home-page "https://www.x.org/")
  167. (synopsis "Source code configuration and build system")
  168. (description
  169. "Imake is a deprecated source code configuration and build system which
  170. has traditionally been supplied by and used to build the X Window System in
  171. X11R6 and previous releases. As of the X Window System X11R7 release, the X
  172. Window system has switched to using GNU autotools as the primary build system,
  173. and the Imake system is now deprecated, and should not be used by new software
  174. projects. Software developers are encouraged to migrate software to the GNU
  175. autotools system.")
  176. (license license:x11)))
  177. (define-public lndir
  178. (package
  179. (name "lndir")
  180. (version "1.0.3")
  181. (source (origin
  182. (method url-fetch)
  183. (uri (string-append
  184. "mirror://xorg/individual/util/"
  185. "lndir-" version ".tar.bz2"))
  186. (sha256
  187. (base32
  188. "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"))))
  189. (build-system gnu-build-system)
  190. (native-inputs
  191. `(("pkg-config" ,pkg-config)))
  192. (inputs
  193. `(("xorgproto" ,xorgproto)))
  194. (home-page "https://www.x.org/")
  195. (synopsis "Symlink directory into tree")
  196. (description "Create a shadow directory of symbolic links to another
  197. directory tree.")
  198. (license license:x11)))
  199. (define-public bdftopcf
  200. (package
  201. (name "bdftopcf")
  202. (version "1.1")
  203. (source
  204. (origin
  205. (method url-fetch)
  206. (uri (string-append
  207. "mirror://xorg/individual/app/bdftopcf-"
  208. version
  209. ".tar.bz2"))
  210. (sha256
  211. (base32
  212. "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab"))))
  213. (build-system gnu-build-system)
  214. (inputs
  215. `(("libxfont" ,libxfont2)))
  216. (native-inputs
  217. `(("pkg-config" ,pkg-config)))
  218. (home-page "https://www.x.org/wiki/")
  219. (synopsis "Convert X font from BDF to PCF")
  220. (description
  221. "BDFtoPCF is a font compiler for the X server and font server. It
  222. converts X font from Bitmap Distribution Format to Portable Compiled Format
  223. which can be read by any architecture.")
  224. (license license:x11)))
  225. (define-public xorgproto
  226. (package
  227. (name "xorgproto")
  228. (version "2021.4")
  229. (source (origin
  230. (method url-fetch)
  231. (uri (string-append "mirror://xorg/individual/proto/"
  232. "xorgproto-" version ".tar.bz2"))
  233. (sha256
  234. (base32
  235. "1gwz8lhvczjinndrq2jb0swfvhk7p65rprkwiqwlp132041mfl8g"))))
  236. (build-system gnu-build-system)
  237. (propagated-inputs
  238. ;; To get util-macros in (almost?) all package inputs.
  239. `(("util-macros" ,util-macros)))
  240. (home-page "https://cgit.freedesktop.org/xorg/proto/xorgproto")
  241. (synopsis "Xorg protocol headers")
  242. (description
  243. "This package provides the headers and specification documents defining
  244. the core protocol and (many) extensions for the X Window System.")
  245. (license license:x11)))
  246. (define-public bigreqsproto
  247. (package
  248. (name "bigreqsproto")
  249. (version "1.1.2")
  250. (source
  251. (origin
  252. (method url-fetch)
  253. (uri (string-append
  254. "mirror://xorg/individual/proto/bigreqsproto-"
  255. version
  256. ".tar.bz2"))
  257. (sha256
  258. (base32
  259. "07hvfm84scz8zjw14riiln2v4w03jlhp756ypwhq27g48jmic8a6"))))
  260. (build-system gnu-build-system)
  261. (native-inputs `(("pkg-config" ,pkg-config)))
  262. (home-page "https://www.x.org/wiki/")
  263. (synopsis "Xorg BigReqsProto protocol headers")
  264. (description
  265. "Big Requests Extension defines a protocol to enable the use of
  266. requests that exceed 262140 bytes in length.")
  267. (license license:x11)
  268. (properties `((superseded . ,xorgproto)))))
  269. (define-public compositeproto
  270. (package
  271. (name "compositeproto")
  272. (version "0.4.2")
  273. (source
  274. (origin
  275. (method url-fetch)
  276. (uri (string-append
  277. "mirror://xorg/individual/proto/compositeproto-"
  278. version
  279. ".tar.bz2"))
  280. (sha256
  281. (base32
  282. "1z0crmf669hirw4s7972mmp8xig80kfndja9h559haqbpvq5k4q4"))))
  283. (build-system gnu-build-system)
  284. (inputs
  285. `(("xorgproto" ,xorgproto)))
  286. (native-inputs
  287. `(("pkg-config" ,pkg-config)))
  288. (home-page "https://www.x.org/wiki/")
  289. (synopsis "Xorg CompositeProto protocol headers")
  290. (description
  291. "Composite Extension contains header files and documentation for
  292. the damage protocol.")
  293. (license license:x11)
  294. (properties `((superseded . ,xorgproto)))))
  295. (define-public damageproto
  296. (package
  297. (name "damageproto")
  298. (version "1.2.1")
  299. (source
  300. (origin
  301. (method url-fetch)
  302. (uri (string-append
  303. "mirror://xorg/individual/proto/damageproto-"
  304. version
  305. ".tar.bz2"))
  306. (sha256
  307. (base32
  308. "0nzwr5pv9hg7c21n995pdiv0zqhs91yz3r8rn3aska4ykcp12z2w"))))
  309. (build-system gnu-build-system)
  310. (native-inputs `(("pkg-config" ,pkg-config)))
  311. (home-page "https://www.x.org/wiki/")
  312. (synopsis "Xorg DamageProto protocol headers")
  313. (description
  314. "Damage Extension contains header files and documentation for
  315. the damage protocol.")
  316. (license license:x11)
  317. (properties `((superseded . ,xorgproto)))))
  318. (define-public dmxproto
  319. (package
  320. (name "dmxproto")
  321. (version "2.3.1")
  322. (source
  323. (origin
  324. (method url-fetch)
  325. (uri (string-append
  326. "mirror://xorg/individual/proto/dmxproto-"
  327. version
  328. ".tar.bz2"))
  329. (sha256
  330. (base32
  331. "02b5x9dkgajizm8dqyx2w6hmqx3v25l67mgf35nj6sz0lgk52877"))))
  332. (build-system gnu-build-system)
  333. (native-inputs `(("pkg-config" ,pkg-config)))
  334. (home-page "https://www.x.org/wiki/")
  335. (synopsis "Xorg DMXProto protocol headers")
  336. (description
  337. "DMX (Distributed Multihead X) Extension defines a protocol for clients
  338. to access a front-end proxy X server that controls multiple back-end X
  339. servers making up a large display.")
  340. (license license:x11)
  341. (properties `((superseded . ,xorgproto)))))
  342. (define-public dri2proto
  343. (package
  344. (name "dri2proto")
  345. (version "2.8")
  346. (source
  347. (origin
  348. (method url-fetch)
  349. (uri (string-append
  350. "mirror://xorg/individual/proto/dri2proto-"
  351. version
  352. ".tar.bz2"))
  353. (sha256
  354. (base32
  355. "015az1vfdqmil1yay5nlsmpf6cf7vcbpslxjb72cfkzlvrv59dgr"))))
  356. (build-system gnu-build-system)
  357. (home-page "https://www.x.org/wiki/")
  358. (synopsis "Xorg DRI2Proto protocol headers")
  359. (description
  360. "Direct Rendering Infrastructure 2 Extension defines a protocol to
  361. securely allow user applications to access the video hardware without
  362. requiring data to be passed through the X server.")
  363. (license license:x11)
  364. (properties `((superseded . ,xorgproto)))))
  365. (define-public dri3proto
  366. (package
  367. (name "dri3proto")
  368. (version "1.0")
  369. (source
  370. (origin
  371. (method url-fetch)
  372. (uri (string-append
  373. "mirror://xorg/individual/proto/dri3proto-"
  374. version
  375. ".tar.bz2"))
  376. (sha256
  377. (base32
  378. "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"))))
  379. (build-system gnu-build-system)
  380. (home-page "https://www.x.org/wiki/")
  381. (synopsis "Xorg DRI3Proto protocol headers")
  382. (description
  383. "Direct Rendering Infrastructure 3 Extension provides mechanisms to
  384. translate between direct rendered buffers and X pixmaps. When combined with
  385. the Present extension, a complete direct rendering solution for OpenGL is
  386. provided.")
  387. (license (license:x11-style "file://dri3proto.h"
  388. "See 'dri3proto.h' in the distribution."))
  389. (properties `((superseded . ,xorgproto)))))
  390. (define-public %app-defaults-dir "/lib/X11/app-defaults")
  391. (define-public editres
  392. (package
  393. (name "editres")
  394. (version "1.0.7")
  395. (source
  396. (origin
  397. (method url-fetch)
  398. (uri (string-append
  399. "mirror://xorg/individual/app/" name "-"
  400. version
  401. ".tar.bz2"))
  402. (sha256
  403. (base32
  404. "04awfwmy3f9f0bchidc4ssbgrbicn5gzasg3jydpfnp5513d76h8"))))
  405. (build-system gnu-build-system)
  406. (arguments
  407. `(#:configure-flags
  408. (list (string-append "--with-appdefaultdir="
  409. %output ,%app-defaults-dir))))
  410. (inputs
  411. `(("libxaw" ,libxaw)
  412. ("libxmu" ,libxmu)
  413. ("libxt" ,libxt)))
  414. (native-inputs
  415. `(("pkg-config" ,pkg-config)))
  416. (home-page "https://www.x.org/wiki/")
  417. (synopsis "Tool to browse and edit X Toolkit resource specifications")
  418. (description
  419. "Editres is a tool that allows users and application developers to view
  420. the full widget hierarchy of any X Toolkit application that speaks the Editres
  421. protocol. In addition, editres will help the user construct resource
  422. specifications, allow the user to apply the resource to the application and
  423. view the results dynamically. Once the user is happy with a resource
  424. specification editres will append the resource string to the user's X
  425. Resources file.")
  426. (license license:x11)))
  427. (define-public encodings
  428. (package
  429. (name "encodings")
  430. (version "1.0.5")
  431. (source
  432. (origin
  433. (method url-fetch)
  434. (uri (string-append
  435. "mirror://xorg/individual/font/encodings-"
  436. version
  437. ".tar.bz2"))
  438. (sha256
  439. (base32 "0caafx0yqqnqyvbalxhh3mb0r9v36xmcy5zjhygb2i508dhy35mx"))))
  440. (build-system gnu-build-system)
  441. (inputs
  442. `(("mkfontscale" ,mkfontscale)))
  443. (native-inputs
  444. `(("pkg-config" ,pkg-config)))
  445. (home-page "https://www.x.org/wiki/")
  446. (synopsis "Xorg font encoding files")
  447. (description "Xorg font encoding files.")
  448. (license license:public-domain)))
  449. (define (%xorg-font-origin font version hash)
  450. (origin
  451. (method url-fetch)
  452. (uri (string-append "mirror://xorg/individual/font/" font "-"
  453. version ".tar.bz2"))
  454. (sha256 hash)
  455. (modules '((guix build utils)))
  456. (snippet
  457. ;; Do not include timestamps in '.pcf.gz' files.
  458. '(begin
  459. (substitute* "Makefile.in"
  460. (("^COMPRESS = (.*)$" _ rest)
  461. (string-append "COMPRESS = " (string-trim-right rest)
  462. " --no-name\n")))
  463. #t))))
  464. (define-syntax-rule (xorg-font-origin font version hash)
  465. "Expand to the 'origin' form for the given Xorg font package."
  466. (%xorg-font-origin font version (base32 hash)))
  467. (define-public font-adobe100dpi
  468. (package
  469. (name "font-adobe100dpi")
  470. (version "1.0.3")
  471. (source (xorg-font-origin
  472. "font-adobe-100dpi" version
  473. "0m60f5bd0caambrk8ksknb5dks7wzsg7g7xaf0j21jxmx8rq9h5j"))
  474. (build-system gnu-build-system)
  475. (inputs
  476. `(("bdftopcf" ,bdftopcf)
  477. ("font-util" ,font-util)
  478. ("mkfontdir" ,mkfontdir)))
  479. (native-inputs
  480. `(("pkg-config" ,pkg-config)))
  481. (arguments
  482. `(#:configure-flags (list
  483. ;; install fonts into subdirectory of package output instead of
  484. ;; font-util-?.?.?/share/fonts/X11
  485. (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
  486. (home-page "https://www.x.org/wiki/")
  487. (synopsis "Xorg adobe-100dpi fonts")
  488. (description "Xorg adobe-100dpi fonts.")
  489. (license license:x11)))
  490. (define-public font-adobe75dpi
  491. (package
  492. (name "font-adobe75dpi")
  493. (version "1.0.3")
  494. (source (xorg-font-origin
  495. "font-adobe-75dpi" version
  496. "02advcv9lyxpvrjv8bjh1b797lzg6jvhipclz49z8r8y98g4l0n6"))
  497. (build-system gnu-build-system)
  498. (inputs
  499. `(("bdftopcf" ,bdftopcf)
  500. ("font-util" ,font-util)
  501. ("mkfontdir" ,mkfontdir)))
  502. (native-inputs
  503. `(("pkg-config" ,pkg-config)))
  504. (arguments
  505. `(#:configure-flags (list
  506. (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
  507. (home-page "https://www.x.org/wiki/")
  508. (synopsis "Xorg adobe-75dpi fonts")
  509. (description "Xorg adobe-75dpi fonts.")
  510. (license license:x11)))
  511. ;; non-free license
  512. ;; (define-public font-adobe-utopia100dpi
  513. ;; (define-public font-adobe-utopia75dpi
  514. ;; (define-public font-adobe-utopia-type1
  515. (define-public font-alias
  516. (package
  517. (name "font-alias")
  518. (version "1.0.4")
  519. (source (xorg-font-origin
  520. name version
  521. "0xjjjindczv3g7m1597l0x19zz75xy70wh5garghz61fpzl1l4gk"))
  522. (build-system gnu-build-system)
  523. (native-inputs `(("pkg-config" ,pkg-config)))
  524. (arguments
  525. `(#:phases (modify-phases %standard-phases
  526. (add-after
  527. 'install 'install-fonts-dir
  528. ;; The X font server will not add directories to the font
  529. ;; path unless they contain a "fonts.dir" file, so add some
  530. ;; dummy files.
  531. (lambda* (#:key outputs #:allow-other-keys)
  532. (let ((out (assoc-ref outputs "out")))
  533. (for-each (lambda (d)
  534. (call-with-output-file
  535. (string-append out "/share/fonts/X11"
  536. "/" d "/fonts.dir")
  537. (lambda (p)
  538. (format p "0~%"))))
  539. '("75dpi" "100dpi" "misc" "cyrillic"))
  540. #t))))))
  541. (home-page "https://www.x.org/wiki/")
  542. (synopsis "Xorg font aliases")
  543. (description
  544. "This package provides some common aliases for Xorg fonts.
  545. For example: @code{6x10}, @code{9x15bold}, etc.")
  546. (license license:x11)))
  547. (define-public font-arabic-misc
  548. (package
  549. (name "font-arabic-misc")
  550. (version "1.0.3")
  551. (source (xorg-font-origin
  552. name version
  553. "1x246dfnxnmflzf0qzy62k8jdpkb6jkgspcjgbk8jcq9lw99npah"))
  554. (build-system gnu-build-system)
  555. (inputs
  556. `(("mkfontdir" ,mkfontdir)
  557. ("bdftopcf" ,bdftopcf)))
  558. (native-inputs
  559. `(("pkg-config" ,pkg-config)))
  560. (home-page "https://www.x.org/wiki/")
  561. (synopsis "Xorg arabic-misc font")
  562. (description "Xorg arabic-misc font.")
  563. (license license:x11)))
  564. ;; non-free license
  565. ;; (define-public font-bh100dpi
  566. ;; (define-public font-bh75dpi
  567. ;; (define-public font-bh-lucidatypewriter100dpi
  568. ;; (define-public font-bh-lucidatypewriter75dpi
  569. ;; (define-public font-bh-ttf
  570. ;; (define-public font-bh-type1
  571. ;; (define-public font-bitstream100dpi
  572. ;; (define-public font-bitstream75dpi
  573. (define-public font-cronyx-cyrillic
  574. (package
  575. (name "font-cronyx-cyrillic")
  576. (version "1.0.3")
  577. (source (xorg-font-origin
  578. name version
  579. "0ai1v4n61k8j9x2a1knvfbl2xjxk3xxmqaq3p9vpqrspc69k31kf"))
  580. (build-system gnu-build-system)
  581. (inputs
  582. `(("mkfontdir" ,mkfontdir)
  583. ("bdftopcf" ,bdftopcf)))
  584. (native-inputs
  585. `(("pkg-config" ,pkg-config)))
  586. (home-page "https://www.x.org/wiki/")
  587. (synopsis "Xorg cronyx-cyrillic font")
  588. (description "Xorg cronyx-cyrillic font.")
  589. (license license:x11)))
  590. ;; no license
  591. ;; (define-public font-cursor-misc
  592. ;; non-free license
  593. ;; (define-public font-daewoo-misc
  594. (define-public font-dec-misc
  595. (package
  596. (name "font-dec-misc")
  597. (version "1.0.3")
  598. (source (xorg-font-origin
  599. name version
  600. "0yzza0l4zwyy7accr1s8ab7fjqkpwggqydbm2vc19scdby5xz7g1"))
  601. (build-system gnu-build-system)
  602. (inputs
  603. `(("mkfontdir" ,mkfontdir)
  604. ("bdftopcf" ,bdftopcf)))
  605. (native-inputs
  606. `(("pkg-config" ,pkg-config)))
  607. (home-page "https://www.x.org/wiki/")
  608. (synopsis "Xorg dec-misc font")
  609. (description "Xorg dec-misc font.")
  610. (license license:x11)))
  611. ;; non-free license
  612. ;; (define-public font-ibm-type1
  613. (define-public font-isas-misc
  614. (package
  615. (name "font-isas-misc")
  616. (version "1.0.3")
  617. (source (xorg-font-origin
  618. name version
  619. "0rx8q02rkx673a7skkpnvfkg28i8gmqzgf25s9yi0lar915sn92q"))
  620. (build-system gnu-build-system)
  621. (inputs
  622. `(("mkfontdir" ,mkfontdir)
  623. ("bdftopcf" ,bdftopcf)))
  624. (native-inputs
  625. `(("pkg-config" ,pkg-config)))
  626. (home-page "https://www.x.org/wiki/")
  627. (synopsis "Xorg isas-misc font")
  628. (description "Xorg isas-misc font.")
  629. (license license:x11)))
  630. ;; non-free license
  631. ;; (define-public font-jis-misc
  632. (define-public font-micro-misc
  633. (package
  634. (name "font-micro-misc")
  635. (version "1.0.3")
  636. (source (xorg-font-origin
  637. name version
  638. "1dldxlh54zq1yzfnrh83j5vm0k4ijprrs5yl18gm3n9j1z0q2cws"))
  639. (build-system gnu-build-system)
  640. (inputs
  641. `(("mkfontdir" ,mkfontdir)
  642. ("bdftopcf" ,bdftopcf)))
  643. (native-inputs
  644. `(("pkg-config" ,pkg-config)))
  645. (home-page "https://www.x.org/wiki/")
  646. (synopsis "Xorg micro-misc font")
  647. (description "Xorg micro-misc font.")
  648. (license license:public-domain)))
  649. (define-public font-misc-cyrillic
  650. (package
  651. (name "font-misc-cyrillic")
  652. (version "1.0.3")
  653. (source (xorg-font-origin
  654. name version
  655. "0q2ybxs8wvylvw95j6x9i800rismsmx4b587alwbfqiw6biy63z4"))
  656. (build-system gnu-build-system)
  657. (inputs
  658. `(("mkfontdir" ,mkfontdir)
  659. ("bdftopcf" ,bdftopcf)))
  660. (native-inputs
  661. `(("pkg-config" ,pkg-config)))
  662. (home-page "https://www.x.org/wiki/")
  663. (synopsis "Xorg misc-cyrillic fonts")
  664. (description "Xorg misc-cyrillic fonts.")
  665. (license license:x11)))
  666. (define-public font-misc-ethiopic
  667. (package
  668. (name "font-misc-ethiopic")
  669. (version "1.0.4")
  670. (source (xorg-font-origin
  671. name version
  672. "1q2azkdwc4x3kh53xclwpf9q654k70lhiyns1cjq594wvxnhz339"))
  673. (build-system gnu-build-system)
  674. (inputs
  675. `(("mkfontdir" ,mkfontdir)
  676. ("mkfontscale" ,mkfontscale)))
  677. (native-inputs
  678. `(("pkg-config" ,pkg-config)))
  679. (home-page "https://www.x.org/wiki/")
  680. (synopsis "Xorg misc-ethiopic fonts")
  681. (description "Xorg misc-ethiopic fonts.")
  682. (license license:x11)))
  683. ;; non-free license
  684. ;; (define-public font-misc-meltho
  685. (define-public font-misc-misc
  686. (package
  687. (name "font-misc-misc")
  688. (version "1.1.2")
  689. (source (xorg-font-origin
  690. name version
  691. "150pq6n8n984fah34n3k133kggn9v0c5k07igv29sxp1wi07krxq"))
  692. (build-system gnu-build-system)
  693. (inputs
  694. `(("mkfontdir" ,mkfontdir)
  695. ("font-util" ,font-util)
  696. ("bdftopcf" ,bdftopcf)))
  697. (native-inputs
  698. `(("pkg-config" ,pkg-config)))
  699. (arguments
  700. `(#:configure-flags (list
  701. (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
  702. (home-page "https://www.x.org/wiki/")
  703. (synopsis "Xorg misc-misc fonts")
  704. (description "Xorg misc-misc fixed fonts.")
  705. (license license:public-domain)))
  706. (define-public font-mutt-misc
  707. (package
  708. (name "font-mutt-misc")
  709. (version "1.0.3")
  710. (source (xorg-font-origin
  711. name version
  712. "13qghgr1zzpv64m0p42195k1kc77pksiv059fdvijz1n6kdplpxx"))
  713. (build-system gnu-build-system)
  714. (inputs
  715. `(("mkfontdir" ,mkfontdir)
  716. ("bdftopcf" ,bdftopcf)))
  717. (native-inputs
  718. `(("pkg-config" ,pkg-config)))
  719. (home-page "https://www.x.org/wiki/")
  720. (synopsis "Xorg mutt-misc fonts")
  721. (description "Xorg mutt-misc fonts.")
  722. (license license:x11)))
  723. (define-public font-schumacher-misc
  724. (package
  725. (name "font-schumacher-misc")
  726. (version "1.1.2")
  727. (source (xorg-font-origin
  728. name version
  729. "0nkym3n48b4v36y4s927bbkjnsmicajarnf6vlp7wxp0as304i74"))
  730. (build-system gnu-build-system)
  731. (inputs
  732. `(("mkfontdir" ,mkfontdir)
  733. ("font-util" ,font-util)
  734. ("bdftopcf" ,bdftopcf)))
  735. (native-inputs
  736. `(("pkg-config" ,pkg-config)))
  737. (arguments
  738. `(#:configure-flags (list
  739. (string-append "--with-fontrootdir=" %output "/share/fonts/X11"))))
  740. (home-page "https://www.x.org/wiki/")
  741. (synopsis "Xorg schumacher-misc fonts")
  742. (description "Xorg schumacher-misc fonts.")
  743. (license license:x11)))
  744. (define-public font-screen-cyrillic
  745. (package
  746. (name "font-screen-cyrillic")
  747. (version "1.0.4")
  748. (source (xorg-font-origin
  749. name version
  750. "0yayf1qlv7irf58nngddz2f1q04qkpr5jwp4aja2j5gyvzl32hl2"))
  751. (build-system gnu-build-system)
  752. (inputs
  753. `(("mkfontdir" ,mkfontdir)
  754. ("bdftopcf" ,bdftopcf)))
  755. (native-inputs
  756. `(("pkg-config" ,pkg-config)))
  757. (home-page "https://www.x.org/wiki/")
  758. (synopsis "Xorg screen-cyrillic fonts")
  759. (description "Xorg screen-cyrillic fonts.")
  760. (license license:x11)))
  761. (define-public font-sony-misc
  762. (package
  763. (name "font-sony-misc")
  764. (version "1.0.3")
  765. (source (xorg-font-origin
  766. name version
  767. "1xfgcx4gsgik5mkgkca31fj3w72jw9iw76qyrajrsz1lp8ka6hr0"))
  768. (build-system gnu-build-system)
  769. (inputs
  770. `(("mkfontdir" ,mkfontdir)
  771. ("bdftopcf" ,bdftopcf)))
  772. (native-inputs
  773. `(("pkg-config" ,pkg-config)))
  774. (home-page "https://www.x.org/wiki/")
  775. (synopsis "Xorg sony-misc fonts")
  776. (description "Xorg sony-misc fonts.")
  777. (license license:x11)))
  778. (define-public font-sun-misc
  779. (package
  780. (name "font-sun-misc")
  781. (version "1.0.3")
  782. (source (xorg-font-origin
  783. name version
  784. "1q6jcqrffg9q5f5raivzwx9ffvf7r11g6g0b125na1bhpz5ly7s8"))
  785. (build-system gnu-build-system)
  786. (inputs
  787. `(("mkfontdir" ,mkfontdir)
  788. ("bdftopcf" ,bdftopcf)))
  789. (native-inputs
  790. `(("pkg-config" ,pkg-config)))
  791. (home-page "https://www.x.org/wiki/")
  792. (synopsis "Xorg sun-misc fonts")
  793. (description "Xorg sun-misc fonts.")
  794. (license license:x11)))
  795. (define-public font-util
  796. (package
  797. (name "font-util")
  798. (version "1.3.2")
  799. (source
  800. (origin
  801. (method url-fetch)
  802. (uri (string-append
  803. "mirror://xorg/individual/font/font-util-"
  804. version
  805. ".tar.bz2"))
  806. (sha256
  807. (base32 "10i2a8b3d1h3w7klsqf31iz7zbd6l8wglil54fkhdb1385281n1s"))))
  808. (build-system gnu-build-system)
  809. (native-inputs `(("pkg-config" ,pkg-config)))
  810. (home-page "https://www.x.org/wiki/")
  811. (synopsis "Xorg font utilities")
  812. (description
  813. "Xorg font package creation/installation utilities.")
  814. (license license:x11)))
  815. (define-public font-winitzki-cyrillic
  816. (package
  817. (name "font-winitzki-cyrillic")
  818. (version "1.0.3")
  819. (source (xorg-font-origin
  820. name version
  821. "181n1bgq8vxfxqicmy1jpm1hnr6gwn1kdhl6hr4frjigs1ikpldb"))
  822. (build-system gnu-build-system)
  823. (inputs
  824. `(("mkfontdir" ,mkfontdir)
  825. ("bdftopcf" ,bdftopcf)))
  826. (native-inputs
  827. `(("pkg-config" ,pkg-config)))
  828. (home-page "https://www.x.org/wiki/")
  829. (synopsis "Xorg winitzki-cyrillic font")
  830. (description "Xorg winitzki-cyrillic font.")
  831. (license license:public-domain)))
  832. (define-public font-xfree86-type1
  833. (package
  834. (name "font-xfree86-type1")
  835. (version "1.0.4")
  836. (source (xorg-font-origin
  837. name version
  838. "0jp3zc0qfdaqfkgzrb44vi9vi0a8ygb35wp082yz7rvvxhmg9sya"))
  839. (build-system gnu-build-system)
  840. (inputs
  841. `(("mkfontdir" ,mkfontdir)
  842. ("mkfontscale" ,mkfontscale)))
  843. (native-inputs
  844. `(("pkg-config" ,pkg-config)))
  845. (home-page "https://www.x.org/wiki/")
  846. (synopsis "Xorg xfree86-type1 font")
  847. (description "Xorg xfree86-type1 font.")
  848. (license license:x11)))
  849. (define-public fontsproto
  850. (package
  851. (name "fontsproto")
  852. (version "2.1.3")
  853. (source
  854. (origin
  855. (method url-fetch)
  856. (uri (string-append
  857. "mirror://xorg/individual/proto/fontsproto-"
  858. version
  859. ".tar.bz2"))
  860. (sha256
  861. (base32
  862. "1f2sdsd74y34nnaf4m1zlcbhyv8xb6irnisc99f84c4ivnq4d415"))))
  863. (build-system gnu-build-system)
  864. (native-inputs `(("pkg-config" ,pkg-config)))
  865. (home-page "https://www.x.org/wiki/")
  866. (synopsis "Xorg FontsProto protocol headers")
  867. (description
  868. "Fonts Extension contains header files and documentation for
  869. the fonts protocol.")
  870. (license license:x11)
  871. (properties `((superseded . ,xorgproto)))))
  872. (define-public glproto
  873. (package
  874. (name "glproto")
  875. (version "1.4.17")
  876. (source
  877. (origin
  878. (method url-fetch)
  879. (uri (string-append
  880. "mirror://xorg/individual/proto/glproto-"
  881. version
  882. ".tar.bz2"))
  883. (sha256
  884. (base32
  885. "0h5ykmcddwid5qj6sbrszgkcypwn3mslvswxpgy2n2iixnyr9amd"))))
  886. (build-system gnu-build-system)
  887. (native-inputs `(("pkg-config" ,pkg-config)))
  888. (home-page "https://www.x.org/wiki/")
  889. (synopsis "Xorg GLProto protocol headers")
  890. (description
  891. "OpenGL Extension defines a protocol for the client to send 3D
  892. rendering commands to the X server.")
  893. (license license:x11)
  894. (properties `((superseded . ,xorgproto)))))
  895. (define-public iceauth
  896. (package
  897. (name "iceauth")
  898. (version "1.0.8")
  899. (source
  900. (origin
  901. (method url-fetch)
  902. (uri (string-append
  903. "mirror://xorg/individual/app/iceauth-"
  904. version
  905. ".tar.bz2"))
  906. (sha256
  907. (base32
  908. "1ik0mdidmyvy48hn8p2hwvf3535rf3m96hhf0mvcqrbj44x23vp6"))))
  909. (build-system gnu-build-system)
  910. (inputs
  911. `(("libice" ,libice)))
  912. (native-inputs
  913. `(("pkg-config" ,pkg-config)))
  914. (home-page "https://www.x.org/wiki/")
  915. (synopsis "ICE authority file utility")
  916. (description
  917. "ICEAuth program is used to edit and display the authorization
  918. information used in connecting with ICE (Inter-Client Exchange). It
  919. operates very much like the xauth program for X11 connection
  920. authentication records.")
  921. (license license:x11)))
  922. (define-public inputproto
  923. (package
  924. (name "inputproto")
  925. (version "2.3.2")
  926. (source
  927. (origin
  928. (method url-fetch)
  929. (uri (string-append
  930. "mirror://xorg/individual/proto/inputproto-"
  931. version
  932. ".tar.bz2"))
  933. (sha256
  934. (base32
  935. "07gk7v006zqn3dcfh16l06gnccy7xnqywf3vl9c209ikazsnlfl9"))))
  936. (build-system gnu-build-system)
  937. (native-inputs `(("pkg-config" ,pkg-config)))
  938. (home-page "https://www.x.org/wiki/")
  939. (synopsis "Xorg InputProto protocol headers")
  940. (description
  941. "Input Extension defines a protocol to provide additional input
  942. devices management such as graphic tablets.")
  943. (license license:x11)
  944. (properties `((superseded . ,xorgproto)))))
  945. (define-public kbproto
  946. (package
  947. (name "kbproto")
  948. (version "1.0.7")
  949. (source
  950. (origin
  951. (method url-fetch)
  952. (uri (string-append
  953. "mirror://xorg/individual/proto/kbproto-"
  954. version
  955. ".tar.bz2"))
  956. (sha256
  957. (base32
  958. "0mxqj1pzhjpz9495vrjnpi10kv2n1s4vs7di0sh3yvipfq5j30pq"))))
  959. (build-system gnu-build-system)
  960. (native-inputs `(("pkg-config" ,pkg-config)))
  961. (home-page "https://www.x.org/wiki/")
  962. (synopsis "Xorg KBProto protocol headers")
  963. (description
  964. "X Keyboard (XKB) Extension defines a protocol to provide a number
  965. of new capabilities and controls for text keyboards.")
  966. (license license:x11)
  967. (properties `((superseded . ,xorgproto)))))
  968. ;; requires applewmproto, which compiles only on macos
  969. ;; (define-public libapplewm
  970. (define-public libdmx
  971. (package
  972. (name "libdmx")
  973. (version "1.1.4")
  974. (source
  975. (origin
  976. (method url-fetch)
  977. (uri (string-append
  978. "mirror://xorg/individual/lib/libdmx-"
  979. version
  980. ".tar.bz2"))
  981. (sha256
  982. (base32
  983. "0hvjfhrcym770cr0zpqajdy3cda30aiwbjzv16iafkqkbl090gr5"))))
  984. (build-system gnu-build-system)
  985. (arguments
  986. '(#:configure-flags '("--disable-static")))
  987. (inputs
  988. `(("xorgproto" ,xorgproto)
  989. ("libxext" ,libxext)
  990. ("libx11" ,libx11)))
  991. (native-inputs
  992. `(("pkg-config" ,pkg-config)))
  993. (home-page "https://www.x.org/wiki/")
  994. (synopsis "Xorg DMX library")
  995. (description
  996. "DMX (Distributed Multihead X) extension library.")
  997. (license license:x11)))
  998. (define-public libxshmfence
  999. (package
  1000. (name "libxshmfence")
  1001. (version "1.3")
  1002. (source (origin
  1003. (method url-fetch)
  1004. (uri (string-append
  1005. "mirror://xorg/individual/lib/"
  1006. name "-" version ".tar.bz2"))
  1007. (sha256
  1008. (base32
  1009. "1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"))))
  1010. (build-system gnu-build-system)
  1011. (arguments
  1012. '(#:configure-flags '("--disable-static")))
  1013. (native-inputs `(("pkg-config" ,pkg-config)))
  1014. (inputs `(("xorgproto" ,xorgproto)))
  1015. (home-page "https://www.x.org/")
  1016. (synopsis "Xorg shared memory fences library")
  1017. (description
  1018. "This library provides an interface to shared-memory fences for
  1019. synchronization between the X server and direct-rendering clients.")
  1020. ;; Same license as libevdev.
  1021. (license (license:x11-style "file://COPYING"))))
  1022. (define-public libfontenc
  1023. (package
  1024. (name "libfontenc")
  1025. (version "1.1.4")
  1026. (source
  1027. (origin
  1028. (method url-fetch)
  1029. (uri (string-append
  1030. "mirror://xorg/individual/lib/libfontenc-"
  1031. version
  1032. ".tar.bz2"))
  1033. (sha256
  1034. (base32
  1035. "0y90170dp8wsidr1dzza0grxr1lfh30ji3b5vkjz4j6x1n0wxz1c"))))
  1036. (build-system gnu-build-system)
  1037. (arguments
  1038. '(#:configure-flags '("--disable-static")))
  1039. (inputs
  1040. `(("zlib" ,zlib)
  1041. ("xorgproto" ,xorgproto)))
  1042. (native-inputs
  1043. `(("pkg-config" ,pkg-config)))
  1044. (home-page "https://gitlab.freedesktop.org/xorg/lib/libfontenc")
  1045. (synopsis "Xorg font encoding library")
  1046. (description "Xorg font encoding library.")
  1047. (license license:x11)))
  1048. (define-public libfs
  1049. (package
  1050. (name "libfs")
  1051. (version "1.0.8")
  1052. (source
  1053. (origin
  1054. (method url-fetch)
  1055. (uri (string-append
  1056. "mirror://xorg/individual/lib/libFS-"
  1057. version
  1058. ".tar.bz2"))
  1059. (sha256
  1060. (base32 "03xxyvpfa3rhqcld4p2chkil482jn9cp80hj17jdybcv2hkkgqf8"))))
  1061. (build-system gnu-build-system)
  1062. (inputs
  1063. `(("xtrans" ,xtrans)
  1064. ("xorgproto" ,xorgproto)))
  1065. (native-inputs
  1066. `(("pkg-config" ,pkg-config)))
  1067. (home-page "https://www.x.org/wiki/")
  1068. (synopsis "Xorg Font Service client library")
  1069. (description
  1070. "Font Service client library is used by clients of X Font
  1071. Servers (xfs), such as xfsinfo, fslsfonts, and the X servers
  1072. themselves.")
  1073. (license license:x11)))
  1074. (define-public libpciaccess
  1075. (package
  1076. (name "libpciaccess")
  1077. (version "0.16")
  1078. (source
  1079. (origin
  1080. (method url-fetch)
  1081. (uri (string-append
  1082. "mirror://xorg/individual/lib/libpciaccess-"
  1083. version
  1084. ".tar.bz2"))
  1085. (sha256
  1086. (base32
  1087. "12glp4w1kgvmqn89lk19cgr6jccd3awxra4dxisp7pagi06rsk11"))))
  1088. (build-system gnu-build-system)
  1089. (arguments
  1090. '(;; Make sure libpciaccess can read compressed 'pci.ids' files as
  1091. ;; provided by pciutils.
  1092. #:configure-flags
  1093. (list "--with-zlib"
  1094. (string-append "--with-pciids-path="
  1095. (assoc-ref %build-inputs "pciutils")
  1096. "/share/hwdata"))
  1097. #:phases
  1098. (modify-phases %standard-phases
  1099. (add-after 'install 'add-L-zlib
  1100. (lambda* (#:key inputs outputs #:allow-other-keys)
  1101. ;; Provide '-LZLIB/lib' next to '-lz' in the .la file.
  1102. (let ((zlib (assoc-ref inputs "zlib"))
  1103. (out (assoc-ref outputs "out")))
  1104. (substitute* (string-append out "/lib/libpciaccess.la")
  1105. (("-lz")
  1106. (string-append "-L" zlib "/lib -lz")))
  1107. #t))))))
  1108. (inputs
  1109. `(("zlib" ,zlib)
  1110. ("pciutils" ,pciutils))) ;for 'pci.ids.gz'
  1111. (native-inputs
  1112. `(("pkg-config" ,pkg-config)))
  1113. (home-page "https://www.x.org/wiki/")
  1114. (synopsis "Xorg PCI access library")
  1115. (description "Xorg Generic PCI access library.")
  1116. (license license:x11)))
  1117. (define-public libpthread-stubs
  1118. (package
  1119. (name "libpthread-stubs")
  1120. (version "0.4")
  1121. (source
  1122. (origin
  1123. (method url-fetch)
  1124. (uri (string-append
  1125. "mirror://xorg/individual/xcb/libpthread-stubs-"
  1126. version
  1127. ".tar.bz2"))
  1128. (sha256
  1129. (base32
  1130. "0cz7s9w8lqgzinicd4g36rjg08zhsbyngh0w68c3np8nlc8mkl74"))))
  1131. (build-system gnu-build-system)
  1132. (native-inputs `(("pkg-config" ,pkg-config)))
  1133. (home-page "https://www.x.org/wiki/")
  1134. (synopsis "Library with pthread stubs")
  1135. (description
  1136. "This library provides weak aliases for pthread functions not
  1137. provided in libc or otherwise available by default. Libraries like
  1138. libxcb rely on pthread stubs to use pthreads optionally, becoming
  1139. thread-safe when linked to libpthread, while avoiding any performance
  1140. hit when running single-threaded.")
  1141. (license license:x11)))
  1142. (define-public libsm
  1143. (package
  1144. (name "libsm")
  1145. (version "1.2.3")
  1146. (source
  1147. (origin
  1148. (method url-fetch)
  1149. (uri (string-append
  1150. "mirror://xorg/individual/lib/libSM-"
  1151. version
  1152. ".tar.bz2"))
  1153. (sha256
  1154. (base32
  1155. "1fwwfq9v3sqmpzpscymswxn76xhxnysa24pfim1mcpxhvjcl89id"))))
  1156. (build-system gnu-build-system)
  1157. (arguments
  1158. '(#:configure-flags '("--disable-static")))
  1159. (propagated-inputs
  1160. `(("libice" ,libice))) ; SMlib.h includes ICElib.h
  1161. (inputs
  1162. `(("xtrans" ,xtrans)
  1163. ("libuuid" ,util-linux "lib")))
  1164. (native-inputs
  1165. `(("pkg-config" ,pkg-config)))
  1166. (home-page "https://www.x.org/wiki/")
  1167. (synopsis "Xorg Session Management library")
  1168. (description "Xorg Session Management library.")
  1169. (license license:x11)))
  1170. (define-public libwindowswm
  1171. (package
  1172. (name "libwindowswm")
  1173. (version "1.0.1")
  1174. (source
  1175. (origin
  1176. (method url-fetch)
  1177. (uri (string-append
  1178. "mirror://xorg/individual/lib/libWindowsWM-"
  1179. version
  1180. ".tar.bz2"))
  1181. (sha256
  1182. (base32
  1183. "1p0flwb67xawyv6yhri9w17m1i4lji5qnd0gq8v1vsfb8zw7rw15"))))
  1184. (build-system gnu-build-system)
  1185. (inputs
  1186. `(("xorgproto" ,xorgproto)
  1187. ("libxext" ,libxext)
  1188. ("libx11" ,libx11)))
  1189. (native-inputs
  1190. `(("pkg-config" ,pkg-config)))
  1191. (home-page "https://www.x.org/wiki/")
  1192. (synopsis "Xorg WindowsWM library")
  1193. (description
  1194. "Cygwin/X rootless window management extension.
  1195. WindowsWM is a simple library designed to interface with the Windows-WM
  1196. extension. This extension allows X window managers to better interact
  1197. with the Cygwin XWin server when running X11 in a rootless mode.")
  1198. (license license:x11)))
  1199. (define-public libxcomposite
  1200. (package
  1201. (name "libxcomposite")
  1202. (version "0.4.5")
  1203. (source
  1204. (origin
  1205. (method url-fetch)
  1206. (uri (string-append
  1207. "mirror://xorg/individual/lib/libXcomposite-"
  1208. version
  1209. ".tar.bz2"))
  1210. (sha256
  1211. (base32
  1212. "13sfcglvz87vl58hd9rszwr73z0z4nwga3c12rfh7f5s2ln8l8dk"))))
  1213. (build-system gnu-build-system)
  1214. (arguments
  1215. '(#:configure-flags '("--disable-static")))
  1216. (propagated-inputs
  1217. ;; xcomposite.pc refers to all these.
  1218. `(("xorgproto" ,xorgproto)
  1219. ("libxfixes" ,libxfixes)
  1220. ("libx11" ,libx11)))
  1221. (native-inputs
  1222. `(("pkg-config" ,pkg-config)))
  1223. (home-page "https://www.x.org/wiki/")
  1224. (synopsis "Xorg Composite library")
  1225. (description
  1226. "Client library for the Composite extension to the X11 protocol.")
  1227. (license license:x11)))
  1228. (define-public libxdmcp
  1229. (package
  1230. (name "libxdmcp")
  1231. (version "1.1.3")
  1232. (source
  1233. (origin
  1234. (method url-fetch)
  1235. (uri (string-append
  1236. "mirror://xorg/individual/lib/libXdmcp-"
  1237. version
  1238. ".tar.bz2"))
  1239. (sha256
  1240. (base32
  1241. "0ab53h0rkq721ihk5hi469x500f3pgbkm1wy01yf24x5m923nli0"))))
  1242. (build-system gnu-build-system)
  1243. (arguments
  1244. '(#:configure-flags '("--disable-static")))
  1245. (inputs
  1246. `(("libbsd" ,libbsd)
  1247. ("xorgproto" ,xorgproto)))
  1248. (native-inputs
  1249. `(("pkg-config" ,pkg-config)))
  1250. (home-page "https://www.x.org/wiki/")
  1251. (synopsis "Xorg Display Manager Control Protocol library")
  1252. (description "Xorg Display Manager Control Protocol library.")
  1253. (license license:x11)))
  1254. (define-public libxft
  1255. (package
  1256. (name "libxft")
  1257. (version "2.3.3")
  1258. (source
  1259. (origin
  1260. (method url-fetch)
  1261. (uri (string-append
  1262. "mirror://xorg/individual/lib/libXft-"
  1263. version
  1264. ".tar.bz2"))
  1265. (sha256
  1266. (base32
  1267. "05lja9s54090xwh31r0bqms4v3pimng5xr09g2rdnafx2vk6hp12"))))
  1268. (build-system gnu-build-system)
  1269. (arguments
  1270. '(#:configure-flags '("--disable-static")))
  1271. (propagated-inputs
  1272. ;; xft.pc refers to all these.
  1273. `(("libxrender" ,libxrender)
  1274. ("freetype" ,freetype)
  1275. ("fontconfig" ,fontconfig)))
  1276. (inputs
  1277. `(("libx11" ,libx11)
  1278. ("xorgproto" ,xorgproto)))
  1279. (native-inputs
  1280. `(("pkg-config" ,pkg-config)))
  1281. (home-page "https://www.x.org/wiki/")
  1282. (synopsis "Xorg FreeType library")
  1283. (description
  1284. "Xorg FreeType library connects X applications with the FreeType font
  1285. rasterization library. Xft uses fontconfig to locate fonts so it has no
  1286. configuration files.")
  1287. (license license:x11)))
  1288. (define-public libxkbfile
  1289. (package
  1290. (name "libxkbfile")
  1291. (version "1.1.0")
  1292. (source
  1293. (origin
  1294. (method url-fetch)
  1295. (uri (string-append
  1296. "mirror://xorg/individual/lib/libxkbfile-"
  1297. version
  1298. ".tar.bz2"))
  1299. (sha256
  1300. (base32
  1301. "1irq9crvscd3yb8sr802dhvvfr35jdy1n2yz094xplmd42mbv3bm"))))
  1302. (build-system gnu-build-system)
  1303. (arguments
  1304. '(#:configure-flags '("--disable-static")))
  1305. (inputs
  1306. `(("libx11" ,libx11)))
  1307. (native-inputs
  1308. `(("pkg-config" ,pkg-config)))
  1309. (home-page "https://www.x.org/wiki/")
  1310. (synopsis "Xorg XKB file handling library")
  1311. (description "Xorg XKB file handling library.")
  1312. (license license:x11)))
  1313. (define-public libxmu
  1314. (package
  1315. (name "libxmu")
  1316. (version "1.1.3")
  1317. (source
  1318. (origin
  1319. (method url-fetch)
  1320. (uri (string-append
  1321. "mirror://xorg/individual/lib/libXmu-"
  1322. version
  1323. ".tar.bz2"))
  1324. (sha256
  1325. (base32
  1326. "0cdpqnx6258i4l6qhphvkdiyspysg0i5caqjy820kp63wwjk4d4w"))))
  1327. (build-system gnu-build-system)
  1328. (arguments
  1329. '(#:configure-flags '("--disable-static")))
  1330. (inputs
  1331. `(("libxt" ,libxt)
  1332. ("xorgproto" ,xorgproto)
  1333. ("libxext" ,libxext)))
  1334. (native-inputs
  1335. `(("pkg-config" ,pkg-config)))
  1336. (home-page "https://www.x.org/wiki/")
  1337. (synopsis "Xorg Xmu library")
  1338. (description
  1339. "Xmu library contains miscellaneous utilities and is not part of the
  1340. Xlib standard. It is intended to support clients in the Xorg distribution;
  1341. vendors may choose not to distribute this library if they wish. Therefore,
  1342. applications developers who depend on this library should be prepared to
  1343. treat it as part of their software base when porting.")
  1344. (license license:x11)))
  1345. (define-public libxpm
  1346. (package
  1347. (name "libxpm")
  1348. (version "3.5.13")
  1349. (source
  1350. (origin
  1351. (method url-fetch)
  1352. (uri (string-append
  1353. "mirror://xorg/individual/lib/libXpm-"
  1354. version
  1355. ".tar.bz2"))
  1356. (sha256
  1357. (base32
  1358. "09dc6nwlb2122h02vl64k9x56mxnyqz2gwpga0abfv4bb1bxmlcw"))))
  1359. (build-system gnu-build-system)
  1360. (arguments
  1361. '(#:configure-flags '("--disable-static")))
  1362. (inputs
  1363. `(("libxt" ,libxt)
  1364. ("xorgproto" ,xorgproto)
  1365. ("libxext" ,libxext)))
  1366. (native-inputs
  1367. `(("gettext" ,gettext-minimal)
  1368. ("pkg-config" ,pkg-config)))
  1369. (home-page "https://www.x.org/wiki/")
  1370. (synopsis "Xorg XPM library")
  1371. (description "XPM (X Pixmap) image file format library.")
  1372. (license license:x11)))
  1373. (define-public libxres
  1374. (package
  1375. (name "libxres")
  1376. (version "1.2.1")
  1377. (source
  1378. (origin
  1379. (method url-fetch)
  1380. (uri (string-append
  1381. "mirror://xorg/individual/lib/libXres-"
  1382. version
  1383. ".tar.bz2"))
  1384. (sha256
  1385. (base32
  1386. "049b7dk6hx47161hg47ryjrm6pwsp27r5pby05b0wqb1pcggprmn"))))
  1387. (build-system gnu-build-system)
  1388. (arguments
  1389. '(#:configure-flags '("--disable-static")))
  1390. (inputs
  1391. `(("xorgproto" ,xorgproto)
  1392. ("libxext" ,libxext)
  1393. ("libx11" ,libx11)))
  1394. (native-inputs
  1395. `(("pkg-config" ,pkg-config)))
  1396. (home-page "https://www.x.org/wiki/")
  1397. (synopsis "Xorg Resource extension library")
  1398. (description "X Resource extension library.")
  1399. (license license:x11)))
  1400. (define-public libxscrnsaver
  1401. (package
  1402. (name "libxscrnsaver")
  1403. (version "1.2.3")
  1404. (source
  1405. (origin
  1406. (method url-fetch)
  1407. (uri (string-append
  1408. "mirror://xorg/individual/lib/libXScrnSaver-"
  1409. version
  1410. ".tar.bz2"))
  1411. (sha256
  1412. (base32
  1413. "1y4vx1vabg7j9hamp0vrfrax5b0lmgm3h0lbgbb3hnkv3dd0f5zr"))))
  1414. (build-system gnu-build-system)
  1415. (arguments
  1416. '(#:configure-flags '("--disable-static")))
  1417. (propagated-inputs
  1418. `(("libx11" ,libx11)
  1419. ("libxext" ,libxext)
  1420. ("xorgproto" ,xorgproto)))
  1421. (native-inputs
  1422. `(("pkg-config" ,pkg-config)))
  1423. (home-page "https://www.x.org/wiki/")
  1424. (synopsis "Xorg Screen Saver library")
  1425. (description "X11 Screen Saver extension client library.")
  1426. (license license:x11)))
  1427. (define-public libxxf86dga
  1428. (package
  1429. (name "libxxf86dga")
  1430. (version "1.1.5")
  1431. (source
  1432. (origin
  1433. (method url-fetch)
  1434. (uri (string-append "mirror://xorg/individual/lib/"
  1435. "libXxf86dga-" version ".tar.bz2"))
  1436. (sha256
  1437. (base32 "00vjvcdlc1sga251jkxn6gkxmx9h5n290ffxxpa40qbca1gvr61b"))))
  1438. (build-system gnu-build-system)
  1439. (arguments
  1440. '(#:configure-flags '("--disable-static")))
  1441. (propagated-inputs
  1442. `(("xorgproto" ,xorgproto)))
  1443. (inputs
  1444. `(("libx11" ,libx11)
  1445. ("libxext" ,libxext)))
  1446. (native-inputs
  1447. `(("pkg-config" ,pkg-config)))
  1448. (home-page "https://www.x.org/wiki/")
  1449. (synopsis "Xorg XFree86-DGA library")
  1450. (description "Client library for the XFree86-DGA extension.")
  1451. (license license:x11)))
  1452. (define-public luit
  1453. (package
  1454. (name "luit")
  1455. (version "1.1.1")
  1456. (source
  1457. (origin
  1458. (method url-fetch)
  1459. (uri (string-append
  1460. "mirror://xorg/individual/app/luit-"
  1461. version
  1462. ".tar.bz2"))
  1463. (sha256
  1464. (base32
  1465. "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"))
  1466. ;; See https://bugs.freedesktop.org/show_bug.cgi?id=47792;
  1467. ;; should become obsolete with the next release.
  1468. (patches (search-patches "luit-posix.patch"))))
  1469. (build-system gnu-build-system)
  1470. (inputs
  1471. `(("libfontenc" ,libfontenc)))
  1472. (native-inputs
  1473. `(("pkg-config" ,pkg-config)))
  1474. (home-page "https://www.x.org/wiki/")
  1475. (synopsis "Convert terminal I/O from legacy encodings to UTF-8")
  1476. (description
  1477. "Luit is a filter that can be run between an arbitrary application and
  1478. a UTF-8 terminal emulator such as xterm. It will convert application
  1479. output from the locale's encoding into UTF-8, and convert terminal
  1480. input from UTF-8 into the locale's encoding.")
  1481. (license license:x11)))
  1482. (define-public makedepend
  1483. (package
  1484. (name "makedepend")
  1485. (version "1.0.6")
  1486. (source
  1487. (origin
  1488. (method url-fetch)
  1489. (uri (string-append
  1490. "mirror://xorg/individual/util/makedepend-"
  1491. version
  1492. ".tar.bz2"))
  1493. (sha256
  1494. (base32
  1495. "072h9nzh8s5vqfz35dli4fba36fnr219asjrb7p89n8ph0paan6m"))))
  1496. (build-system gnu-build-system)
  1497. (inputs
  1498. `(("xorgproto" ,xorgproto)))
  1499. (native-inputs `(("pkg-config" ,pkg-config)))
  1500. (home-page "https://www.x.org/wiki/")
  1501. (synopsis "Xorg makedepend utility")
  1502. (description
  1503. "Makedepend is an utility for creating dependencies in makefiles.")
  1504. (license license:x11)))
  1505. (define-public mkfontscale
  1506. (package
  1507. (name "mkfontscale")
  1508. (version "1.2.1")
  1509. (source
  1510. (origin
  1511. (method url-fetch)
  1512. (uri (string-append
  1513. "mirror://xorg/individual/app/mkfontscale-"
  1514. version
  1515. ".tar.bz2"))
  1516. (sha256
  1517. (base32 "1ixsnsm2mn0zy9ksdid0lj6irnhvasfik9mz8bbrs5sajzmra16a"))))
  1518. (build-system gnu-build-system)
  1519. (inputs
  1520. `(("zlib" ,zlib)
  1521. ("xorgproto" ,xorgproto)
  1522. ("freetype" ,freetype)
  1523. ("libfontenc" ,libfontenc)))
  1524. (native-inputs
  1525. `(("pkg-config" ,pkg-config)))
  1526. (home-page "https://www.x.org/wiki/")
  1527. (synopsis "Create an index of scalable font files for X server")
  1528. (description
  1529. "MkFontScale creates the @code{fonts.scale} and @code{fonts.dir} index
  1530. files used by the legacy X11 font system.")
  1531. (license license:x11)))
  1532. (define-public presentproto
  1533. (package
  1534. (name "presentproto")
  1535. (version "1.1")
  1536. (source
  1537. (origin
  1538. (method url-fetch)
  1539. (uri (string-append
  1540. "mirror://xorg/individual/proto/presentproto-"
  1541. version
  1542. ".tar.bz2"))
  1543. (sha256
  1544. (base32
  1545. "1f96dlgfwhsd0834z8ydjzjnb0cwha5r6lxgia4say4zhsl276zn"))))
  1546. (build-system gnu-build-system)
  1547. (home-page "https://www.x.org/wiki/")
  1548. (synopsis "Xorg PresentProto protocol headers")
  1549. (description
  1550. "Present Extension provides a way for applications to update their
  1551. window contents from a pixmap in a well defined fashion, synchronizing
  1552. with the display refresh and potentially using a more efficient
  1553. mechanism than copying the contents of the source pixmap.")
  1554. (license (license:x11-style "file://presentproto.h"
  1555. "See 'presentproto.h' in the distribution."))
  1556. (properties `((superseded . ,xorgproto)))))
  1557. (define-public printproto
  1558. (package
  1559. (name "printproto")
  1560. (version "1.0.5")
  1561. (source
  1562. (origin
  1563. (method url-fetch)
  1564. (uri (string-append
  1565. "mirror://xorg/individual/proto/printproto-"
  1566. version
  1567. ".tar.bz2"))
  1568. (sha256
  1569. (base32
  1570. "06liap8n4s25sgp27d371cc7yg9a08dxcr3pmdjp761vyin3360j"))))
  1571. (build-system gnu-build-system)
  1572. (native-inputs `(("pkg-config" ,pkg-config)))
  1573. (home-page "https://www.x.org/wiki/")
  1574. (synopsis "Xorg PrintProto protocol headers")
  1575. (description
  1576. "Print Extension defines a protocol for a portable,
  1577. network-transparent printing system.")
  1578. (license license:x11)))
  1579. (define-public randrproto
  1580. (package
  1581. (name "randrproto")
  1582. (version "1.5.0")
  1583. (source
  1584. (origin
  1585. (method url-fetch)
  1586. (uri (string-append
  1587. "mirror://xorg/individual/proto/randrproto-"
  1588. version
  1589. ".tar.bz2"))
  1590. (sha256
  1591. (base32
  1592. "0s4496z61y5q45q20gldwpf788b9nsa8hb13gnck1mwwwwrmarsc"))))
  1593. (build-system gnu-build-system)
  1594. (native-inputs `(("pkg-config" ,pkg-config)))
  1595. (home-page "https://www.x.org/wiki/")
  1596. (synopsis "Xorg RandRProto protocol headers")
  1597. (description
  1598. "Resize and Rotate Extension defines a protocol for clients to
  1599. dynamically change X screens, so as to resize, rotate and reflect the root
  1600. window of a screen.")
  1601. (license license:x11)
  1602. (properties `((superseded . ,xorgproto)))))
  1603. (define-public recordproto
  1604. (package
  1605. (name "recordproto")
  1606. (version "1.14.2")
  1607. (source
  1608. (origin
  1609. (method url-fetch)
  1610. (uri (string-append
  1611. "mirror://xorg/individual/proto/recordproto-"
  1612. version
  1613. ".tar.bz2"))
  1614. (sha256
  1615. (base32
  1616. "0w3kgr1zabwf79bpc28dcnj0fpni6r53rpi82ngjbalj5s6m8xx7"))))
  1617. (build-system gnu-build-system)
  1618. (native-inputs `(("pkg-config" ,pkg-config)))
  1619. (home-page "https://www.x.org/wiki/")
  1620. (synopsis "Xorg RecordProto protocol headers")
  1621. (description
  1622. "Record Extension defines a protocol for the recording and playback
  1623. of user actions in the X Window System.")
  1624. (license license:x11)
  1625. (properties `((superseded . ,xorgproto)))))
  1626. (define-public renderproto
  1627. (package
  1628. (name "renderproto")
  1629. (version "0.11.1")
  1630. (source
  1631. (origin
  1632. (method url-fetch)
  1633. (uri (string-append
  1634. "mirror://xorg/individual/proto/renderproto-"
  1635. version
  1636. ".tar.bz2"))
  1637. (sha256
  1638. (base32
  1639. "0dr5xw6s0qmqg0q5pdkb4jkdhaja0vbfqla79qh5j1xjj9dmlwq6"))))
  1640. (build-system gnu-build-system)
  1641. (native-inputs `(("pkg-config" ,pkg-config)))
  1642. (home-page "https://www.x.org/wiki/")
  1643. (synopsis "Xorg RenderProto protocol headers")
  1644. (description
  1645. "Rendering Extension defines a protocol for a digital image composition
  1646. as the foundation of a new rendering model within the X Window System.")
  1647. (license license:x11)
  1648. (properties `((superseded . ,xorgproto)))))
  1649. (define-public resourceproto
  1650. (package
  1651. (name "resourceproto")
  1652. (version "1.2.0")
  1653. (source
  1654. (origin
  1655. (method url-fetch)
  1656. (uri (string-append
  1657. "mirror://xorg/individual/proto/resourceproto-"
  1658. version
  1659. ".tar.bz2"))
  1660. (sha256
  1661. (base32
  1662. "0638iyfiiyjw1hg3139pai0j6m65gkskrvd9684zgc6ydcx00riw"))))
  1663. (build-system gnu-build-system)
  1664. (native-inputs `(("pkg-config" ,pkg-config)))
  1665. (home-page "https://www.x.org/wiki/")
  1666. (synopsis "Xorg ResourceProto protocol headers")
  1667. (description
  1668. "Resource Extension defines a protocol that allows a client to
  1669. query the X server about its usage of various resources.")
  1670. (license license:x11)
  1671. (properties `((superseded . ,xorgproto)))))
  1672. (define-public scrnsaverproto
  1673. (package
  1674. (name "scrnsaverproto")
  1675. (version "1.2.2")
  1676. (source
  1677. (origin
  1678. (method url-fetch)
  1679. (uri (string-append
  1680. "mirror://xorg/individual/proto/scrnsaverproto-"
  1681. version
  1682. ".tar.bz2"))
  1683. (sha256
  1684. (base32
  1685. "0rfdbfwd35d761xkfifcscx56q0n56043ixlmv70r4v4l66hmdwb"))))
  1686. (build-system gnu-build-system)
  1687. (native-inputs `(("pkg-config" ,pkg-config)))
  1688. (home-page "https://www.x.org/wiki/")
  1689. (synopsis "Xorg ScrnSaverProto protocol headers")
  1690. (description
  1691. "Screen Saver Extension defines a protocol to control screensaver
  1692. features and to query screensaver info on specific windows.")
  1693. (license license:x11)
  1694. (properties `((superseded . ,xorgproto)))))
  1695. (define-public sessreg
  1696. (package
  1697. (name "sessreg")
  1698. (version "1.1.2")
  1699. (source
  1700. (origin
  1701. (method url-fetch)
  1702. (uri (string-append
  1703. "mirror://xorg/individual/app/sessreg-" version ".tar.bz2"))
  1704. (sha256
  1705. (base32 "0crczl25zynkrslmm8sjaxszhrh4i33m7h5fg4wfdb3k8aarxjyz"))))
  1706. (build-system gnu-build-system)
  1707. (inputs
  1708. `(("xorgproto" ,xorgproto)))
  1709. (native-inputs
  1710. `(("pkg-config" ,pkg-config)))
  1711. (home-page "https://www.x.org/wiki/")
  1712. (synopsis "Register X sessions in system utmp/utmpx databases")
  1713. (description
  1714. "SessReg is a simple program for managing utmp/wtmp entries for X
  1715. sessions. It was originally written for use with xdm, but may also be
  1716. used with other display managers such as gdm or kdm.")
  1717. (license license:x11)))
  1718. (define-public setxkbmap
  1719. (package
  1720. (name "setxkbmap")
  1721. (version "1.3.2")
  1722. (source
  1723. (origin
  1724. (method url-fetch)
  1725. (uri (string-append
  1726. "mirror://xorg/individual/app/setxkbmap-"
  1727. version
  1728. ".tar.bz2"))
  1729. (sha256
  1730. (base32
  1731. "1xdrxs65v7d0rw1yaz0vsz55w4hxym99216p085ya9978j379wlg"))))
  1732. (build-system gnu-build-system)
  1733. (inputs
  1734. `(("libxkbfile" ,libxkbfile)
  1735. ("xkeyboard-config" ,xkeyboard-config)
  1736. ("libx11" ,libx11)))
  1737. (native-inputs
  1738. `(("pkg-config" ,pkg-config)))
  1739. (arguments
  1740. `(#:configure-flags
  1741. (list (string-append "--with-xkb-config-root="
  1742. (assoc-ref %build-inputs "xkeyboard-config")
  1743. "/share/X11/xkb"))))
  1744. (home-page "https://www.x.org/wiki/")
  1745. (synopsis "Set the keyboard using the X Keyboard Extension")
  1746. (description
  1747. "Setxkbmap is an X11 client to change the keymaps in the X server
  1748. for a specified keyboard to use the layout determined by the options
  1749. listed on the command line.")
  1750. (license license:x11)))
  1751. (define-public smproxy
  1752. (package
  1753. (name "smproxy")
  1754. (version "1.0.6")
  1755. (source
  1756. (origin
  1757. (method url-fetch)
  1758. (uri (string-append
  1759. "mirror://xorg/individual/app/smproxy-"
  1760. version
  1761. ".tar.bz2"))
  1762. (sha256
  1763. (base32
  1764. "0rkjyzmsdqmlrkx8gy2j4q6iksk58hcc92xzdprkf8kml9ar3wbc"))))
  1765. (build-system gnu-build-system)
  1766. (inputs
  1767. `(("libxt" ,libxt)
  1768. ("libxmu" ,libxmu)))
  1769. (native-inputs
  1770. `(("pkg-config" ,pkg-config)))
  1771. (home-page "https://www.x.org/wiki/")
  1772. (synopsis "Session Manager Proxy")
  1773. (description
  1774. "SMProxy allows X applications that do not support X11R6 session
  1775. management to participate in an X11R6 session.")
  1776. (license license:x11)))
  1777. (define-public util-macros
  1778. (package
  1779. (name "util-macros")
  1780. (version "1.19.3")
  1781. (source
  1782. (origin
  1783. (method url-fetch)
  1784. (uri (string-append
  1785. "mirror://xorg/individual/util/util-macros-"
  1786. version
  1787. ".tar.bz2"))
  1788. (sha256
  1789. (base32
  1790. "0w8ryfqylprz37zj9grl4jzdsqq67ibfwq5raj7vm1i7kmp2x08g"))))
  1791. (build-system gnu-build-system)
  1792. (native-inputs `(("pkg-config" ,pkg-config)))
  1793. (arguments
  1794. `(#:phases
  1795. (modify-phases %standard-phases
  1796. (add-after 'unpack 'fix-makefile-in
  1797. (lambda _
  1798. (substitute* "Makefile.in"
  1799. ;; Install xorg-macros.pc in PREFIX/lib/pkgconfig,
  1800. ;; not PREFIX/share/pkgconfig.
  1801. (("\\$\\(datadir\\)/pkgconfig") "$(libdir)/pkgconfig"))
  1802. #t))
  1803. (add-after 'install 'post-install-cleanup
  1804. (lambda* (#:key outputs #:allow-other-keys)
  1805. (let ((out (assoc-ref outputs "out")))
  1806. (with-directory-excursion out
  1807. (delete-file "share/util-macros/INSTALL")
  1808. (rmdir "share/util-macros"))
  1809. #t))))))
  1810. (home-page "https://www.x.org/wiki/")
  1811. (synopsis "Xorg autoconf macros")
  1812. (description
  1813. "This package provides a set of autoconf macros used by the
  1814. configure.ac scripts in other Xorg modular packages, and is needed to
  1815. generate new versions of their configure scripts with autoconf.")
  1816. (license license:x11)))
  1817. (define-public videoproto
  1818. (package
  1819. (name "videoproto")
  1820. (version "2.3.3")
  1821. (source
  1822. (origin
  1823. (method url-fetch)
  1824. (uri (string-append
  1825. "mirror://xorg/individual/proto/videoproto-"
  1826. version
  1827. ".tar.bz2"))
  1828. (sha256
  1829. (base32
  1830. "00m7rh3pwmsld4d5fpii3xfk5ciqn17kkk38gfpzrrh8zn4ki067"))))
  1831. (build-system gnu-build-system)
  1832. (native-inputs `(("pkg-config" ,pkg-config)))
  1833. (home-page "https://www.x.org/wiki/")
  1834. (synopsis "Xorg VideoProto protocol headers")
  1835. (description
  1836. "Video Extension provides a protocol for a video output mechanism,
  1837. mainly to rescale video playback in the video controller hardware.")
  1838. (license license:x11)
  1839. (properties `((superseded . ,xorgproto)))))
  1840. (define-public windowswmproto
  1841. (package
  1842. (name "windowswmproto")
  1843. (version "1.0.4")
  1844. (source
  1845. (origin
  1846. (method url-fetch)
  1847. (uri (string-append
  1848. "mirror://xorg/individual/proto/windowswmproto-"
  1849. version
  1850. ".tar.bz2"))
  1851. (sha256
  1852. (base32
  1853. "0syjxgy4m8l94qrm03nvn5k6bkxc8knnlld1gbllym97nvnv0ny0"))))
  1854. (build-system gnu-build-system)
  1855. (native-inputs `(("pkg-config" ,pkg-config)))
  1856. (home-page "https://www.x.org/wiki/")
  1857. (synopsis "Xorg WindowsWMProto protocol headers")
  1858. (description
  1859. "WindowsWM Extension defines a protocol, used for coordination between
  1860. an X11 server and the Microsoft Windows native window manager. WindowsWM
  1861. is only intended to be used on Cygwin when running a rootless XWin
  1862. server.")
  1863. (license license:x11)
  1864. (properties `((superseded . ,xorgproto)))))
  1865. (define-public x11perf
  1866. (package
  1867. (name "x11perf")
  1868. (version "1.6.1")
  1869. (source
  1870. (origin
  1871. (method url-fetch)
  1872. (uri (string-append
  1873. "mirror://xorg/individual/app/x11perf-"
  1874. version
  1875. ".tar.bz2"))
  1876. (sha256
  1877. (base32
  1878. "0d3wh6z6znwhfdiv0zaggfj0xgish98xa10yy76b9517zj7hnzhw"))))
  1879. (build-system gnu-build-system)
  1880. (inputs
  1881. `(("libx11" ,libx11)
  1882. ("libxft" ,libxft)
  1883. ("libxmu" ,libxmu)
  1884. ("libxrender" ,libxrender)))
  1885. (native-inputs
  1886. `(("pkg-config" ,pkg-config)))
  1887. (home-page "https://www.x.org/wiki/")
  1888. (synopsis "X server performance benchmarker")
  1889. (description
  1890. "X11Perf is a simple performance benchmarker for the Xorg X server.")
  1891. (license license:x11)))
  1892. (define-public xauth
  1893. (package
  1894. (name "xauth")
  1895. (version "1.1")
  1896. (source
  1897. (origin
  1898. (method url-fetch)
  1899. (uri (string-append "mirror://xorg/individual/app/xauth-" version
  1900. ".tar.bz2"))
  1901. (sha256
  1902. (base32 "032klzzw8r09z36x1272ssd79bcisz8j5p8gbdy111fiknvx27bd"))))
  1903. (build-system gnu-build-system)
  1904. (inputs
  1905. `(("libxmu" ,libxmu)
  1906. ("libxext" ,libxext)
  1907. ("libxau" ,libxau)
  1908. ("libx11" ,libx11)))
  1909. (native-inputs
  1910. `(("cmdtest" ,cmdtest)
  1911. ("pkg-config" ,pkg-config)))
  1912. (home-page "https://www.x.org/wiki/")
  1913. (synopsis "X authority file utility")
  1914. (description
  1915. "XAuth program is used to edit and display the authorization
  1916. information used in connecting to the X server.")
  1917. (license license:x11)))
  1918. (define-public xbacklight
  1919. (package
  1920. (name "xbacklight")
  1921. (version "1.2.3")
  1922. (source
  1923. (origin
  1924. (method url-fetch)
  1925. (uri (string-append
  1926. "mirror://xorg/individual/app/xbacklight-"
  1927. version
  1928. ".tar.bz2"))
  1929. (sha256
  1930. (base32
  1931. "1plssg0s3pbslg6rfzxp9sx8ryvn8l32zyvc8zp9zsbsfwjg69rs"))))
  1932. (build-system gnu-build-system)
  1933. (inputs
  1934. `(("libxcb" ,libxcb)
  1935. ("xcb-util" ,xcb-util)))
  1936. (native-inputs
  1937. `(("pkg-config" ,pkg-config)))
  1938. (home-page "https://www.x.org/wiki/")
  1939. (synopsis "Control display backlight")
  1940. (description
  1941. "Xbacklight is used to adjust the backlight brightness where
  1942. supported. It uses the RandR extension to find all outputs on the X
  1943. server supporting backlight brightness control and changes them all in
  1944. the same way.")
  1945. (license license:x11)))
  1946. (define-public xbitmaps
  1947. (package
  1948. (name "xbitmaps")
  1949. (version "1.1.2")
  1950. (source
  1951. (origin
  1952. (method url-fetch)
  1953. (uri (string-append
  1954. "mirror://xorg/individual/data/xbitmaps-"
  1955. version
  1956. ".tar.bz2"))
  1957. (sha256
  1958. (base32
  1959. "1vh73sc13s7w5r6gnc6irca56s7998bja7wgdivkfn8jccawgw5r"))))
  1960. (build-system gnu-build-system)
  1961. (native-inputs `(("pkg-config" ,pkg-config)))
  1962. (home-page "https://www.x.org/wiki/")
  1963. (synopsis "X bitmaps")
  1964. (description
  1965. "xbitmaps provides basic bitmaps (little pictures) used by some
  1966. legacy X clients.")
  1967. (license license:x11)))
  1968. (define-public xcalc
  1969. (package
  1970. (name "xcalc")
  1971. (version "1.1.0")
  1972. (source
  1973. (origin
  1974. (method url-fetch)
  1975. (uri (string-append "mirror://xorg/individual/app/"
  1976. "xcalc-" version ".tar.gz"))
  1977. (sha256
  1978. (base32 "0c768lh0nh28ram9ldldhaf51024fngc589v4pjmf3lxmzcihr58"))))
  1979. (build-system gnu-build-system)
  1980. (arguments
  1981. `(#:phases (modify-phases %standard-phases
  1982. (add-after
  1983. 'configure 'mutate-makefile
  1984. (lambda _
  1985. (substitute* "Makefile"
  1986. (("^appdefaultdir = .*$")
  1987. (string-append "appdefaultdir = " %output
  1988. ,%app-defaults-dir "\n")))
  1989. #t)))))
  1990. (inputs
  1991. `(("libxaw" ,libxaw)))
  1992. (native-inputs
  1993. `(("pkg-config" ,pkg-config)))
  1994. (home-page "https://www.x.org/wiki/")
  1995. (synopsis "Hand calculator for the X Window system")
  1996. (description "Xcalc is a scientific calculator desktop accessory that can
  1997. emulate a TI-30 or an HP-10C.")
  1998. (license license:x11)))
  1999. (define-public xcb-proto
  2000. (package
  2001. (name "xcb-proto")
  2002. (version "1.14")
  2003. (source
  2004. (origin
  2005. (method url-fetch)
  2006. (uri (string-append
  2007. "https://xcb.freedesktop.org/dist/xcb-proto-"
  2008. version ".tar.xz"))
  2009. (sha256
  2010. (base32
  2011. "01d62r286yfc3rpz714nqdgkl0wk9j0wqkd4ylas1d7r4vmkqshq"))
  2012. (modules '((guix build utils)))
  2013. (snippet
  2014. '(begin
  2015. ;; fractions.gcd has been deprecated since python-3.5.
  2016. (substitute* "xcbgen/align.py"
  2017. (("from fractions import gcd") "from math import gcd"))
  2018. #t))))
  2019. (build-system gnu-build-system)
  2020. (native-inputs
  2021. `(("pkg-config" ,pkg-config) ("python" ,python-minimal-wrapper)))
  2022. (home-page "https://xcb.freedesktop.org/")
  2023. (synopsis "XML-XCB protocol descriptions")
  2024. (description
  2025. "XCB-Proto provides the XML-XCB protocol descriptions that libxcb
  2026. uses to generate the majority of its code and API. XCB-Proto is
  2027. separated from libxcb to allow reuse by other projects, such as
  2028. additional language bindings, protocol dissectors, or documentation
  2029. generators.
  2030. XCB-Proto also contains language-independent Python libraries that are
  2031. used to parse an XML description and create objects used by Python code
  2032. generators in individual language bindings.")
  2033. (license license:x11)))
  2034. (define-public xcmiscproto
  2035. (package
  2036. (name "xcmiscproto")
  2037. (version "1.2.2")
  2038. (source
  2039. (origin
  2040. (method url-fetch)
  2041. (uri (string-append
  2042. "mirror://xorg/individual/proto/xcmiscproto-"
  2043. version
  2044. ".tar.bz2"))
  2045. (sha256
  2046. (base32
  2047. "1pyjv45wivnwap2wvsbrzdvjc5ql8bakkbkrvcv6q9bjjf33ccmi"))))
  2048. (build-system gnu-build-system)
  2049. (native-inputs `(("pkg-config" ,pkg-config)))
  2050. (home-page "https://www.x.org/wiki/")
  2051. (synopsis "Xorg XCMiscProto protocol headers")
  2052. (description
  2053. "XC-MISC Extension defines a protocol that provides Xlib two ways
  2054. to query the server for available resource IDs.")
  2055. (license license:x11)
  2056. (properties `((superseded . ,xorgproto)))))
  2057. (define-public xcmsdb
  2058. (package
  2059. (name "xcmsdb")
  2060. (version "1.0.5")
  2061. (source
  2062. (origin
  2063. (method url-fetch)
  2064. (uri (string-append
  2065. "mirror://xorg/individual/app/xcmsdb-"
  2066. version
  2067. ".tar.bz2"))
  2068. (sha256
  2069. (base32
  2070. "1ik7gzlp2igz183x70883000ygp99r20x3aah6xhaslbpdhm6n75"))))
  2071. (build-system gnu-build-system)
  2072. (inputs
  2073. `(("libx11" ,libx11)))
  2074. (native-inputs
  2075. `(("pkg-config" ,pkg-config)))
  2076. (home-page "https://www.x.org/wiki/")
  2077. (synopsis "Device Color Characterization utility")
  2078. (description
  2079. "XCMSDB is used to load, query, or remove Device Color
  2080. Characterization data stored in properties on the root window of the
  2081. screen as specified in section 7, Device Color Characterization, of the
  2082. X11 Inter-Client Communication Conventions Manual (ICCCM).")
  2083. (license license:x11)))
  2084. (define-public xcursor-themes
  2085. (package
  2086. (name "xcursor-themes")
  2087. (version "1.0.6")
  2088. (source
  2089. (origin
  2090. (method url-fetch)
  2091. (uri (string-append
  2092. "mirror://xorg/individual/data/xcursor-themes-"
  2093. version
  2094. ".tar.bz2"))
  2095. (sha256
  2096. (base32
  2097. "16a96li0s0ggg60v7f6ywxmsrmxdfizcw55ccv7sp4qjfisca7pf"))))
  2098. (build-system gnu-build-system)
  2099. (inputs
  2100. `(("libxcursor" ,libxcursor)
  2101. ("xcursorgen" ,xcursorgen)))
  2102. (native-inputs
  2103. `(("pkg-config" ,pkg-config)))
  2104. (arguments
  2105. `(#:configure-flags
  2106. (list (string-append "--with-cursordir="
  2107. (assoc-ref %outputs "out")
  2108. "/share/icons"))))
  2109. (home-page "https://www.x.org/wiki/")
  2110. (synopsis "Default Xorg cursors")
  2111. (description
  2112. "This package provides a default set of cursor themes for the Xorg
  2113. X server: @code{handhelds}, @code{redglass} and @code{whiteglass}.")
  2114. (license license:x11)))
  2115. (define-public hackneyed-x11-cursors
  2116. ;; The current release 0.8 suffers from non-deterministic build problems.
  2117. (let ((revision "1")
  2118. (commit "9423cef2e2e5ff6b1d65d61f7108c97bc7f5fdfb"))
  2119. (package
  2120. (name "hackneyed-x11-cursors")
  2121. (version (git-version "0.8.1" revision commit))
  2122. (source
  2123. (origin
  2124. (method git-fetch)
  2125. (uri (git-reference
  2126. (url "https://gitlab.com/Enthymeme/hackneyed-x11-cursors.git")
  2127. (commit commit)))
  2128. (file-name (git-file-name name version))
  2129. (sha256
  2130. (base32
  2131. "0f637i76sdwz3nm1g1iynamq6j0i6k3c70fpl0fmd0dlynm8ga96"))))
  2132. (build-system gnu-build-system)
  2133. (arguments
  2134. `(#:tests? #f ;no test suite
  2135. #:make-flags (list (string-append "PREFIX=" %output))
  2136. #:phases
  2137. (modify-phases %standard-phases
  2138. (delete 'configure)
  2139. (add-before 'build 'set-inkscape-environment-variable
  2140. (lambda* (#:key inputs #:allow-other-keys)
  2141. (let ((inkscape (search-input-file inputs "/bin/inkscape")))
  2142. (setenv "INKSCAPE" inkscape)
  2143. #t)))
  2144. (add-before 'build 'placate-inkscape-warnings
  2145. (lambda _
  2146. (setenv "HOME" (getcwd))
  2147. #t))
  2148. (add-after 'build 'generate-black-cursors
  2149. (lambda* (#:key make-flags parallel-build #:allow-other-keys)
  2150. (let ((build (assoc-ref %standard-phases 'build))
  2151. (make-flags/extended
  2152. `(,@make-flags
  2153. "THEME_NAME=Hackneyed-Dark"
  2154. "COMMON_SOURCE=theme/common-dark.svg"
  2155. "RSVG_SOURCE=theme/right-handed-dark.svg"
  2156. "LSVG_SOURCE=theme/left-handed-dark.svg")))
  2157. (build #:make-flags make-flags/extended
  2158. #:parallel-build parallel-build))))
  2159. (add-after 'install 'install-black-cursors
  2160. (lambda* (#:key make-flags #:allow-other-keys)
  2161. (apply invoke `("make" "install" ,@make-flags
  2162. "THEME_NAME=Hackneyed-Dark")))))))
  2163. (native-inputs `(("imagemagick" ,imagemagick)
  2164. ("inkscape" ,inkscape)
  2165. ("xcursorgen" ,xcursorgen)))
  2166. (home-page "https://gitlab.com/Enthymeme/hackneyed-x11-cursors")
  2167. (synopsis "Classic cursor theme for X11")
  2168. (description "Hackneyed is a scalable cursor theme mildly resembling old
  2169. Windows 3.x cursors. The cursors are available in white and black colors. A
  2170. left-handed version of the cursors is also included.")
  2171. (license license:x11))))
  2172. (define-public xcursorgen
  2173. (package
  2174. (name "xcursorgen")
  2175. (version "1.0.7")
  2176. (source
  2177. (origin
  2178. (method url-fetch)
  2179. (uri (string-append
  2180. "mirror://xorg/individual/app/xcursorgen-"
  2181. version
  2182. ".tar.bz2"))
  2183. (sha256
  2184. (base32
  2185. "0ggbv084cavp52hjgcz3vdj0g018axs0m23c03lpc5sgn92gidim"))))
  2186. (build-system gnu-build-system)
  2187. (inputs
  2188. `(("libxcursor" ,libxcursor)
  2189. ("libpng" ,libpng)))
  2190. (native-inputs
  2191. `(("pkg-config" ,pkg-config)))
  2192. (home-page "https://www.x.org/wiki/")
  2193. (synopsis "Create an X cursor file from PNG images")
  2194. (description
  2195. "XCursorGen prepares X11 cursor sets for use with libXcursor.")
  2196. (license license:x11)))
  2197. (define-public xdpyinfo
  2198. (package
  2199. (name "xdpyinfo")
  2200. (version "1.3.2")
  2201. (source
  2202. (origin
  2203. (method url-fetch)
  2204. (uri (string-append
  2205. "mirror://xorg/individual/app/xdpyinfo-"
  2206. version
  2207. ".tar.bz2"))
  2208. (sha256
  2209. (base32
  2210. "0ldgrj4w2fa8jng4b3f3biaj0wyn8zvya88pnk70d7k12pcqw8rh"))))
  2211. (build-system gnu-build-system)
  2212. (inputs
  2213. `(("xorgproto" ,xorgproto)
  2214. ("libx11" ,libx11)
  2215. ("libxxf86vm" ,libxxf86vm)
  2216. ("libxxf86dga" ,libxxf86dga)
  2217. ("libxtst" ,libxtst)
  2218. ("libxrender" ,libxrender)
  2219. ("libxinerama" ,libxinerama)
  2220. ("libxi" ,libxi)
  2221. ("libxcomposite" ,libxcomposite)
  2222. ("libdmx" ,libdmx)))
  2223. (native-inputs
  2224. `(("pkg-config" ,pkg-config)))
  2225. (home-page "https://www.x.org/wiki/")
  2226. (synopsis "Xorg display information utility")
  2227. (description
  2228. "Xdpyinfo is used to display information about an X server: the
  2229. capabilities of a server, the predefined values for various parameters
  2230. used in communicating between clients and the server, and the different
  2231. types of screens, visuals, and X11 protocol extensions that are
  2232. available.")
  2233. (license license:x11)))
  2234. (define-public xdriinfo
  2235. (package
  2236. (name "xdriinfo")
  2237. (version "1.0.6")
  2238. (source
  2239. (origin
  2240. (method url-fetch)
  2241. (uri (string-append
  2242. "mirror://xorg/individual/app/xdriinfo-"
  2243. version
  2244. ".tar.bz2"))
  2245. (sha256
  2246. (base32
  2247. "0lcx8h3zd11m4w8wf7dyp89826d437iz78cyrix436bqx31x5k6r"))))
  2248. (build-system gnu-build-system)
  2249. (inputs
  2250. `(("mesa" ,mesa)
  2251. ("libx11" ,libx11)))
  2252. (native-inputs
  2253. `(("pkg-config" ,pkg-config)))
  2254. (home-page "https://www.x.org/wiki/")
  2255. (synopsis "Query DRI configuration information")
  2256. (description
  2257. "XDRIInfo is used to query configuration information of X11
  2258. DRI (Direct Rendering Infrastructure) drivers.")
  2259. (license license:x11)))
  2260. (define-public xev
  2261. (package
  2262. (name "xev")
  2263. (version "1.2.4")
  2264. (source
  2265. (origin
  2266. (method url-fetch)
  2267. (uri (string-append
  2268. "mirror://xorg/individual/app/xev-"
  2269. version
  2270. ".tar.bz2"))
  2271. (sha256
  2272. (base32
  2273. "1ql592pdhddhkipkrsxn929y9l2nn02a5fh2z3dx47kmzs5y006p"))))
  2274. (build-system gnu-build-system)
  2275. (arguments `(#:configure-flags ',(malloc0-flags)))
  2276. (inputs
  2277. `(("libxrender" ,libxrender)
  2278. ("libxrandr" ,libxrandr)
  2279. ("xorgproto" ,xorgproto)
  2280. ("libx11" ,libx11)))
  2281. (native-inputs
  2282. `(("pkg-config" ,pkg-config)))
  2283. (home-page "https://gitlab.freedesktop.org/xorg/app/xev")
  2284. (synopsis "Print contents of X events")
  2285. (description
  2286. "XEv creates a window and then asks the X server to send it X11
  2287. events whenever anything happens to the window (such as it being moved,
  2288. resized, typed in, clicked in, etc.). You can also attach it to an
  2289. existing window. It is useful for seeing what causes events to occur
  2290. and to display the information that they contain; it is essentially a
  2291. debugging and development tool, and should not be needed in normal
  2292. usage.")
  2293. (license license:x11)))
  2294. (define-public xextproto
  2295. (package
  2296. (name "xextproto")
  2297. (version "7.3.0")
  2298. (source
  2299. (origin
  2300. (method url-fetch)
  2301. (uri (string-append
  2302. "mirror://xorg/individual/proto/xextproto-"
  2303. version
  2304. ".tar.bz2"))
  2305. (sha256
  2306. (base32
  2307. "1c2vma9gqgc2v06rfxdiqgwhxmzk2cbmknwf1ng3m76vr0xb5x7k"))))
  2308. (build-system gnu-build-system)
  2309. (native-inputs `(("pkg-config" ,pkg-config)))
  2310. (home-page "https://www.x.org/wiki/")
  2311. (synopsis "Xorg XExtProto protocol headers")
  2312. (description
  2313. "XExtProto provides the following extensions: DOUBLE-BUFFER, DPMS,
  2314. Extended-Visual-Information, Generic Event Extension, LBX, MIT-SHM,
  2315. MIT-SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP,
  2316. XC-APPGROUP, XTEST.")
  2317. (license license:x11)
  2318. (properties `((superseded . ,xorgproto)))))
  2319. (define-public libevdev
  2320. (package
  2321. (name "libevdev")
  2322. (version "1.9.1")
  2323. (source
  2324. (origin
  2325. (method url-fetch)
  2326. (uri (string-append "https://www.freedesktop.org/software/" name "/"
  2327. name "-" version ".tar.xz"))
  2328. (sha256
  2329. (base32
  2330. "1jvsphdrs1i54ccjcn6ll26jy42am7h28lbsvwa6pmxgqm43qq7m"))))
  2331. (build-system gnu-build-system)
  2332. (arguments
  2333. `(#:configure-flags '("--disable-static")))
  2334. (native-inputs `(("python" ,python)))
  2335. (home-page "https://www.freedesktop.org/wiki/Software/libevdev/")
  2336. (synopsis "Wrapper library for evdev devices")
  2337. (description
  2338. "libevdev is a wrapper library for evdev devices. it moves the common
  2339. tasks when dealing with evdev devices into a library and provides a library
  2340. interface to the callers, thus avoiding erroneous ioctls, etc.
  2341. The eventual goal is that libevdev wraps all ioctls available to evdev
  2342. devices, thus making direct access unnecessary.")
  2343. (license (license:x11-style "file://COPYING"))))
  2344. (define-public xf86-input-evdev
  2345. (package
  2346. (name "xf86-input-evdev")
  2347. (version "2.10.6")
  2348. (source
  2349. (origin
  2350. (method url-fetch)
  2351. (uri (string-append
  2352. "mirror://xorg/individual/driver/xf86-input-evdev-"
  2353. version
  2354. ".tar.bz2"))
  2355. (sha256
  2356. (base32
  2357. "1h1y0fwnawlp4yc5llr1l7hwfcxxpln2fxhy6arcf6w6h4z0f9l7"))))
  2358. (build-system gnu-build-system)
  2359. (inputs
  2360. `(("udev" ,eudev)
  2361. ("libevdev" ,libevdev)
  2362. ("mtdev" ,mtdev)
  2363. ("xorg-server" ,xorg-server)))
  2364. (native-inputs `(("pkg-config" ,pkg-config)))
  2365. (arguments
  2366. `(#:configure-flags
  2367. (list (string-append "--with-sdkdir="
  2368. (assoc-ref %outputs "out")
  2369. "/include/xorg"))))
  2370. (home-page "https://www.x.org/wiki/")
  2371. (synopsis "Generic input driver for X server")
  2372. (description
  2373. "xf86-input-evdev is a generic input driver for the Xorg X server.
  2374. This driver supports all input devices that the kernel knows about,
  2375. including most mice, keyboards, tablets and touchscreens.")
  2376. (license license:x11)))
  2377. (define-public xf86-input-libinput
  2378. (package
  2379. (name "xf86-input-libinput")
  2380. (version "1.1.0")
  2381. (source (origin
  2382. (method url-fetch)
  2383. (uri (string-append
  2384. "mirror://xorg/individual/driver/"
  2385. name "-" version ".tar.bz2"))
  2386. (sha256
  2387. (base32
  2388. "05ldqr10f2rrnshyk3lc773rz0gp3ccdzwa8n7lsc94i850jl7g1"))))
  2389. (build-system gnu-build-system)
  2390. (arguments
  2391. '(#:configure-flags
  2392. (list (string-append "--with-sdkdir="
  2393. %output "/include/xorg"))))
  2394. (native-inputs
  2395. `(("pkg-config" ,pkg-config)))
  2396. (inputs
  2397. `(("libinput" ,libinput-minimal)
  2398. ("xorg-server" ,xorg-server)))
  2399. (home-page "https://www.x.org/wiki/")
  2400. (synopsis "Input driver for X server based on libinput")
  2401. (description
  2402. "xf86-input-libinput is an input driver for the Xorg X server based
  2403. on libinput. It is a thin wrapper around libinput, so while it does
  2404. provide all features that libinput supports it does little beyond.")
  2405. (license (list license:x11 ; only install-sh
  2406. license:expat)))) ; everything else
  2407. (define-public xf86-input-joystick
  2408. (package
  2409. (name "xf86-input-joystick")
  2410. (version "1.6.3")
  2411. (source
  2412. (origin
  2413. (method url-fetch)
  2414. (uri (string-append
  2415. "mirror://xorg/individual/driver/xf86-input-joystick-"
  2416. version
  2417. ".tar.bz2"))
  2418. (sha256
  2419. (base32
  2420. "1awfq496d082brgjbr60lhm6jvr9537rflwxqdfqwfzjy3n6jxly"))))
  2421. (build-system gnu-build-system)
  2422. (inputs `(("xorg-server" ,xorg-server)))
  2423. (native-inputs `(("pkg-config" ,pkg-config)))
  2424. (arguments
  2425. `(#:configure-flags
  2426. (list (string-append "--with-sdkdir="
  2427. (assoc-ref %outputs "out")
  2428. "/include/xorg"))))
  2429. (home-page "https://www.x.org/wiki/")
  2430. (synopsis "Joystick input driver for X server")
  2431. (description
  2432. "xf86-input-joystick is a joystick input driver for the Xorg X server.
  2433. It is used to control the pointer with a joystick device.")
  2434. (license license:x11)))
  2435. (define-public xf86-input-keyboard
  2436. (package
  2437. (name "xf86-input-keyboard")
  2438. (version "1.9.0")
  2439. (source
  2440. (origin
  2441. (method url-fetch)
  2442. (uri (string-append
  2443. "mirror://xorg/individual/driver/xf86-input-keyboard-"
  2444. version
  2445. ".tar.bz2"))
  2446. (sha256
  2447. (base32
  2448. "12032yg412kyvnmc5fha1in7mpi651d8sa1bk4138s2j2zr01jgp"))))
  2449. (build-system gnu-build-system)
  2450. (inputs `(("xorg-server" ,xorg-server)))
  2451. (native-inputs `(("pkg-config" ,pkg-config)))
  2452. (home-page "https://www.x.org/wiki/")
  2453. (synopsis "Keyboard input driver for X server")
  2454. (description
  2455. "xf86-input-keyboard is a keyboard input driver for the Xorg X server.")
  2456. (license license:x11)))
  2457. (define-public xf86-input-mouse
  2458. (package
  2459. (name "xf86-input-mouse")
  2460. (version "1.9.3")
  2461. (source
  2462. (origin
  2463. (method url-fetch)
  2464. (uri (string-append
  2465. "mirror://xorg/individual/driver/xf86-input-mouse-"
  2466. version
  2467. ".tar.bz2"))
  2468. (sha256
  2469. (base32
  2470. "1iawr1wyl2qch1mqszcs0s84i92mh4xxprflnycbw1adc18b7v4k"))))
  2471. (build-system gnu-build-system)
  2472. (inputs `(("xorg-server" ,xorg-server)))
  2473. (native-inputs `(("pkg-config" ,pkg-config)))
  2474. (arguments
  2475. `(#:configure-flags
  2476. (list (string-append "--with-sdkdir="
  2477. (assoc-ref %outputs "out")
  2478. "/include/xorg"))))
  2479. (home-page "https://www.x.org/wiki/")
  2480. (synopsis "Mouse input driver for X server")
  2481. (description
  2482. "xf86-input-mouse is a mouse input driver for the Xorg X server.
  2483. This driver supports four classes of mice: serial, bus and PS/2 mice,
  2484. and additional mouse types supported by specific operating systems, such
  2485. as USB mice.")
  2486. (license license:x11)))
  2487. (define-public xf86-input-synaptics
  2488. (package
  2489. (name "xf86-input-synaptics")
  2490. (version "1.9.1")
  2491. (source
  2492. (origin
  2493. (method url-fetch)
  2494. (uri (string-append
  2495. "mirror://xorg/individual/driver/xf86-input-synaptics-"
  2496. version
  2497. ".tar.bz2"))
  2498. (sha256
  2499. (base32
  2500. "0xhm03qywwfgkpfl904d08lx00y28m1b6lqmks5nxizixwk3by3s"))))
  2501. (build-system gnu-build-system)
  2502. (inputs `(("libx11" ,libx11)
  2503. ("libxi" ,libxi)
  2504. ("libevdev" ,libevdev)
  2505. ("mtdev" ,mtdev)
  2506. ("xorg-server" ,xorg-server)))
  2507. (native-inputs `(("pkg-config" ,pkg-config)))
  2508. (arguments
  2509. `(#:configure-flags
  2510. (list (string-append "--with-sdkdir="
  2511. (assoc-ref %outputs "out")
  2512. "/include/xorg")
  2513. (string-append "--with-xorg-conf-dir="
  2514. (assoc-ref %outputs "out")
  2515. "/share/X11/xorg.conf.d"))))
  2516. (home-page "https://www.x.org/wiki/")
  2517. (synopsis "Touchpad input driver for X server")
  2518. (description
  2519. "xf86-input-synaptics is a touchpad driver for the Xorg X server.")
  2520. (license license:x11)))
  2521. (define-public xf86-input-void
  2522. (package
  2523. (name "xf86-input-void")
  2524. (version "1.4.1")
  2525. (source
  2526. (origin
  2527. (method url-fetch)
  2528. (uri (string-append
  2529. "mirror://xorg/individual/driver/xf86-input-void-"
  2530. version
  2531. ".tar.bz2"))
  2532. (sha256
  2533. (base32
  2534. "171k8b8s42s3w73l7ln9jqwk88w4l7r1km2blx1vy898c854yvpr"))))
  2535. (build-system gnu-build-system)
  2536. (inputs `(("xorg-server" ,xorg-server)))
  2537. (native-inputs `(("pkg-config" ,pkg-config)))
  2538. (home-page "https://www.x.org/wiki/")
  2539. (synopsis "Void (null) input driver for X server")
  2540. (description
  2541. "xf86-input-void is a null input driver for the Xorg X server.")
  2542. (license license:x11)))
  2543. (define-public xf86-video-amdgpu
  2544. (package
  2545. (name "xf86-video-amdgpu")
  2546. (version "21.0.0")
  2547. (source
  2548. (origin
  2549. (method url-fetch)
  2550. (uri (string-append "mirror://xorg/individual/driver/"
  2551. "xf86-video-amdgpu-" version ".tar.bz2"))
  2552. (sha256
  2553. (base32 "125dq85n46yqmnmr2hknxwcqicwlvz2b2phf0m963fpg9l1j6y30"))))
  2554. (build-system gnu-build-system)
  2555. (inputs `(("xorg-server" ,xorg-server)))
  2556. (native-inputs `(("pkg-config" ,pkg-config)))
  2557. (home-page "https://www.x.org/wiki/")
  2558. (synopsis "AMD Radeon video driver for X server")
  2559. (description
  2560. "xf86-video-amdgpu is an AMD Radeon video driver for the Xorg
  2561. X server.")
  2562. (license license:x11)))
  2563. (define-public xf86-video-ark
  2564. (package
  2565. (name "xf86-video-ark")
  2566. (version "0.7.5")
  2567. (source
  2568. (origin
  2569. (method url-fetch)
  2570. (uri (string-append
  2571. "mirror://xorg/individual/driver/xf86-video-ark-"
  2572. version
  2573. ".tar.bz2"))
  2574. (sha256
  2575. (base32
  2576. "07p5vdsj2ckxb6wh02s61akcv4qfg6s1d5ld3jn3lfaayd3f1466"))
  2577. (patches (search-patches "xf86-video-ark-remove-mibstore.patch"))))
  2578. (build-system gnu-build-system)
  2579. (inputs `(("xorg-server" ,xorg-server)))
  2580. (native-inputs `(("pkg-config" ,pkg-config)))
  2581. (home-page "https://www.x.org/wiki/")
  2582. (synopsis "Ark Logic video driver for X server")
  2583. (description
  2584. "xf86-video-ark is an Ark Logic video driver for the Xorg X server.")
  2585. (license license:x11)))
  2586. (define-public xf86-video-ast
  2587. (package
  2588. (name "xf86-video-ast")
  2589. (version "1.1.5")
  2590. (home-page "https://cgit.freedesktop.org/xorg/driver/xf86-video-ast/")
  2591. (source (origin
  2592. (method url-fetch)
  2593. (uri (string-append
  2594. "mirror://xorg/individual/driver/xf86-video-ast-"
  2595. version ".tar.bz2"))
  2596. (sha256
  2597. (base32
  2598. "1pm2cy81ma7ldsw0yfk28b33h9z2hcj5rccrxhfxfgvxsiavrnqy"))))
  2599. (build-system gnu-build-system)
  2600. (inputs `(("xorg-server" ,xorg-server)))
  2601. (native-inputs `(("pkg-config" ,pkg-config)))
  2602. (synopsis "ASpeed Technologies video driver for X server")
  2603. (description
  2604. "xf86-video-ast is an ASpeed Technologies video driver for the Xorg
  2605. X server.")
  2606. (license license:x11)))
  2607. (define-public xf86-video-ati
  2608. ;; The current release is too old to build with our inputs.
  2609. (let ((commit "5eba006e4129e8015b822f9e1d2f1e613e252cda")
  2610. (revision "1"))
  2611. (package
  2612. (name "xf86-video-ati")
  2613. (version (git-version "19.1.0" revision commit))
  2614. (source
  2615. (origin
  2616. (method git-fetch)
  2617. (uri (git-reference
  2618. (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati.git")
  2619. (commit commit)))
  2620. (file-name (git-file-name name version))
  2621. (sha256
  2622. (base32 "1n49wx0v13jh8vv17sxgrmmpi1mk3n2wph07jfmxmzqahpcn4lkn"))))
  2623. (build-system gnu-build-system)
  2624. (inputs `(("mesa" ,mesa)
  2625. ("xorgproto" ,xorgproto)
  2626. ("xorg-server" ,xorg-server)))
  2627. (native-inputs
  2628. `(("pkg-config" ,pkg-config)
  2629. ("autoconf" ,autoconf)
  2630. ("automake" ,automake)
  2631. ("libtool" ,libtool)))
  2632. (home-page "https://www.x.org/wiki/")
  2633. (synopsis "ATI Radeon video driver for X server")
  2634. (description
  2635. "xf86-video-ati is an ATI Radeon video driver for the Xorg
  2636. X server.")
  2637. (license license:x11))))
  2638. (define-public xf86-video-cirrus
  2639. (package
  2640. (name "xf86-video-cirrus")
  2641. (version "1.5.3")
  2642. (source
  2643. (origin
  2644. (method url-fetch)
  2645. (uri (string-append
  2646. "mirror://xorg/individual/driver/xf86-video-cirrus-"
  2647. version
  2648. ".tar.bz2"))
  2649. (sha256
  2650. (base32
  2651. "1asifc6ld2g9kap15vfhvsvyl69lj7pw3d9ra9mi4najllh7pj7d"))))
  2652. (build-system gnu-build-system)
  2653. (inputs `(("xorg-server" ,xorg-server)))
  2654. (native-inputs `(("pkg-config" ,pkg-config)))
  2655. (home-page "https://www.x.org/wiki/")
  2656. (synopsis "Cirrus Logic video driver for X server")
  2657. (description
  2658. "xf86-video-cirrus is a Cirrus Logic video driver for the Xorg
  2659. X server.")
  2660. (license license:x11)))
  2661. (define-public xf86-video-dummy
  2662. (package
  2663. (name "xf86-video-dummy")
  2664. (version "0.3.8")
  2665. (source
  2666. (origin
  2667. (method url-fetch)
  2668. (uri (string-append "mirror://xorg/individual/driver/"
  2669. "xf86-video-dummy-" version ".tar.bz2"))
  2670. (sha256
  2671. (base32 "1fcm9vwgv8wnffbvkzddk4yxrh3kc0np6w65wj8k88q7jf3bn4ip"))))
  2672. (build-system gnu-build-system)
  2673. (inputs `(("xorg-server" ,xorg-server)))
  2674. (native-inputs `(("pkg-config" ,pkg-config)))
  2675. (home-page "https://www.x.org/wiki/")
  2676. (synopsis "Dummy video driver for X server")
  2677. (description
  2678. "Virtual/offscreen frame buffer driver for the Xorg X server.")
  2679. ;; per https://lists.freedesktop.org/archives/xorg/2020-June/060316.html
  2680. (license license:x11)))
  2681. (define-public xf86-video-fbdev
  2682. (package
  2683. (name "xf86-video-fbdev")
  2684. (version "0.5.0")
  2685. (source
  2686. (origin
  2687. (method url-fetch)
  2688. (uri (string-append
  2689. "mirror://xorg/individual/driver/xf86-video-fbdev-"
  2690. version
  2691. ".tar.bz2"))
  2692. (sha256
  2693. (base32
  2694. "16a66zr0l1lmssa07i3rzy07djxnb45c17ks8c71h8l06xgxihyw"))))
  2695. (build-system gnu-build-system)
  2696. (inputs `(("xorg-server" ,xorg-server)))
  2697. (native-inputs `(("pkg-config" ,pkg-config)))
  2698. (home-page "https://www.x.org/wiki/")
  2699. (synopsis "Framebuffer device video driver for X server")
  2700. (description
  2701. "xf86-video-fbdev is a video driver for the Xorg X server for
  2702. framebuffer device.")
  2703. (license license:x11)))
  2704. (define-public xf86-video-freedreno
  2705. (let ((commit "ccba8f89995de7d5e1b216e580b789c4cda05035"))
  2706. (package
  2707. (name "xf86-video-freedreno")
  2708. (version (string-append "1.4.0-1-" (string-take commit 7)))
  2709. (source
  2710. (origin
  2711. ;; there's no current tarball
  2712. (method git-fetch)
  2713. (uri (git-reference
  2714. (url (string-append "https://anongit.freedesktop.org/git/xorg/"
  2715. "driver/xf86-video-freedreno.git"))
  2716. (commit commit)))
  2717. (sha256
  2718. (base32
  2719. "0bl9m1agi793lcddv94j8afzw1xc9w810q91mbq0n3dscbbcr9nh"))
  2720. (file-name (string-append name "-" version))))
  2721. (build-system gnu-build-system)
  2722. (inputs
  2723. `(("libdrm" ,libdrm)
  2724. ("mesa" ,mesa)
  2725. ("udev" ,eudev)
  2726. ("xorg-server" ,xorg-server)
  2727. ("zlib" ,zlib)))
  2728. (native-inputs
  2729. `(("pkg-config" ,pkg-config)
  2730. ("autoconf" ,autoconf)
  2731. ("automake" ,automake)
  2732. ("libtool" ,libtool)))
  2733. ;; This driver is only supported on ARM systems.
  2734. (supported-systems '("armhf-linux" "aarch64-linux"))
  2735. (arguments
  2736. `(#:configure-flags
  2737. (list (string-append "--with-xorg-conf-dir="
  2738. (assoc-ref %outputs "out")
  2739. "/share/X11/xorg.conf.d"))
  2740. #:phases
  2741. (modify-phases %standard-phases
  2742. (replace 'bootstrap
  2743. (lambda _
  2744. ;; autogen.sh calls configure unconditionally.
  2745. (invoke "autoreconf" "-vfi"))))))
  2746. (home-page "https://www.x.org/wiki/")
  2747. (synopsis "Adreno video driver for X server")
  2748. (description
  2749. "xf86-video-freedreno is a 2D graphics driver for the Xorg X server.
  2750. It supports a variety of Adreno graphics chipsets.")
  2751. (license license:x11))))
  2752. (define-public xf86-video-geode
  2753. (package
  2754. (name "xf86-video-geode")
  2755. (version "2.11.20")
  2756. (source
  2757. (origin
  2758. (method url-fetch)
  2759. (uri (string-append "mirror://xorg/individual/driver/xf86-video-geode-"
  2760. version ".tar.bz2"))
  2761. (sha256
  2762. (base32 "0r2dz0agg0k5wrqdbicji6mh6svzyl0xgqk76hpcfdlzn2zx15zl"))))
  2763. (build-system gnu-build-system)
  2764. (inputs `(("xorg-server" ,xorg-server)))
  2765. (native-inputs `(("pkg-config" ,pkg-config)))
  2766. (supported-systems
  2767. ;; This driver is only supported on i686 systems.
  2768. (filter (lambda (system) (string-prefix? "i686-" system))
  2769. %supported-systems))
  2770. (home-page "https://www.x.org/wiki/")
  2771. (synopsis "AMD Geode GX/LX video driver for X server")
  2772. (description
  2773. "xf86-video-geode is an Xorg X server video driver for the AMD
  2774. Geode GX and LX processors. The GX component supports both XAA and EXA
  2775. for graphics acceleration. The LX component supports EXA, including
  2776. compositing. Both support Xv overlay and dynamic rotation with XRandR.")
  2777. (license license:x11)))
  2778. ;; Driver for obsolete graphics cards, depends on libglide:
  2779. ;; http://sourceforge.net/projects/glide/ ,
  2780. ;; last updated in 2003, and which does not compile out of the box any more.
  2781. ;; (define-public xf86-video-glide
  2782. ;; (package
  2783. ;; (name "xf86-video-glide")
  2784. ;; (version "1.2.0")
  2785. ;; (source
  2786. ;; (origin
  2787. ;; (method url-fetch)
  2788. ;; (uri (string-append
  2789. ;; "mirror://xorg/X11R7.7/src/everything/xf86-video-glide-"
  2790. ;; version
  2791. ;; ".tar.bz2"))
  2792. ;; (sha256
  2793. ;; (base32
  2794. ;; "0byapm9mnpqk3wijfnnan3d22ii5cw6dmg4xn1625iiz89j5vs1l"))))
  2795. ;; (build-system gnu-build-system)
  2796. ;; (inputs `(("pkg-config" ,pkg-config)
  2797. ;; ("xorg-server" ,xorg-server)))
  2798. ;; (home-page "https://www.x.org/wiki/")
  2799. ;; (synopsis "Glide video driver for X server")
  2800. ;; (description
  2801. ;; "xf86-video-glide is a Glide video driver for the Xorg X server.")
  2802. ;; (license license:x11)))
  2803. (define-public xf86-video-glint
  2804. (package
  2805. (name "xf86-video-glint")
  2806. (version "1.2.9")
  2807. (source
  2808. (origin
  2809. (method url-fetch)
  2810. (uri (string-append
  2811. "mirror://xorg/individual/driver/xf86-video-glint-"
  2812. version
  2813. ".tar.bz2"))
  2814. (sha256
  2815. (base32
  2816. "1lkpspvrvrp9s539bhfdjfh4andaqyk63l6zjn8m3km95smk6a45"))))
  2817. (build-system gnu-build-system)
  2818. (inputs `(("xorgproto" ,xorgproto)
  2819. ("xorg-server" ,xorg-server)))
  2820. (native-inputs `(("pkg-config" ,pkg-config)))
  2821. (home-page "https://www.x.org/wiki/")
  2822. (synopsis "GLINT/Permedia video driver for X server")
  2823. (description
  2824. "xf86-video-glint is a GLINT/Permedia video driver for the Xorg
  2825. X server.")
  2826. (license license:x11)))
  2827. (define-public xf86-video-i128
  2828. (package
  2829. (name "xf86-video-i128")
  2830. (version "1.4.0")
  2831. (source
  2832. (origin
  2833. (method url-fetch)
  2834. (uri (string-append
  2835. "mirror://xorg/individual/driver/xf86-video-i128-"
  2836. version
  2837. ".tar.bz2"))
  2838. (sha256
  2839. (base32
  2840. "1snhpv1igrhifcls3r498kjd14ml6x2xvih7zk9xlsd1ymmhlb4g"))))
  2841. (build-system gnu-build-system)
  2842. (inputs `(("xorg-server" ,xorg-server)))
  2843. (native-inputs `(("pkg-config" ,pkg-config)))
  2844. (home-page "https://www.x.org/wiki/")
  2845. (synopsis "I128 video driver for X server")
  2846. (description
  2847. "xf86-video-i128 is an I128 (Imagine 128) video driver for the Xorg
  2848. X server.")
  2849. (license license:x11)))
  2850. (define-public xf86-video-intel
  2851. (let ((commit "31486f40f8e8f8923ca0799aea84b58799754564")
  2852. (revision "18"))
  2853. (package
  2854. (name "xf86-video-intel")
  2855. (version (git-version "2.99.917" revision commit))
  2856. (source
  2857. (origin
  2858. ;; there's no current tarball
  2859. (method git-fetch)
  2860. (uri (git-reference
  2861. (url "https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel.git")
  2862. (commit commit)))
  2863. (sha256
  2864. (base32
  2865. "0lv6vlx9gvp34pidmx4gxgb0qjf0km0gabbaxw141nnvj1azv94y"))
  2866. (file-name (git-file-name name version))))
  2867. (build-system gnu-build-system)
  2868. (inputs `(("mesa" ,mesa)
  2869. ("udev" ,eudev)
  2870. ("libx11" ,libx11)
  2871. ("libxfont" ,libxfont2)
  2872. ("xorg-server" ,xorg-server)))
  2873. (native-inputs
  2874. `(("pkg-config" ,pkg-config)
  2875. ("autoconf" ,autoconf)
  2876. ("automake" ,automake)
  2877. ("libtool" ,libtool)))
  2878. (supported-systems
  2879. ;; This driver is only supported on Intel systems.
  2880. (filter (lambda (system) (or (string-prefix? "i686-" system)
  2881. (string-prefix? "x86_64-" system)))
  2882. %supported-systems))
  2883. (arguments
  2884. '(#:configure-flags '("--with-default-accel=uxa")))
  2885. (home-page "https://www.x.org/wiki/")
  2886. (synopsis "Intel video driver for X server")
  2887. (description
  2888. "xf86-video-intel is a 2D graphics driver for the Xorg X server.
  2889. It supports a variety of Intel graphics chipsets.")
  2890. (license license:x11))))
  2891. (define-public xf86-video-mach64
  2892. (package
  2893. (name "xf86-video-mach64")
  2894. (version "6.9.6")
  2895. (source
  2896. (origin
  2897. (method url-fetch)
  2898. (uri (string-append
  2899. "mirror://xorg/individual/driver/xf86-video-mach64-"
  2900. version
  2901. ".tar.bz2"))
  2902. (sha256
  2903. (base32
  2904. "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"))
  2905. (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"))))
  2906. (build-system gnu-build-system)
  2907. (inputs `(("mesa" ,mesa)
  2908. ("xorgproto" ,xorgproto)
  2909. ("xorg-server" ,xorg-server)))
  2910. (native-inputs
  2911. `(("pkg-config" ,pkg-config)))
  2912. (home-page "https://www.x.org/wiki/")
  2913. (synopsis "Mach64 video driver for X server")
  2914. (description
  2915. "xf86-video-mach64 is a video driver for the Xorg X server.
  2916. This driver is intended for all ATI video adapters based on the Mach64
  2917. series or older chipsets, providing maximum video function within
  2918. hardware limitations. The driver is also intended to optionally provide
  2919. the same level of support for generic VGA or 8514/A adapters.")
  2920. (license license:x11)))
  2921. (define-public xf86-video-mga
  2922. (package
  2923. (name "xf86-video-mga")
  2924. (version "2.0.0")
  2925. (source
  2926. (origin
  2927. (method url-fetch)
  2928. (uri (string-append
  2929. "mirror://xorg/individual/driver/xf86-video-mga-"
  2930. version
  2931. ".tar.bz2"))
  2932. (sha256
  2933. (base32
  2934. "0yaxpgyyj9398nzzr5vnsfxcis76z46p9814yzj8179yl7hld296"))))
  2935. (build-system gnu-build-system)
  2936. (inputs `(("mesa" ,mesa)
  2937. ("xorgproto" ,xorgproto)
  2938. ("xorg-server" ,xorg-server)))
  2939. (native-inputs `(("pkg-config" ,pkg-config)))
  2940. (home-page "https://www.x.org/wiki/")
  2941. (synopsis "Matrox video driver for X server")
  2942. (description
  2943. "xf86-video-mga is a Matrox video driver for the Xorg X server.")
  2944. (license license:x11)))
  2945. (define-public xf86-video-neomagic
  2946. (package
  2947. (name "xf86-video-neomagic")
  2948. (version "1.3.0")
  2949. (source
  2950. (origin
  2951. (method url-fetch)
  2952. (uri (string-append
  2953. "mirror://xorg/individual/driver/xf86-video-neomagic-"
  2954. version
  2955. ".tar.bz2"))
  2956. (sha256
  2957. (base32
  2958. "0r4h673kw8fl7afc30anwbjlbhp82mg15fvaxf470xg7z983k0wk"))))
  2959. (build-system gnu-build-system)
  2960. (inputs `(("xorgproto" ,xorgproto)
  2961. ("xorg-server" ,xorg-server)))
  2962. (native-inputs `(("pkg-config" ,pkg-config)))
  2963. (home-page "https://www.x.org/wiki/")
  2964. (synopsis "NeoMagic video driver for X server")
  2965. (description
  2966. "xf86-video-neomagic is a NeoMagic video driver for the Xorg X server.")
  2967. (license license:x11)))
  2968. ;; This driver depends on XAA which has been removed from xorg-server.
  2969. ;; (define-public xf86-video-newport
  2970. ;; (package
  2971. ;; (name "xf86-video-newport")
  2972. ;; (version "0.2.4")
  2973. ;; (source
  2974. ;; (origin
  2975. ;; (method url-fetch)
  2976. ;; (uri (string-append
  2977. ;; "mirror://xorg/individual/driver/xf86-video-newport-"
  2978. ;; version
  2979. ;; ".tar.bz2"))
  2980. ;; (sha256
  2981. ;; (base32
  2982. ;; "1yafmp23jrfdmc094i6a4dsizapsc9v0pl65cpc8w1kvn7343k4i"))))
  2983. ;; (build-system gnu-build-system)
  2984. ;; (inputs `(("xorg-server" ,xorg-server)))
  2985. ;; (native-inputs `(("pkg-config" ,pkg-config)))
  2986. ;; (home-page "https://www.x.org/wiki/")
  2987. ;; (synopsis "Newport video driver for X server")
  2988. ;; (description
  2989. ;; "xf86-video-newport is an Xorg X server video driver for the SGI
  2990. ;; newport cards.")
  2991. ;; (license license:x11)))
  2992. (define-public xf86-video-nv
  2993. (package
  2994. (name "xf86-video-nv")
  2995. (version "2.1.21")
  2996. (source
  2997. (origin
  2998. (method url-fetch)
  2999. (uri (string-append
  3000. "mirror://xorg/individual/driver/xf86-video-nv-"
  3001. version
  3002. ".tar.bz2"))
  3003. (sha256
  3004. (base32
  3005. "0bdk3pc5y0n7p53q4gc2ff7bw16hy5hwdjjxkm5j3s7hdyg6960z"))))
  3006. (build-system gnu-build-system)
  3007. (inputs `(("xorg-server" ,xorg-server)))
  3008. (native-inputs `(("pkg-config" ,pkg-config)))
  3009. (home-page "https://www.x.org/wiki/")
  3010. (synopsis "NVIDIA video driver for X server")
  3011. (description
  3012. "This package contains Xorg support for the NVIDIA GeForce 8 series of
  3013. graphics processors.
  3014. There are a few caveats of which to be aware: the XVideo extension is not
  3015. supported, and the RENDER extension is not accelerated by this driver.")
  3016. (license license:x11)))
  3017. (define-public xf86-video-nouveau
  3018. (package
  3019. (name "xf86-video-nouveau")
  3020. (version "1.0.17")
  3021. (source
  3022. (origin
  3023. (method url-fetch)
  3024. (uri (string-append "mirror://xorg/individual/driver/xf86-video-nouveau-"
  3025. version ".tar.bz2"))
  3026. (sha256
  3027. (base32 "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"))))
  3028. (build-system gnu-build-system)
  3029. (inputs `(("xorg-server" ,xorg-server)))
  3030. (native-inputs `(("pkg-config" ,pkg-config)))
  3031. (home-page "https://nouveau.freedesktop.org")
  3032. (synopsis "NVIDIA video driver for X server")
  3033. (description
  3034. "This package provides modern, high-quality Xorg drivers for NVIDIA
  3035. graphics cards.")
  3036. (license license:x11)))
  3037. (define-public xf86-video-openchrome
  3038. (package
  3039. (name "xf86-video-openchrome")
  3040. (version "0.6.0")
  3041. (source
  3042. (origin
  3043. (method url-fetch)
  3044. (uri (string-append
  3045. "mirror://xorg/individual/driver/xf86-video-openchrome-"
  3046. version
  3047. ".tar.bz2"))
  3048. (sha256
  3049. (base32
  3050. "0x9gq3hw6k661k82ikd1y2kkk4dmgv310xr5q59dwn4k6z37aafs"))))
  3051. (build-system gnu-build-system)
  3052. (inputs `(("libx11" ,libx11)
  3053. ("libxext" ,libxext)
  3054. ("libxvmc" ,libxvmc)
  3055. ("mesa" ,mesa)
  3056. ("xorgproto" ,xorgproto)
  3057. ("xorg-server" ,xorg-server)))
  3058. (native-inputs
  3059. `(("pkg-config" ,pkg-config)))
  3060. (home-page "https://www.x.org/wiki/")
  3061. (synopsis "Openchrome video driver for X server")
  3062. (description
  3063. "xf86-video-openchrome is a video driver for the Xorg X server.
  3064. This driver is intended for VIA chipsets featuring the VIA UniChrome,
  3065. UniChrome Pro and Chrome9 integrated graphics processors.")
  3066. (license license:x11)))
  3067. (define-public xf86-video-qxl
  3068. (package
  3069. (name "xf86-video-qxl")
  3070. (version "0.1.5")
  3071. (source (origin
  3072. (method url-fetch)
  3073. (uri (string-append
  3074. "mirror://xorg/individual/driver/"
  3075. "xf86-video-qxl-" version ".tar.bz2"))
  3076. (sha256
  3077. (base32
  3078. "14jc24znnahhmz4kqalafmllsg8awlz0y6gpgdpk5ih38ph851mi"))))
  3079. (build-system gnu-build-system)
  3080. (inputs
  3081. `(("libxfont" ,libxfont2)
  3082. ("spice-protocol" ,spice-protocol)
  3083. ("xorg-server" ,xorg-server)
  3084. ("xorgproto" ,xorgproto)))
  3085. (native-inputs
  3086. `(("pkg-config" ,pkg-config)))
  3087. (synopsis "Qxl video driver for X server")
  3088. (description "xf86-video-qxl is a video driver for the Xorg X server.
  3089. This driver is intended for the spice qxl virtio device.")
  3090. (home-page "http://www.spice-space.org")
  3091. (license license:x11)))
  3092. (define-public xf86-video-r128
  3093. (package
  3094. (name "xf86-video-r128")
  3095. (version "6.12.0")
  3096. (source (origin
  3097. (method url-fetch)
  3098. (uri (string-append "mirror://xorg/individual/driver/"
  3099. name "-" version ".tar.bz2"))
  3100. (sha256
  3101. (base32
  3102. "0mz0v5mqmmbncr2drd5zvia1fb7frz2xqwflhhqbnaxx5j48c740"))))
  3103. (build-system gnu-build-system)
  3104. (inputs `(("mesa" ,mesa)
  3105. ("xorgproto" ,xorgproto)
  3106. ("xorg-server" ,xorg-server)))
  3107. (native-inputs
  3108. `(("pkg-config" ,pkg-config)))
  3109. (home-page "https://www.x.org/wiki/")
  3110. (synopsis "ATI Rage 128 video driver for X server")
  3111. (description
  3112. "xf86-video-r128 is a video driver for the Xorg X server.
  3113. This driver is intended for ATI Rage 128 based cards.")
  3114. (license license:x11)))
  3115. (define-public xf86-video-savage
  3116. (package
  3117. (name "xf86-video-savage")
  3118. (version "2.3.9")
  3119. (source
  3120. (origin
  3121. (method url-fetch)
  3122. (uri (string-append
  3123. "mirror://xorg/individual/driver/xf86-video-savage-"
  3124. version
  3125. ".tar.bz2"))
  3126. (patches (search-patches "xf86-video-savage-xorg-compat.patch"))
  3127. (sha256
  3128. (base32
  3129. "11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc"))))
  3130. (build-system gnu-build-system)
  3131. (inputs `(("mesa" ,mesa)
  3132. ("xorgproto" ,xorgproto)
  3133. ("xorg-server" ,xorg-server)))
  3134. (native-inputs `(("pkg-config" ,pkg-config)))
  3135. (home-page "https://www.x.org/wiki/")
  3136. (synopsis "Savage video driver for X server")
  3137. (description
  3138. "xf86-video-savage is an S3 Savage video driver for the Xorg X server.")
  3139. (license license:x11)))
  3140. (define-public xf86-video-siliconmotion
  3141. (package
  3142. (name "xf86-video-siliconmotion")
  3143. (version "1.7.9")
  3144. (source
  3145. (origin
  3146. (method url-fetch)
  3147. (uri (string-append
  3148. "mirror://xorg/individual/driver/xf86-video-siliconmotion-"
  3149. version
  3150. ".tar.bz2"))
  3151. (sha256
  3152. (base32
  3153. "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh"))
  3154. (patches (search-patches "xf86-video-siliconmotion-fix-ftbfs.patch"))))
  3155. (build-system gnu-build-system)
  3156. (inputs `(("xorg-server" ,xorg-server)))
  3157. (native-inputs `(("pkg-config" ,pkg-config)))
  3158. (home-page "https://www.x.org/wiki/")
  3159. (synopsis "Silicon Motion video driver for X server")
  3160. (description
  3161. "xf86-video-siliconmotion is a Silicon Motion video driver for the
  3162. Xorg X server.")
  3163. (license license:x11)))
  3164. (define-public xf86-video-sis
  3165. (package
  3166. (name "xf86-video-sis")
  3167. (version "0.12.0")
  3168. (source
  3169. (origin
  3170. (method url-fetch)
  3171. (uri (string-append
  3172. "mirror://xorg/individual/driver/xf86-video-sis-"
  3173. version
  3174. ".tar.bz2"))
  3175. (sha256
  3176. (base32
  3177. "0nrs6cjldlhakx5987fiiggjrlzilsbdc7l9pz22x1iwslbkz78i"))))
  3178. (build-system gnu-build-system)
  3179. (inputs `(("mesa" ,mesa)
  3180. ("xorgproto" ,xorgproto)
  3181. ("xorg-server" ,xorg-server)))
  3182. (native-inputs
  3183. `(("pkg-config" ,pkg-config)))
  3184. (home-page "https://www.x.org/wiki/")
  3185. (synopsis "Sis video driver for X server")
  3186. (description
  3187. "xf86-video-SiS is a SiS video driver for the Xorg X server.
  3188. This driver supports SiS chipsets of 300/315/330/340 series.")
  3189. (license license:bsd-3)))
  3190. (define-public xf86-video-suncg6
  3191. (package
  3192. (name "xf86-video-suncg6")
  3193. (version "1.1.2")
  3194. (source
  3195. (origin
  3196. (method url-fetch)
  3197. (uri (string-append
  3198. "mirror://xorg/individual/driver/xf86-video-suncg6-"
  3199. version
  3200. ".tar.bz2"))
  3201. (sha256
  3202. (base32
  3203. "04fgwgk02m4nimlv67rrg1wnyahgymrn6rb2cjj1l8bmzkii4glr"))))
  3204. (build-system gnu-build-system)
  3205. (inputs `(("xorg-server" ,xorg-server)))
  3206. (native-inputs `(("pkg-config" ,pkg-config)))
  3207. (home-page "https://www.x.org/wiki/")
  3208. (synopsis "GX/TurboGX video driver for X server")
  3209. (description
  3210. "xf86-video-suncg6 is a GX/TurboGX video driver for the Xorg X server.")
  3211. (license license:x11)))
  3212. (define-public xf86-video-sunffb
  3213. (package
  3214. (name "xf86-video-sunffb")
  3215. (version "1.2.2")
  3216. (source
  3217. (origin
  3218. (method url-fetch)
  3219. (uri (string-append
  3220. "mirror://xorg/individual/driver/xf86-video-sunffb-"
  3221. version
  3222. ".tar.bz2"))
  3223. (sha256
  3224. (base32
  3225. "07z3ngifwg2d4jgq8pms47n5lr2yn0ai72g86xxjnb3k20n5ym7s"))))
  3226. (build-system gnu-build-system)
  3227. (inputs `(("xorg-server" ,xorg-server)))
  3228. (native-inputs `(("pkg-config" ,pkg-config)))
  3229. (home-page "https://www.x.org/wiki/")
  3230. (synopsis "SUNFFB video driver for X server")
  3231. (description
  3232. "xf86-video-sunffb is a SUNFFB video driver for the Xorg X server.")
  3233. (license license:x11)))
  3234. (define-public xf86-video-tdfx
  3235. (package
  3236. (name "xf86-video-tdfx")
  3237. (version "1.5.0")
  3238. (source
  3239. (origin
  3240. (method url-fetch)
  3241. (uri (string-append
  3242. "mirror://xorg/individual/driver/xf86-video-tdfx-"
  3243. version
  3244. ".tar.bz2"))
  3245. (sha256
  3246. (base32
  3247. "0qc5wzwf1n65si9rc37bh224pzahh7gp67vfimbxs0b9yvhq0i9g"))))
  3248. (build-system gnu-build-system)
  3249. (inputs `(("mesa" ,mesa)
  3250. ("xorgproto" ,xorgproto)
  3251. ("xorg-server" ,xorg-server)))
  3252. (native-inputs `(("pkg-config" ,pkg-config)))
  3253. (home-page "https://www.x.org/wiki/")
  3254. (synopsis "3Dfx video driver for X server")
  3255. (description
  3256. "xf86-video-tdfx is a 3Dfx video driver for the Xorg X server.")
  3257. (license license:x11)))
  3258. (define-public xf86-video-tga
  3259. (package
  3260. (name "xf86-video-tga")
  3261. (version "1.2.2")
  3262. (source
  3263. (origin
  3264. (method url-fetch)
  3265. (uri (string-append
  3266. "mirror://xorg/individual/driver/xf86-video-tga-"
  3267. version
  3268. ".tar.bz2"))
  3269. (sha256
  3270. (base32
  3271. "0cb161lvdgi6qnf1sfz722qn38q7kgakcvj7b45ba3i0020828r0"))
  3272. (patches (search-patches "xf86-video-tga-remove-mibstore.patch"))))
  3273. (build-system gnu-build-system)
  3274. (inputs `(("xorgproto" ,xorgproto)
  3275. ("xorg-server" ,xorg-server)))
  3276. (native-inputs `(("pkg-config" ,pkg-config)))
  3277. (home-page "https://www.x.org/wiki/")
  3278. (synopsis "TGA video driver for X server")
  3279. (description
  3280. "xf86-video-tga is a TGA (DEC 21030) video driver for the Xorg
  3281. X server.")
  3282. (license license:x11)))
  3283. (define-public xf86-video-trident
  3284. (package
  3285. (name "xf86-video-trident")
  3286. (version "1.3.8")
  3287. (source
  3288. (origin
  3289. (method url-fetch)
  3290. (uri (string-append
  3291. "mirror://xorg/individual/driver/xf86-video-trident-"
  3292. version
  3293. ".tar.bz2"))
  3294. (sha256
  3295. (base32
  3296. "0gxcar434kx813fxdpb93126lhmkl3ikabaljhcj5qn3fkcijlcy"))))
  3297. (build-system gnu-build-system)
  3298. (inputs `(("xorgproto" ,xorgproto)
  3299. ("xorg-server" ,xorg-server)))
  3300. (native-inputs `(("pkg-config" ,pkg-config)))
  3301. (home-page "https://www.x.org/wiki/")
  3302. (synopsis "Trident video driver for X server")
  3303. (description
  3304. "xf86-video-trident is a Trident video driver for the Xorg X server.")
  3305. (license license:x11)))
  3306. ;; no license
  3307. ;; (define-public xf86-video-v4l
  3308. (define-public xf86-video-vesa
  3309. (package
  3310. (name "xf86-video-vesa")
  3311. (version "2.5.0")
  3312. (source
  3313. (origin
  3314. (method url-fetch)
  3315. (uri (string-append
  3316. "mirror://xorg/individual/driver/xf86-video-vesa-"
  3317. version
  3318. ".tar.bz2"))
  3319. (sha256
  3320. (base32
  3321. "0nf6ai74c60xk96kgr8q9mx6lrxm5id3765ws4d801irqzrj85hz"))))
  3322. (build-system gnu-build-system)
  3323. (inputs `(("xorg-server" ,xorg-server)))
  3324. (native-inputs `(("pkg-config" ,pkg-config)))
  3325. (home-page "https://www.x.org/wiki/")
  3326. (synopsis "VESA video driver for X server")
  3327. (description
  3328. "xf86-video-vesa is a generic VESA video driver for the Xorg
  3329. X server.")
  3330. (license license:x11)))
  3331. (define-public v86d
  3332. (package
  3333. (name "v86d")
  3334. (version "0.1.10")
  3335. (source
  3336. (origin
  3337. (method git-fetch)
  3338. (uri (git-reference
  3339. (url "https://github.com/mjanusz/v86d")
  3340. (commit (string-append name "-" version))))
  3341. (file-name (git-file-name name version))
  3342. (sha256
  3343. (base32 "1c4iiggb5r9i2hxhk8c6q1m2vpfva39l1w33fsfkrz6fav6x34pp"))
  3344. (modules '((guix build utils)))
  3345. (snippet
  3346. '(begin
  3347. ;; remove bundled x86emu
  3348. (for-each delete-file
  3349. (filter (lambda (name) ;keep customized Makefile
  3350. (not (string-suffix? "Makefile" name)))
  3351. (find-files "libs/x86emu")))
  3352. ;; remove non-working vbetest utility program (it is unnecessary)
  3353. (delete-file "libs/lrmi-0.10/vbe.h")
  3354. (delete-file "libs/lrmi-0.10/vbetest.c")
  3355. #t))))
  3356. ;; We keep the bundled copy of the Linux Real Mode Interface lrmi-0.10,
  3357. ;; because it includes fixes missing from upstream lrmi. We do not use
  3358. ;; libx86, because we already use x86emu with the more current lrmi.
  3359. (inputs `(("xorg-server-sources" ,(package-source xorg-server)) ;for x86emu
  3360. ("xorgproto" ,xorgproto))) ;upstream x86emu uses X11/Xfuncproto.h
  3361. (outputs '("out" ;main v86d helper
  3362. "testvbe")) ;test program for listing video modes
  3363. (supported-systems '("i686-linux" "x86_64-linux"))
  3364. (build-system gnu-build-system)
  3365. (arguments
  3366. `(#:tests? #f ;there are no tests
  3367. #:modules ((guix build utils)
  3368. (guix build gnu-build-system)
  3369. (ice-9 popen))
  3370. #:phases
  3371. (modify-phases %standard-phases
  3372. ;; Replace the bundled x86emu with its upstream copy from Xorg-server:
  3373. (add-after 'unpack 'unpack-x86emu-sources
  3374. (lambda* (#:key inputs #:allow-other-keys)
  3375. (begin
  3376. (format #t "decompressing x86emu source code~%")
  3377. (with-directory-excursion "libs"
  3378. (let ((srcs (assoc-ref inputs "xorg-server-sources"))
  3379. (tar-binary (search-input-file inputs "/bin/tar")))
  3380. (invoke tar-binary "xvf" srcs "--strip-components=3"
  3381. "--wildcards" "*/hw/xfree86/x86emu/")
  3382. ;; extract license:
  3383. (with-directory-excursion "x86emu"
  3384. (invoke tar-binary "xvf" srcs "--strip-components=1"
  3385. "--wildcards" "*/COPYING"))
  3386. #t)))))
  3387. (replace 'configure
  3388. (lambda* (#:key outputs #:allow-other-keys)
  3389. (let ((out (assoc-ref outputs "out")))
  3390. (setenv "CC" (which "gcc"))
  3391. (setenv "DESTDIR" out)
  3392. (invoke "./configure" "--with-x86emu"))))
  3393. (add-after 'build 'build-testvbe
  3394. (lambda _
  3395. (invoke "make" "testvbe")))
  3396. (add-after 'install 'install-testvbe
  3397. (lambda* (#:key outputs #:allow-other-keys)
  3398. (let ((testvbe (assoc-ref outputs "testvbe"))
  3399. (olddest (getenv "DESTDIR")))
  3400. (setenv "DESTDIR" testvbe)
  3401. (invoke "make" "install_testvbe")
  3402. (setenv "DESTDIR" olddest)
  3403. #t)))
  3404. (add-after 'install 'install-docs
  3405. (lambda* (#:key outputs #:allow-other-keys)
  3406. (let* ((out (assoc-ref outputs "out"))
  3407. (doc-dir (string-append out "/share/doc/v86d")))
  3408. (mkdir-p doc-dir)
  3409. (copy-file "README"
  3410. (string-append doc-dir "/README"))
  3411. (copy-file "libs/lrmi-0.10/README"
  3412. (string-append doc-dir "/README.lrmi"))
  3413. (copy-file "libs/x86emu/COPYING"
  3414. (string-append doc-dir "/COPYING.xorg-server.x86emu"))
  3415. #t))))))
  3416. (home-page "https://github.com/mjanusz/v86d")
  3417. (synopsis "Userspace helper for uvesafb")
  3418. (description
  3419. "v86d provides a backend for kernel drivers that need to execute x86 BIOS
  3420. code. The code is executed in a controlled environment and the results are
  3421. passed back to the kernel via the netlink interface. v86d is required by the
  3422. uvesafb Linux kernel module that provides an fbdev framebuffer when Kernel
  3423. Mode Setting is unavailable. It can be a last resort when no other Xorg X
  3424. server driver works.")
  3425. (license (list license:gpl2
  3426. license:x11)))) ;for bundled lrmi and x86emu
  3427. (define-public xf86-video-vmware
  3428. (package
  3429. (name "xf86-video-vmware")
  3430. (version "13.3.0")
  3431. (source
  3432. (origin
  3433. (method url-fetch)
  3434. (uri (string-append
  3435. "mirror://xorg/individual/driver/xf86-video-vmware-"
  3436. version
  3437. ".tar.bz2"))
  3438. (sha256
  3439. (base32
  3440. "0v06qhm059klq40m2yx4wypzb7h53aaassbjfmm6clcyclj1k5s7"))))
  3441. (build-system gnu-build-system)
  3442. (inputs
  3443. `(("libx11" ,libx11)
  3444. ("libxext" ,libxext)
  3445. ("llvm" ,llvm)
  3446. ("mesa" ,mesa) ; for xatracker
  3447. ("xorg-server" ,xorg-server)))
  3448. (native-inputs
  3449. `(("eudev" ,eudev)
  3450. ("pkg-config" ,pkg-config)))
  3451. (home-page "https://www.x.org/wiki/")
  3452. (synopsis "VMware SVGA video driver for X server")
  3453. (description
  3454. "xf86-video-vmware is a VMware SVGA video driver for the Xorg X server.")
  3455. (license license:x11)))
  3456. (define-public xf86-video-voodoo
  3457. (package
  3458. (name "xf86-video-voodoo")
  3459. (version "1.2.5")
  3460. (source
  3461. (origin
  3462. (method url-fetch)
  3463. (uri (string-append
  3464. "mirror://xorg/individual/driver/xf86-video-voodoo-"
  3465. version
  3466. ".tar.bz2"))
  3467. (sha256
  3468. (base32
  3469. "1s6p7yxmi12q4y05va53rljwyzd6ry492r1pgi7wwq6cznivhgly"))
  3470. (patches
  3471. (search-patches "xf86-video-voodoo-pcitag.patch"))))
  3472. (build-system gnu-build-system)
  3473. (inputs `(("xorgproto" ,xorgproto)
  3474. ("xorg-server" ,xorg-server)))
  3475. (native-inputs `(("pkg-config" ,pkg-config)))
  3476. (home-page "https://www.x.org/wiki/")
  3477. (synopsis "Voodoo/Voodoo2 video driver for X server")
  3478. (description
  3479. "xf86-video-voodoo is a Voodoo video driver for the Xorg X server.")
  3480. (license license:x11)))
  3481. ;; Only relevant for the frame buffer on BSD systems.
  3482. ;; (define-public xf86-video-wsfb
  3483. (define-public xf86bigfontproto
  3484. (package
  3485. (name "xf86bigfontproto")
  3486. (version "1.2.0")
  3487. (source
  3488. (origin
  3489. (method url-fetch)
  3490. (uri (string-append
  3491. "mirror://xorg/individual/proto/xf86bigfontproto-"
  3492. version
  3493. ".tar.bz2"))
  3494. (sha256
  3495. (base32
  3496. "0j0n7sj5xfjpmmgx6n5x556rw21hdd18fwmavp95wps7qki214ms"))))
  3497. (build-system gnu-build-system)
  3498. (home-page "https://www.x.org/wiki/")
  3499. (synopsis "Xorg XF86BigFontProto protocol headers")
  3500. (description
  3501. "XFree86 Bigfont Extension contains header files and documentation
  3502. for the XF86BigFontProto protocol.")
  3503. (license license:x11)
  3504. (properties `((superseded . ,xorgproto)))))
  3505. (define-public xf86dgaproto
  3506. (package
  3507. (name "xf86dgaproto")
  3508. (version "2.1")
  3509. (source
  3510. (origin
  3511. (method url-fetch)
  3512. (uri (string-append
  3513. "mirror://xorg/individual/proto/xf86dgaproto-"
  3514. version
  3515. ".tar.bz2"))
  3516. (sha256
  3517. (base32
  3518. "0l4hx48207mx0hp09026r6gy9nl3asbq0c75hri19wp1118zcpmc"))))
  3519. (build-system gnu-build-system)
  3520. (home-page "https://www.x.org/wiki/")
  3521. (synopsis "Xorg XF86DGAProto protocol headers")
  3522. (description
  3523. "XFree86 Direct Graphic Access Extension defines a protocol for
  3524. direct linear framebuffer access.")
  3525. (license license:x11)
  3526. (properties `((superseded . ,xorgproto)))))
  3527. (define-public xf86driproto
  3528. (package
  3529. (name "xf86driproto")
  3530. (version "2.1.1")
  3531. (source
  3532. (origin
  3533. (method url-fetch)
  3534. (uri (string-append
  3535. "mirror://xorg/individual/proto/xf86driproto-"
  3536. version
  3537. ".tar.bz2"))
  3538. (sha256
  3539. (base32
  3540. "07v69m0g2dfzb653jni4x656jlr7l84c1k39j8qc8vfb45r8sjww"))))
  3541. (build-system gnu-build-system)
  3542. (home-page "https://www.x.org/wiki/")
  3543. (synopsis "Xorg XF86DRIProto protocol headers")
  3544. (description
  3545. "XFree86 Direct Rendering Infrastructure Extension defines a
  3546. protocol to allow user applications to access the video hardware without
  3547. requiring data to be passed through the X server.")
  3548. (license license:x11)
  3549. (properties `((superseded . ,xorgproto)))))
  3550. (define-public xf86vidmodeproto
  3551. (package
  3552. (name "xf86vidmodeproto")
  3553. (version "2.3.1")
  3554. (source
  3555. (origin
  3556. (method url-fetch)
  3557. (uri (string-append
  3558. "mirror://xorg/individual/proto/xf86vidmodeproto-"
  3559. version
  3560. ".tar.bz2"))
  3561. (sha256
  3562. (base32
  3563. "0w47d7gfa8zizh2bshdr2rffvbr4jqjv019mdgyh6cmplyd4kna5"))))
  3564. (build-system gnu-build-system)
  3565. (home-page "https://www.x.org/wiki/")
  3566. (synopsis "Xorg XF86VidModeProto protocol headers")
  3567. (description
  3568. "XFree86 Video Mode Extension defines a protocol for dynamically
  3569. configuring modelines and gamma.")
  3570. (license license:x11)
  3571. (properties `((superseded . ,xorgproto)))))
  3572. (define-public xgamma
  3573. (package
  3574. (name "xgamma")
  3575. (version "1.0.6")
  3576. (source
  3577. (origin
  3578. (method url-fetch)
  3579. (uri (string-append
  3580. "mirror://xorg/individual/app/xgamma-"
  3581. version
  3582. ".tar.bz2"))
  3583. (sha256
  3584. (base32
  3585. "1lr2nb1fhg5fk2fchqxdxyl739602ggwhmgl2wiv5c8qbidw7w8f"))))
  3586. (build-system gnu-build-system)
  3587. (inputs
  3588. `(("libxxf86vm" ,libxxf86vm)
  3589. ("libx11" ,libx11)))
  3590. (native-inputs
  3591. `(("pkg-config" ,pkg-config)))
  3592. (home-page "https://www.x.org/wiki/")
  3593. (synopsis "Alter a monitor's gamma correction")
  3594. (description
  3595. "XGamma is used to query and alter the gamma correction of a
  3596. monitor via the X video mode extension.")
  3597. (license license:x11)))
  3598. (define-public xhost
  3599. (package
  3600. (name "xhost")
  3601. (version "1.0.8")
  3602. (source
  3603. (origin
  3604. (method url-fetch)
  3605. (uri (string-append
  3606. "mirror://xorg/individual/app/xhost-"
  3607. version
  3608. ".tar.bz2"))
  3609. (sha256
  3610. (base32
  3611. "15n3mnd4i5kh4z32qv11580qjgvnng0wry2y753ljrqkkrbkrp52"))))
  3612. (build-system gnu-build-system)
  3613. (inputs
  3614. `(("libxmu" ,libxmu)
  3615. ("libxau" ,libxau)
  3616. ("libx11" ,libx11)))
  3617. (native-inputs
  3618. `(("pkg-config" ,pkg-config)))
  3619. (home-page "https://gitlab.freedesktop.org/xorg/app/xhost")
  3620. (synopsis "Xorg server access control utility")
  3621. (description
  3622. "XHost is used to manage the list of host names or user names
  3623. allowed to make connections to the X server.")
  3624. (license license:x11)))
  3625. (define-public xineramaproto
  3626. (package
  3627. (name "xineramaproto")
  3628. (version "1.2.1")
  3629. (source
  3630. (origin
  3631. (method url-fetch)
  3632. (uri (string-append
  3633. "mirror://xorg/individual/proto/xineramaproto-"
  3634. version
  3635. ".tar.bz2"))
  3636. (sha256
  3637. (base32
  3638. "0ns8abd27x7gbp4r44z3wc5k9zqxxj8zjnazqpcyr4n17nxp8xcp"))))
  3639. (build-system gnu-build-system)
  3640. (native-inputs `(("pkg-config" ,pkg-config)))
  3641. (home-page "https://www.x.org/wiki/")
  3642. (synopsis "Xorg XineramaProto protocol headers")
  3643. (description
  3644. "Xinerama Extension allows clients to query information about multiple
  3645. physical screens controlled by a single X server that appear as a single
  3646. screen to core X11 protocol operations.
  3647. This extension provides a common network protocol for querying information
  3648. which may be provided by different underlying screen combination
  3649. technologies in the X server, such as the original Xinerama multiplexer, or
  3650. alternative implementations like XRandR or TwinView.")
  3651. (license license:x11)
  3652. (properties `((superseded . ,xorgproto)))))
  3653. (define-public xinput
  3654. (package
  3655. (name "xinput")
  3656. (version "1.6.3")
  3657. (source
  3658. (origin
  3659. (method url-fetch)
  3660. (uri (string-append
  3661. "mirror://xorg/individual/app/xinput-"
  3662. version
  3663. ".tar.bz2"))
  3664. (sha256
  3665. (base32
  3666. "1vb6xdd1xmk5f7pwc5zcbxfray5sf1vbnscqwf2yl8lv7gfq38im"))))
  3667. (build-system gnu-build-system)
  3668. (inputs
  3669. `(("libxrender" ,libxrender)
  3670. ("libxrandr" ,libxrandr)
  3671. ("libxinerama" ,libxinerama)
  3672. ("libxext" ,libxext)
  3673. ("libxi" ,libxi)
  3674. ("libx11" ,libx11)
  3675. ("xorgproto" ,xorgproto)))
  3676. (native-inputs
  3677. `(("pkg-config" ,pkg-config)))
  3678. (home-page "https://www.x.org/wiki/")
  3679. (synopsis "Configure input devices for X server")
  3680. (description
  3681. "XInput is used to configure and test XInput devices.")
  3682. (license license:x11)))
  3683. (define-public xkbcomp-intermediate ;used as input for xkeyboard-config
  3684. (package
  3685. (name "xkbcomp-intermediate")
  3686. (version "1.4.5")
  3687. (source
  3688. (origin
  3689. (method url-fetch)
  3690. (uri (string-append "mirror://xorg/individual/app/xkbcomp-"
  3691. version ".tar.bz2"))
  3692. (sha256
  3693. (base32
  3694. "0pmhshqinwqh5rip670l3szjpywky67hv232ql6gvdj489n0hlb8"))))
  3695. (build-system gnu-build-system)
  3696. (inputs
  3697. `(("xorgproto" ,xorgproto)
  3698. ("libxkbfile" ,libxkbfile)
  3699. ("libx11" ,libx11)))
  3700. (native-inputs
  3701. `(("pkg-config" ,pkg-config)))
  3702. (home-page "https://www.x.org/wiki/")
  3703. (synopsis "Compile XKB keyboard description")
  3704. (description
  3705. "xkbcomp keymap compiler converts a description of an XKB keymap
  3706. into one of several output formats. The most common use for xkbcomp is
  3707. to create a compiled keymap file (.xkm extension) which can be read
  3708. directly by XKB- capable X servers or utilities.
  3709. X Keyboard (XKB) Extension essentially replaces the core protocol
  3710. definition of keyboard. The extension makes possible to clearly and
  3711. explicitly specify most aspects of keyboard behaviour on per-key basis
  3712. and to more closely track the logical and physical state of the
  3713. keyboard. It also includes a number of keyboard controls designed to
  3714. make keyboards more accessible to people with physical impairments.")
  3715. (license license:x11)
  3716. ;; The only reason this package is public is to make sure it's built and
  3717. ;; published by the continuous integration tool.
  3718. (properties '((hidden? . #t)))))
  3719. (define-public xkbcomp ; using xkeyboard-config as input
  3720. (package (inherit xkbcomp-intermediate)
  3721. (name "xkbcomp")
  3722. (properties '())
  3723. (inputs
  3724. `(,@(package-inputs xkbcomp-intermediate)
  3725. ("xkeyboard-config" ,xkeyboard-config)))
  3726. (arguments
  3727. `(#:configure-flags
  3728. (list (string-append "--with-xkb-config-root="
  3729. (assoc-ref %build-inputs "xkeyboard-config")
  3730. "/share/X11/xkb"))))))
  3731. (define-public xkbevd
  3732. (package
  3733. (name "xkbevd")
  3734. (version "1.1.4")
  3735. (source
  3736. (origin
  3737. (method url-fetch)
  3738. (uri (string-append
  3739. "mirror://xorg/individual/app/xkbevd-"
  3740. version
  3741. ".tar.bz2"))
  3742. (sha256
  3743. (base32
  3744. "0sprjx8i86ljk0l7ldzbz2xlk8916z5zh78cafjv8k1a63js4c14"))))
  3745. (build-system gnu-build-system)
  3746. (inputs
  3747. `(("libxkbfile" ,libxkbfile)
  3748. ("libx11" ,libx11)))
  3749. (native-inputs
  3750. `(("pkg-config" ,pkg-config)))
  3751. (home-page "https://www.x.org/wiki/")
  3752. (synopsis "XKB event daemon demo")
  3753. (description
  3754. "XKB event daemon listens for the specified XKB events and executes
  3755. requested commands if they occur.")
  3756. (license license:x11)))
  3757. (define-public xkbprint
  3758. (package
  3759. (name "xkbprint")
  3760. (version "1.0.5")
  3761. (source
  3762. (origin
  3763. (method url-fetch)
  3764. (uri (string-append "mirror://xorg/individual/app/"
  3765. "xkbprint-" version ".tar.bz2"))
  3766. (sha256
  3767. (base32 "1yi3232g25hhp241irncd8znv3090k2gm0yjcdnz08h89y1zwn2v"))))
  3768. (build-system gnu-build-system)
  3769. (inputs
  3770. `(("libx11" ,libx11)
  3771. ("libxkbfile" ,libxkbfile)
  3772. ("xorgproto" ,xorgproto)))
  3773. (native-inputs
  3774. `(("pkg-config" ,pkg-config)))
  3775. (home-page "https://www.x.org/wiki/")
  3776. (synopsis "Visualise an XKB keyboard layout description")
  3777. (description
  3778. "The @command{xkbprint} utility visualises (``prints'') an XKB keyboard
  3779. description as printable or encapsulated PostScript. It accepts any compiled
  3780. keymap (@file{.xkm}) file that includes a geometry description, or can obtain
  3781. one from a running X server.")
  3782. (license license:x11)))
  3783. (define-public xkbutils
  3784. (package
  3785. (name "xkbutils")
  3786. (version "1.0.4")
  3787. (source
  3788. (origin
  3789. (method url-fetch)
  3790. (uri (string-append
  3791. "mirror://xorg/individual/app/xkbutils-"
  3792. version
  3793. ".tar.bz2"))
  3794. (sha256
  3795. (base32
  3796. "0c412isxl65wplhl7nsk12vxlri29lk48g3p52hbrs3m0awqm8fj"))))
  3797. (build-system gnu-build-system)
  3798. (inputs
  3799. `(("libxt" ,libxt)
  3800. ("libxaw" ,libxaw)
  3801. ("xorgproto" ,xorgproto)))
  3802. (native-inputs
  3803. `(("pkg-config" ,pkg-config)))
  3804. (home-page "https://www.x.org/wiki/")
  3805. (synopsis "XKB utilities")
  3806. (description
  3807. "XKBUtils is a collection of small utilities for X Keyboard (XKB)
  3808. extension to the X11 protocol. It includes:
  3809. - xkbbell: generate XKB bell events;
  3810. - xkbvleds: display the state of LEDs on an XKB keyboard in a window;
  3811. - xkbwatch: reports changes in the XKB keyboard state.")
  3812. (license license:x11)))
  3813. (define-public xkeyboard-config
  3814. (package
  3815. (name "xkeyboard-config")
  3816. (version "2.33")
  3817. (source
  3818. (origin
  3819. (method url-fetch)
  3820. (uri (string-append
  3821. "mirror://xorg/individual/data/xkeyboard-config/xkeyboard-config-"
  3822. version
  3823. ".tar.bz2"))
  3824. (sha256
  3825. (base32
  3826. "1g6kn7l0mixw50kgn7d97gwv1990c5rczr2x776q3xywss8dfzv5"))))
  3827. (build-system gnu-build-system)
  3828. (inputs
  3829. `(("libx11" ,libx11)
  3830. ("xkbcomp-intermediate" ,xkbcomp-intermediate)))
  3831. (native-inputs
  3832. `(("gettext" ,gettext-minimal)
  3833. ("perl" ,perl)
  3834. ("pkg-config" ,pkg-config)
  3835. ("python" ,python)))
  3836. (home-page "https://www.x.org/wiki/")
  3837. (synopsis "Xorg XKB configuration files")
  3838. (description
  3839. "xkeyboard-config provides a database for X Keyboard (XKB) Extension.
  3840. There are five components that define a complete keyboard mapping:
  3841. symbols, geometry, keycodes, compat, and types; these five components
  3842. can be combined together using the @code{rules} component of this database.")
  3843. (license license:x11)))
  3844. (define-public xkill
  3845. (package
  3846. (name "xkill")
  3847. (version "1.0.5")
  3848. (source
  3849. (origin
  3850. (method url-fetch)
  3851. (uri (string-append
  3852. "mirror://xorg/individual/app/xkill-"
  3853. version
  3854. ".tar.bz2"))
  3855. (sha256
  3856. (base32
  3857. "0szzd9nzn0ybkhnfyizb876irwnjsnb78rcaxx6prb71jmmbpw65"))))
  3858. (build-system gnu-build-system)
  3859. (inputs
  3860. `(("libxmu" ,libxmu)
  3861. ("libx11" ,libx11)))
  3862. (native-inputs
  3863. `(("pkg-config" ,pkg-config)))
  3864. (home-page "https://www.x.org/wiki/")
  3865. (synopsis "Kill a client by its X resource")
  3866. (description
  3867. "XKill is used to force the X server to close connections to
  3868. clients. This program is very dangerous, but is useful for aborting
  3869. programs that have displayed undesired windows on a user's screen.")
  3870. (license license:x11)))
  3871. (define-public xlsatoms
  3872. (package
  3873. (name "xlsatoms")
  3874. (version "1.1.3")
  3875. (source
  3876. (origin
  3877. (method url-fetch)
  3878. (uri (string-append
  3879. "mirror://xorg/individual/app/xlsatoms-"
  3880. version
  3881. ".tar.bz2"))
  3882. (sha256
  3883. (base32
  3884. "10m3a046jvaw5ywx4y65kl84lsxqan70gww1g1r7cf96ijaqz1jp"))))
  3885. (build-system gnu-build-system)
  3886. (inputs
  3887. `(("libxcb" ,libxcb)))
  3888. (native-inputs
  3889. `(("pkg-config" ,pkg-config)))
  3890. (home-page "https://gitlab.freedesktop.org/xorg/app/xlsatoms")
  3891. (synopsis "List interned X server atoms")
  3892. (description
  3893. "XLsAtoms is used to list the interned atoms defined on X server.")
  3894. (license license:x11)))
  3895. (define-public xlsclients
  3896. (package
  3897. (name "xlsclients")
  3898. (version "1.1.4")
  3899. (source
  3900. (origin
  3901. (method url-fetch)
  3902. (uri (string-append
  3903. "mirror://xorg/individual/app/xlsclients-"
  3904. version
  3905. ".tar.bz2"))
  3906. (sha256
  3907. (base32
  3908. "1h8931sn34mcip6vpi4v7hdmr1r58gkbw4s2p97w98kykks2lgvp"))))
  3909. (build-system gnu-build-system)
  3910. (inputs
  3911. `(("libxcb" ,libxcb)))
  3912. (native-inputs
  3913. `(("pkg-config" ,pkg-config)))
  3914. (home-page "https://www.x.org/wiki/")
  3915. (synopsis "List client applications running on a display")
  3916. (description
  3917. "XLsClients is used to list information about the client programs
  3918. running on X server.")
  3919. (license license:x11)))
  3920. (define-public xlsfonts
  3921. (package
  3922. (name "xlsfonts")
  3923. (version "1.0.6")
  3924. (source
  3925. (origin
  3926. (method url-fetch)
  3927. (uri (string-append
  3928. "mirror://xorg/individual/app/xlsfonts-"
  3929. version
  3930. ".tar.bz2"))
  3931. (sha256
  3932. (base32
  3933. "0s6kxgv78chkwsqmhw929f4pf91gq63f4yvixxnan1h00cx0pf49"))))
  3934. (build-system gnu-build-system)
  3935. (inputs
  3936. `(("xorgproto" ,xorgproto)
  3937. ("libx11" ,libx11)))
  3938. (native-inputs
  3939. `(("pkg-config" ,pkg-config)))
  3940. (home-page "https://www.x.org/wiki/")
  3941. (synopsis "List fonts available from an X server")
  3942. (description
  3943. "xlsfonts lists fonts available from an X server via the X11 core
  3944. protocol.")
  3945. (license license:x11)))
  3946. (define-public xfontsel
  3947. (package
  3948. (name "xfontsel")
  3949. (version "1.0.6")
  3950. (source (origin
  3951. (method url-fetch)
  3952. (uri (string-append
  3953. "mirror://xorg/individual/app/xfontsel-"
  3954. version ".tar.bz2"))
  3955. (sha256
  3956. (base32
  3957. "0700lf6hx7dg88wq1yll7zjvf9gbwh06xff20yffkxb289y0pai5"))))
  3958. (build-system gnu-build-system)
  3959. (arguments
  3960. `(#:configure-flags
  3961. (list (string-append "--with-appdefaultdir="
  3962. %output ,%app-defaults-dir))))
  3963. (inputs
  3964. `(("libx11" ,libx11)
  3965. ("libxaw" ,libxaw)
  3966. ("libxmu" ,libxmu)
  3967. ("libxt" ,libxt)))
  3968. (native-inputs
  3969. `(("pkg-config" ,pkg-config)))
  3970. (home-page "https://www.x.org/wiki/")
  3971. (synopsis "Browse and select X font names")
  3972. (description
  3973. "XFontSel provides a simple way to display the X11 core protocol fonts
  3974. known to your X server, examine samples of each, and retrieve the X Logical
  3975. Font Description (XLFD) full name for a font.")
  3976. (license license:x11)))
  3977. (define-public xfd
  3978. (package
  3979. (name "xfd")
  3980. (version "1.1.3")
  3981. (source (origin
  3982. (method url-fetch)
  3983. (uri (string-append
  3984. "mirror://xorg/individual/app/xfd-"
  3985. version ".tar.bz2"))
  3986. (sha256
  3987. (base32
  3988. "0n6r1v8sm0z0ycqch035xpm46nv5v4mav3kxh36883l3ln5r6bqr"))))
  3989. (build-system gnu-build-system)
  3990. (arguments
  3991. `(#:configure-flags
  3992. (list (string-append "--with-appdefaultdir="
  3993. %output ,%app-defaults-dir))))
  3994. (inputs
  3995. `(("fontconfig" ,fontconfig)
  3996. ("libx11" ,libx11)
  3997. ("libxaw" ,libxaw)
  3998. ("libxft" ,libxft)
  3999. ("libxmu" ,libxmu)
  4000. ("libxrender" ,libxrender)
  4001. ("libxkbfile" ,libxkbfile)))
  4002. (native-inputs
  4003. `(("gettext" ,gettext-minimal)
  4004. ("pkg-config" ,pkg-config)))
  4005. (home-page "https://www.x.org/wiki/")
  4006. (synopsis "Display all the characters in an X font")
  4007. (description
  4008. "XFD (X Font Display) package provides an utility that displays a
  4009. window containing the name of the font being displayed, a row of command
  4010. buttons, several lines of text for displaying character metrics, and a grid
  4011. containing one glyph per cell.")
  4012. (license license:x11)))
  4013. (define-public xmodmap
  4014. (package
  4015. (name "xmodmap")
  4016. (version "1.0.10")
  4017. (source
  4018. (origin
  4019. (method url-fetch)
  4020. (uri (string-append
  4021. "mirror://xorg/individual/app/xmodmap-"
  4022. version
  4023. ".tar.bz2"))
  4024. (sha256
  4025. (base32
  4026. "0z28331i2pm16x671fa9qwsfqdmr6a43bzwmp0dm17a3sx0hjgs7"))))
  4027. (build-system gnu-build-system)
  4028. (inputs
  4029. `(("xorgproto" ,xorgproto)
  4030. ("libx11" ,libx11)))
  4031. (native-inputs
  4032. `(("pkg-config" ,pkg-config)))
  4033. (home-page "https://gitlab.freedesktop.org/xorg/app/xmodmap")
  4034. (synopsis "Modify keymaps and button mappings on X server")
  4035. (description
  4036. "Xmodmap is used to display and edit the keyboard modifier map and
  4037. keymap table that are used by client programs running on X server to
  4038. convert event keycodes into keysyms. It is usually run from the user's
  4039. session startup script to configure the keyboard according to personal
  4040. tastes.")
  4041. (license license:x11)))
  4042. ;; no license
  4043. ;; (define-public xorg-docs
  4044. (define-public xorg-sgml-doctools
  4045. (package
  4046. (name "xorg-sgml-doctools")
  4047. (version "1.11")
  4048. (source
  4049. (origin
  4050. (method url-fetch)
  4051. (uri (string-append
  4052. "mirror://xorg/individual/doc/xorg-sgml-doctools-"
  4053. version
  4054. ".tar.bz2"))
  4055. (sha256
  4056. (base32
  4057. "0k5pffyi5bx8dmfn033cyhgd3gf6viqj3x769fqixifwhbgy2777"))))
  4058. (build-system gnu-build-system)
  4059. (native-inputs `(("pkg-config" ,pkg-config)))
  4060. (home-page "https://www.x.org/wiki/")
  4061. (synopsis "Xorg SGML documentation tools")
  4062. (description
  4063. "This package provides a common set of SGML entities and XML/CSS style
  4064. sheets used in building/formatting the documentation provided in other
  4065. Xorg packages. It's typically only needed by people building from
  4066. source who want to produce formatted documentation from their builds, or
  4067. those who have installed the HTML version of the documentation, which
  4068. refers to the included common xorg.css stylesheet.")
  4069. (license license:x11)))
  4070. (define-public xpr
  4071. (package
  4072. (name "xpr")
  4073. (version "1.0.5")
  4074. (source
  4075. (origin
  4076. (method url-fetch)
  4077. (uri (string-append
  4078. "mirror://xorg/individual/app/xpr-"
  4079. version
  4080. ".tar.bz2"))
  4081. (sha256
  4082. (base32
  4083. "07qy9lwjvxighcmg6qvjkgagad3wwvidrfx0jz85lgynz3qy0dmr"))))
  4084. (build-system gnu-build-system)
  4085. (inputs
  4086. `(("xorgproto" ,xorgproto)
  4087. ("libxmu" ,libxmu)
  4088. ("libx11" ,libx11)))
  4089. (native-inputs
  4090. `(("pkg-config" ,pkg-config)))
  4091. (home-page "https://www.x.org/wiki/")
  4092. (synopsis "Print an X window dump from xwd")
  4093. (description
  4094. "XPr takes as input a window dump file produced by xwd and formats
  4095. it for output on various types of printers.")
  4096. (license license:x11)))
  4097. (define-public xprop
  4098. (package
  4099. (name "xprop")
  4100. (version "1.2.5")
  4101. (source
  4102. (origin
  4103. (method url-fetch)
  4104. (uri (string-append "mirror://xorg/individual/app/xprop-"
  4105. version ".tar.bz2"))
  4106. (sha256
  4107. (base32
  4108. "18ckr8g1z50zkc01hprkpm1npwbq32yqib4b3l98c95z2q1yv4lv"))))
  4109. (build-system gnu-build-system)
  4110. (inputs
  4111. `(("libx11" ,libx11)
  4112. ("xorgproto" ,xorgproto)))
  4113. (native-inputs
  4114. `(("pkg-config" ,pkg-config)))
  4115. (home-page "https://www.x.org/wiki/")
  4116. (synopsis "Display X server properties")
  4117. (description
  4118. "xprop is used to display and/or set window and font properties of
  4119. an X server.")
  4120. (license license:x11)))
  4121. (define-public xrandr
  4122. (package
  4123. (name "xrandr")
  4124. (version "1.5.1")
  4125. (source
  4126. (origin
  4127. (method url-fetch)
  4128. (uri (string-append
  4129. "mirror://xorg/individual/app/xrandr-"
  4130. version ".tar.xz"))
  4131. (sha256
  4132. (base32
  4133. "0ql75s1n3dm2m3g1ilb9l6hqh15r0v709bgghpwazy3jknpnvivv"))))
  4134. (build-system gnu-build-system)
  4135. (inputs
  4136. `(("libxrender" ,libxrender)
  4137. ("libxrandr" ,libxrandr)
  4138. ("xorgproto" ,xorgproto)
  4139. ("libx11" ,libx11)))
  4140. (native-inputs
  4141. `(("pkg-config" ,pkg-config)))
  4142. (home-page "https://www.x.org/wiki/")
  4143. (synopsis "Command line interface to X RandR extension")
  4144. (description
  4145. "xrandr - primitive command line interface to X11 Resize, Rotate,
  4146. and Reflect (RandR) extension.")
  4147. (license license:x11)))
  4148. (define-public xrdb
  4149. (package
  4150. (name "xrdb")
  4151. (version "1.2.1")
  4152. (source
  4153. (origin
  4154. (method url-fetch)
  4155. (uri (string-append "mirror://xorg/individual/app/xrdb-"
  4156. version ".tar.bz2"))
  4157. (sha256
  4158. (base32 "1d78prd8sfszq2rwwlb32ksph4fymf988lp75aj8iysg44f06pag"))))
  4159. (build-system gnu-build-system)
  4160. (inputs
  4161. `(("libxmu" ,libxmu)
  4162. ("libx11" ,libx11)))
  4163. (native-inputs
  4164. `(("pkg-config" ,pkg-config)))
  4165. (home-page "https://gitlab.freedesktop.org/xorg/app/xrdb")
  4166. (synopsis "X server resource database utility")
  4167. (description
  4168. "XRDB is used to get or set the contents of the RESOURCE_MANAGER
  4169. property on the root window of screen 0, or the SCREEN_RESOURCES
  4170. property on the root window of any or all screens, or everything
  4171. combined. You would normally run this program from your X startup
  4172. file.")
  4173. (license license:x11)))
  4174. (define-public xrefresh
  4175. (package
  4176. (name "xrefresh")
  4177. (version "1.0.6")
  4178. (source
  4179. (origin
  4180. (method url-fetch)
  4181. (uri (string-append
  4182. "mirror://xorg/individual/app/xrefresh-"
  4183. version
  4184. ".tar.bz2"))
  4185. (sha256
  4186. (base32
  4187. "0lv3rlshh7s0z3aqx5ahnnf8cl082m934bk7gv881mz8nydznz98"))))
  4188. (build-system gnu-build-system)
  4189. (inputs
  4190. `(("libx11" ,libx11)))
  4191. (native-inputs
  4192. `(("pkg-config" ,pkg-config)))
  4193. (home-page "https://www.x.org/wiki/")
  4194. (synopsis "Refresh all or part of an X screen")
  4195. (description
  4196. "Xrefresh is a simple X program that causes all or part of your
  4197. screen to be repainted. This is useful when system messages have messed
  4198. up your screen.")
  4199. (license license:x11)))
  4200. (define-public xset
  4201. (package
  4202. (name "xset")
  4203. (version "1.2.4")
  4204. (source
  4205. (origin
  4206. (method url-fetch)
  4207. (uri (string-append
  4208. "mirror://xorg/individual/app/xset-"
  4209. version
  4210. ".tar.bz2"))
  4211. (sha256
  4212. (base32
  4213. "0my987wjvra7l92ry6q44ky383yg3phzxhdbn3lqhapm1ll9bzg4"))))
  4214. (build-system gnu-build-system)
  4215. (inputs
  4216. `(("xorgproto" ,xorgproto)
  4217. ("libxmu" ,libxmu)
  4218. ("libxext" ,libxext)
  4219. ("libx11" ,libx11)))
  4220. (native-inputs
  4221. `(("pkg-config" ,pkg-config)))
  4222. (home-page "https://www.x.org/wiki/")
  4223. (synopsis "User preference utility for X server")
  4224. (description
  4225. "XSet is used to set various user preference options of the display.")
  4226. (license license:x11)))
  4227. (define-public xsetroot
  4228. (package
  4229. (name "xsetroot")
  4230. (version "1.1.2")
  4231. (source
  4232. (origin
  4233. (method url-fetch)
  4234. (uri (string-append
  4235. "mirror://xorg/individual/app/xsetroot-"
  4236. version
  4237. ".tar.bz2"))
  4238. (sha256
  4239. (base32
  4240. "0z21mqvmdl6rl63q77479wgkfygnll57liza1i3va7sr4fx45i0h"))))
  4241. (build-system gnu-build-system)
  4242. (inputs
  4243. `(("libxmu" ,libxmu)
  4244. ("libxcursor" ,libxcursor)
  4245. ("xbitmaps" ,xbitmaps)))
  4246. (native-inputs
  4247. `(("pkg-config" ,pkg-config)))
  4248. (home-page "https://www.x.org/wiki/")
  4249. (synopsis "Root window parameter setting utility for X server")
  4250. (description
  4251. "XSetRoot allows you to tailor the appearance of the root window on
  4252. a display running X server.")
  4253. (license license:x11)))
  4254. (define-public xtrans
  4255. (package
  4256. (name "xtrans")
  4257. (version "1.4.0")
  4258. (source
  4259. (origin
  4260. (method url-fetch)
  4261. (uri (string-append
  4262. "mirror://xorg/individual/lib/xtrans-"
  4263. version
  4264. ".tar.bz2"))
  4265. (sha256
  4266. (base32
  4267. "0wyp0yc6gi72hwc3kjmvm3vkj9p6s407cb6dxx37jh9wb68l8z1p"))))
  4268. (build-system gnu-build-system)
  4269. (native-inputs `(("pkg-config" ,pkg-config)))
  4270. (home-page "https://www.x.org/wiki/")
  4271. (synopsis "Xorg Network Transport layer library")
  4272. (description
  4273. "Xtrans is a library of code that is shared among various X packages to
  4274. handle network protocol transport in a modular fashion, allowing a single
  4275. place to add new transport types. It is used by the X server, libX11,
  4276. libICE, the X font server, and related components.")
  4277. (license license:x11)))
  4278. (define-public xvinfo
  4279. (package
  4280. (name "xvinfo")
  4281. (version "1.1.4")
  4282. (source
  4283. (origin
  4284. (method url-fetch)
  4285. (uri (string-append
  4286. "mirror://xorg/individual/app/xvinfo-"
  4287. version
  4288. ".tar.bz2"))
  4289. (sha256
  4290. (base32
  4291. "0gz7fvxavqlrqynpfbrm2nc9yx8h0ksnbnv34fj7n1q6cq6j4lq3"))))
  4292. (build-system gnu-build-system)
  4293. (inputs
  4294. `(("libxext" ,libxext)
  4295. ("libxv" ,libxv)
  4296. ("libx11" ,libx11)))
  4297. (native-inputs
  4298. `(("pkg-config" ,pkg-config)))
  4299. (home-page "https://gitlab.freedesktop.org/xorg/app/xvinfo")
  4300. (synopsis "Print out X-Video extension adaptor information")
  4301. (description
  4302. "XVInfo is used to print out the capabilities of any video adaptors
  4303. associated with the display that are accessible through the X-Video
  4304. extension.")
  4305. (license license:x11)))
  4306. (define-public xwd
  4307. (package
  4308. (name "xwd")
  4309. (version "1.0.8")
  4310. (source
  4311. (origin
  4312. (method url-fetch)
  4313. (uri (string-append "mirror://xorg/individual/app/xwd-"
  4314. version ".tar.bz2"))
  4315. (sha256
  4316. (base32 "06q36fh55r62ms0igfxsanrn6gv8lh794q1bw9xzw51p2qs2papv"))))
  4317. (build-system gnu-build-system)
  4318. (inputs
  4319. `(("libxt" ,libxt)
  4320. ("libxkbfile" ,libxkbfile)
  4321. ("xorgproto" ,xorgproto)))
  4322. (native-inputs
  4323. `(("pkg-config" ,pkg-config)))
  4324. (home-page "https://www.x.org/wiki/")
  4325. (synopsis "Dump current contents of X window or screen to file")
  4326. (description
  4327. "Xwd is used to store window images in a specially formatted dump
  4328. file. This file can then be read by various other X utilities for
  4329. redisplay, printing, editing, formatting, archiving, image processing,
  4330. etc. The target window is selected by clicking the pointer in the
  4331. desired window. The keyboard bell is rung once at the beginning of the
  4332. dump and twice when the dump is completed.")
  4333. (license license:x11)))
  4334. (define-public xwininfo
  4335. (package
  4336. (name "xwininfo")
  4337. (version "1.1.5")
  4338. (source
  4339. (origin
  4340. (method url-fetch)
  4341. (uri (string-append
  4342. "mirror://xorg/individual/app/xwininfo-"
  4343. version
  4344. ".tar.bz2"))
  4345. (sha256
  4346. (base32
  4347. "03h8clirhw5ki1xxp18xbf5vynm7r0dwspsgfin6cxn4vx0m8h3s"))))
  4348. (build-system gnu-build-system)
  4349. (inputs
  4350. `(("libx11" ,libx11)
  4351. ("xorgproto" ,xorgproto)))
  4352. (native-inputs
  4353. `(("pkg-config" ,pkg-config)))
  4354. (home-page "https://www.x.org/wiki/")
  4355. (synopsis "Window information utility for X server")
  4356. (description
  4357. "XWinInfo is used to print out information about windows on an X server.
  4358. Various information is displayed depending on which options are selected.")
  4359. (license license:x11)))
  4360. (define-public xwud
  4361. (package
  4362. (name "xwud")
  4363. (version "1.0.5")
  4364. (source
  4365. (origin
  4366. (method url-fetch)
  4367. (uri (string-append
  4368. "mirror://xorg/individual/app/xwud-"
  4369. version
  4370. ".tar.bz2"))
  4371. (sha256
  4372. (base32
  4373. "1a8hdgy40smvblnh3s9f0vkqckl68nmivx7d48zk34m8z18p16cr"))))
  4374. (build-system gnu-build-system)
  4375. (inputs
  4376. `(("xorgproto" ,xorgproto)
  4377. ("libx11" ,libx11)))
  4378. (native-inputs
  4379. `(("pkg-config" ,pkg-config)))
  4380. (home-page "https://www.x.org/wiki/")
  4381. (synopsis "Display an X window dump from xwd")
  4382. (description
  4383. "Xwud is used to display in a window an image saved in a specially
  4384. formatted dump file, such as produced by xwd.")
  4385. (license license:x11)))
  4386. (define-public xorg-rgb
  4387. (package
  4388. (name "xorg-rgb")
  4389. (version "1.0.6")
  4390. (source
  4391. (origin
  4392. (method url-fetch)
  4393. (uri (string-append
  4394. "mirror://xorg/individual/app/rgb-"
  4395. version
  4396. ".tar.bz2"))
  4397. (sha256
  4398. (base32
  4399. "1c76zcjs39ljil6f6jpx1x17c8fnvwazz7zvl3vbjfcrlmm7rjmv"))))
  4400. (build-system gnu-build-system)
  4401. (inputs
  4402. `(("xorgproto" ,xorgproto)))
  4403. (native-inputs
  4404. `(("pkg-config" ,pkg-config)))
  4405. (home-page "https://www.x.org/wiki/")
  4406. (synopsis "X color name database")
  4407. (description
  4408. "This package provides the X color name database.")
  4409. (license license:x11)))
  4410. ;; packages of height 1 in the propagated-inputs tree
  4411. (define-public fixesproto
  4412. (package
  4413. (name "fixesproto")
  4414. (version "5.0")
  4415. (source
  4416. (origin
  4417. (method url-fetch)
  4418. (uri (string-append
  4419. "mirror://xorg/individual/proto/fixesproto-"
  4420. version
  4421. ".tar.bz2"))
  4422. (sha256
  4423. (base32
  4424. "1ki4wiq2iivx5g4w5ckzbjbap759kfqd72yg18m3zpbb4hqkybxs"))))
  4425. (build-system gnu-build-system)
  4426. (propagated-inputs
  4427. `(("xorgproto" ,xorgproto)))
  4428. (native-inputs
  4429. `(("pkg-config" ,pkg-config)))
  4430. (home-page "https://www.x.org/wiki/")
  4431. (synopsis "Xorg FixesProto protocol headers")
  4432. (description
  4433. "Fixes Extension makes changes to many areas of the protocol to resolve
  4434. issues raised by application interaction with core protocol mechanisms that
  4435. cannot be adequately worked around on the client side of the wire.")
  4436. (license license:x11)
  4437. (properties `((superseded . ,xorgproto)))))
  4438. (define-public libxdamage
  4439. (package
  4440. (name "libxdamage")
  4441. (version "1.1.5")
  4442. (source
  4443. (origin
  4444. (method url-fetch)
  4445. (uri (string-append
  4446. "mirror://xorg/individual/lib/libXdamage-"
  4447. version
  4448. ".tar.bz2"))
  4449. (sha256
  4450. (base32
  4451. "0igaw2akjf712y3rv7lx473jigxmcv9rs9y8sbrvbhya8f30cd5p"))))
  4452. (build-system gnu-build-system)
  4453. (propagated-inputs
  4454. ;; These are all in the Requires or Requires.private field of xdamage.pc
  4455. `(("libxfixes" ,libxfixes)
  4456. ("xorgproto" ,xorgproto)
  4457. ("libx11" ,libx11)))
  4458. (native-inputs
  4459. `(("pkg-config" ,pkg-config)))
  4460. (home-page "https://www.x.org/wiki/")
  4461. (synopsis "Xorg Damage Extension library")
  4462. (description "Xorg library for the XDamage extension.")
  4463. (license license:x11)))
  4464. (define-public libxext
  4465. (package
  4466. (name "libxext")
  4467. (version "1.3.4")
  4468. (source
  4469. (origin
  4470. (method url-fetch)
  4471. (uri (string-append
  4472. "mirror://xorg/individual/lib/libXext-"
  4473. version
  4474. ".tar.bz2"))
  4475. (sha256
  4476. (base32
  4477. "0azqxllcsfxc3ilhz6kwc6x7m8wc477p59ir9p0yrsldx766zbar"))))
  4478. (build-system gnu-build-system)
  4479. (outputs '("out" "doc")) ;man pages represent 40% of the total
  4480. (arguments
  4481. `(#:configure-flags
  4482. (list "--disable-static"
  4483. (string-append "--mandir="
  4484. (assoc-ref %outputs "doc")
  4485. "/share/man")
  4486. ,@(malloc0-flags))))
  4487. (propagated-inputs
  4488. `(("xorgproto" ,xorgproto)))
  4489. (inputs
  4490. `(("libxau" ,libxau)
  4491. ("libx11" ,libx11)))
  4492. (native-inputs
  4493. `(("pkg-config" ,pkg-config)))
  4494. (home-page "https://www.x.org/wiki/")
  4495. (synopsis "Xorg Common extensions library")
  4496. (description
  4497. "Library for common extensions to the X11 protocol.")
  4498. (license license:x11)))
  4499. (define-public libxinerama
  4500. (package
  4501. (name "libxinerama")
  4502. (version "1.1.4")
  4503. (source
  4504. (origin
  4505. (method url-fetch)
  4506. (uri (string-append
  4507. "mirror://xorg/individual/lib/libXinerama-"
  4508. version
  4509. ".tar.bz2"))
  4510. (sha256
  4511. (base32
  4512. "086p0axqj57nvkaqa6r00dnr9kyrn1m8blgf0zjy25zpxkbxn200"))))
  4513. (build-system gnu-build-system)
  4514. (arguments
  4515. `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
  4516. (propagated-inputs
  4517. `(("xorgproto" ,xorgproto)))
  4518. (inputs
  4519. `(("libxext" ,libxext)
  4520. ("libx11" ,libx11)))
  4521. (native-inputs
  4522. `(("pkg-config" ,pkg-config)))
  4523. (home-page "https://www.x.org/wiki/")
  4524. (synopsis "Xorg Xinerama protocol library")
  4525. (description "API for Xinerama extension to X11 protocol.")
  4526. (license license:x11)))
  4527. (define-public libxp
  4528. (package
  4529. (name "libxp")
  4530. (version "1.0.3")
  4531. (source
  4532. (origin
  4533. (method url-fetch)
  4534. (uri (string-append
  4535. "mirror://xorg/individual/lib/libXp-"
  4536. version
  4537. ".tar.bz2"))
  4538. (sha256
  4539. (base32
  4540. "0mwc2jwmq03b1m9ihax5c6gw2ln8rc70zz4fsj3kb7440nchqdkz"))))
  4541. (build-system gnu-build-system)
  4542. (propagated-inputs
  4543. `(("printproto" ,printproto)))
  4544. (inputs
  4545. `(("libx11" ,libx11)
  4546. ("libxext" ,libxext)))
  4547. (native-inputs
  4548. `(("pkg-config" ,pkg-config)))
  4549. (home-page "https://www.x.org/wiki/")
  4550. (synopsis "Xorg Print Client library")
  4551. (description "Xorg Print Client library.")
  4552. (license license:x11)))
  4553. (define-public libxrender
  4554. (package
  4555. (name "libxrender")
  4556. (version "0.9.10")
  4557. (source
  4558. (origin
  4559. (method url-fetch)
  4560. (uri (string-append
  4561. "mirror://xorg/individual/lib/libXrender-"
  4562. version
  4563. ".tar.bz2"))
  4564. (sha256
  4565. (base32
  4566. "0j89cnb06g8x79wmmnwzykgkkfdhin9j7hjpvsxwlr3fz1wmjvf0"))))
  4567. (build-system gnu-build-system)
  4568. (arguments
  4569. `(#:configure-flags
  4570. (list "--disable-static" ,@(malloc0-flags))))
  4571. (propagated-inputs
  4572. `(("xorgproto" ,xorgproto)))
  4573. (inputs
  4574. `(("libx11" ,libx11)))
  4575. (native-inputs
  4576. `(("pkg-config" ,pkg-config)))
  4577. (home-page "https://www.x.org/wiki/")
  4578. (synopsis "Xorg Render Extension library")
  4579. (description "Library for the Render Extension to the X11 protocol.")
  4580. (license license:x11)))
  4581. (define-public libxtst
  4582. (package
  4583. (name "libxtst")
  4584. (version "1.2.3")
  4585. (source
  4586. (origin
  4587. (method url-fetch)
  4588. (uri (string-append
  4589. "mirror://xorg/individual/lib/libXtst-"
  4590. version
  4591. ".tar.bz2"))
  4592. (sha256
  4593. (base32
  4594. "012jpyj7xfm653a9jcfqbzxyywdmwb2b5wr1dwylx14f3f54jma6"))))
  4595. (build-system gnu-build-system)
  4596. (arguments
  4597. '(#:configure-flags '("--disable-static")))
  4598. (propagated-inputs
  4599. `(("libxi" ,libxi)
  4600. ("xorgproto" ,xorgproto)))
  4601. (inputs
  4602. `(("libx11" ,libx11)))
  4603. (native-inputs
  4604. `(("pkg-config" ,pkg-config)))
  4605. (home-page "https://www.x.org/wiki/")
  4606. (synopsis "Xorg library for Xtest and Record extensions")
  4607. (description
  4608. "libXtst provides the Xlib-based client API for the XTEST & RECORD
  4609. extensions.
  4610. The XTEST extension is a minimal set of client and server extensions
  4611. required to completely test the X11 server with no user intervention. This
  4612. extension is not intended to support general journaling and playback of user
  4613. actions.
  4614. The RECORD extension supports the recording and reporting of all core X
  4615. protocol and arbitrary X extension protocol.")
  4616. (license license:x11)))
  4617. (define-public libxv
  4618. (package
  4619. (name "libxv")
  4620. (version "1.0.11")
  4621. (source
  4622. (origin
  4623. (method url-fetch)
  4624. (uri (string-append
  4625. "mirror://xorg/individual/lib/libXv-"
  4626. version
  4627. ".tar.bz2"))
  4628. (sha256
  4629. (base32
  4630. "125hn06bd3d8y97hm2pbf5j55gg4r2hpd3ifad651i4sr7m16v6j"))))
  4631. (build-system gnu-build-system)
  4632. (arguments
  4633. `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
  4634. (propagated-inputs
  4635. `(("xorgproto" ,xorgproto)))
  4636. (inputs
  4637. `(("libxext" ,libxext)
  4638. ("libx11" ,libx11)))
  4639. (native-inputs
  4640. `(("pkg-config" ,pkg-config)))
  4641. (home-page "https://www.x.org/wiki/")
  4642. (synopsis "Xorg XVideo Extension library")
  4643. (description "Library for the X Video Extension to the X11 protocol.")
  4644. (license license:x11)))
  4645. (define-public mkfontdir
  4646. (package
  4647. (name "mkfontdir")
  4648. (version "1.0.7")
  4649. (source
  4650. (origin
  4651. (method url-fetch)
  4652. (uri (string-append
  4653. "mirror://xorg/individual/app/mkfontdir-"
  4654. version
  4655. ".tar.bz2"))
  4656. (sha256
  4657. (base32
  4658. "0c3563kw9fg15dpgx4dwvl12qz6sdqdns1pxa574hc7i5m42mman"))))
  4659. (build-system gnu-build-system)
  4660. (arguments
  4661. `(#:phases
  4662. (modify-phases %standard-phases
  4663. (add-after 'unpack 'fix-configure
  4664. (lambda* (#:key inputs native-inputs #:allow-other-keys)
  4665. ;; Replace outdated config.sub and config.guess:
  4666. (for-each (lambda (file)
  4667. (install-file (string-append
  4668. (assoc-ref
  4669. (or native-inputs inputs) "automake")
  4670. "/share/automake-"
  4671. ,(version-major+minor
  4672. (package-version automake))
  4673. "/" file) "."))
  4674. '("config.sub" "config.guess"))
  4675. #t))
  4676. (add-after 'install 'wrap-mkfontdir
  4677. (lambda* (#:key inputs outputs #:allow-other-keys)
  4678. (wrap-program (string-append (assoc-ref outputs "out")
  4679. "/bin/mkfontdir")
  4680. `("PATH" ":" prefix
  4681. (,(dirname
  4682. (search-input-file inputs "/bin/mkfontscale"))))))))))
  4683. (inputs
  4684. `(("mkfontscale" ,mkfontscale)))
  4685. (native-inputs
  4686. `(("pkg-config" ,pkg-config)
  4687. ("automake" ,automake))) ;For up to date 'config.guess' and 'config.sub'.
  4688. (home-page "https://www.x.org/wiki/")
  4689. (synopsis "Create an index of X font files in a directory")
  4690. (description
  4691. "MkFontDir creates the @code{fonts.dir} files needed by the legacy X
  4692. server core font system. The current implementation is a simple wrapper
  4693. script around the mkfontscale program.")
  4694. (license license:x11)))
  4695. (define-public xproto
  4696. (package
  4697. (name "xproto")
  4698. (version "7.0.31")
  4699. (source
  4700. (origin
  4701. (method url-fetch)
  4702. (uri (string-append
  4703. "mirror://xorg/individual/proto/xproto-"
  4704. version
  4705. ".tar.bz2"))
  4706. (sha256
  4707. (base32
  4708. "0ivpxz0rx2a7nahkpkhfgymz7j0pwzaqvyqpdgw9afmxl1yp9yf6"))))
  4709. (build-system gnu-build-system)
  4710. (propagated-inputs
  4711. `(("util-macros" ,util-macros))) ; to get util-macros in (almost?) all package inputs
  4712. (native-inputs
  4713. `(("pkg-config" ,pkg-config)))
  4714. (home-page "https://www.x.org/wiki/")
  4715. (synopsis "Xorg X11Proto protocol headers")
  4716. (description
  4717. "XProto provides the headers and specification documents defining
  4718. the X Window System Core Protocol, Version 11.
  4719. It also includes a number of headers that aren't purely protocol related,
  4720. but are depended upon by many other X Window System packages to provide
  4721. common definitions and porting layer.")
  4722. (license license:x11)
  4723. (properties `((superseded . ,xorgproto)))))
  4724. ;; packages of height 2 in the propagated-inputs tree
  4725. (define-public libice
  4726. (package
  4727. (name "libice")
  4728. (version "1.0.10")
  4729. (source
  4730. (origin
  4731. (method url-fetch)
  4732. (uri (string-append
  4733. "mirror://xorg/individual/lib/libICE-"
  4734. version
  4735. ".tar.bz2"))
  4736. (sha256
  4737. (base32
  4738. "0j638yvmyna2k4mz465jywgdybgdchdqppfx6xfazg7l5khxr1kg"))))
  4739. (build-system gnu-build-system)
  4740. (arguments
  4741. '(#:configure-flags '("--disable-static")))
  4742. (propagated-inputs
  4743. `(("xorgproto" ,xorgproto)))
  4744. (inputs
  4745. `(("libbsd" ,libbsd)
  4746. ("xtrans" ,xtrans)))
  4747. (native-inputs
  4748. `(("pkg-config" ,pkg-config)))
  4749. (home-page "https://www.x.org/wiki/")
  4750. (synopsis "Xorg Inter-Client Exchange library")
  4751. (description "Xorg Inter-Client Exchange library.")
  4752. (license license:x11)))
  4753. (define-public libxau
  4754. (package
  4755. (name "libxau")
  4756. (version "1.0.9")
  4757. (source
  4758. (origin
  4759. (method url-fetch)
  4760. (uri (string-append
  4761. "mirror://xorg/individual/lib/libXau-"
  4762. version
  4763. ".tar.bz2"))
  4764. (sha256
  4765. (base32
  4766. "1v3krc6x0zliaa66qq1bf9j60x5nqfy68v8axaiglxpnvgqcpy6c"))))
  4767. (build-system gnu-build-system)
  4768. (arguments
  4769. '(#:configure-flags '("--disable-static")))
  4770. (propagated-inputs
  4771. `(("xorgproto" ,xorgproto)))
  4772. (native-inputs
  4773. `(("pkg-config" ,pkg-config)))
  4774. (home-page "https://www.x.org/wiki/")
  4775. (synopsis "Xorg Authorization library")
  4776. (description
  4777. "libXau provides an authorization library for individual access to
  4778. an X Window System display.")
  4779. (license license:x11)))
  4780. (define-public libxfixes
  4781. (package
  4782. (name "libxfixes")
  4783. (version "6.0.0")
  4784. (source
  4785. (origin
  4786. (method url-fetch)
  4787. (uri (string-append
  4788. "mirror://xorg/individual/lib/libXfixes-"
  4789. version
  4790. ".tar.bz2"))
  4791. (sha256
  4792. (base32
  4793. "0k2v4i4r24y3kdr5ici1qqhp69djnja919xfqp54c2rylm6s5hd7"))))
  4794. (build-system gnu-build-system)
  4795. (arguments
  4796. '(#:configure-flags '("--disable-static")))
  4797. (propagated-inputs
  4798. `(("xorgproto" ,xorgproto)))
  4799. (inputs
  4800. `(("libx11" ,libx11)))
  4801. (native-inputs
  4802. `(("pkg-config" ,pkg-config)))
  4803. (home-page "https://www.x.org/wiki/")
  4804. (synopsis "Xorg Fixes Extension library")
  4805. (description "Library for the XFixes Extension to the X11 protocol.")
  4806. (license license:x11)))
  4807. (define-public libxfont
  4808. (package
  4809. (name "libxfont")
  4810. (version "1.5.4")
  4811. (source
  4812. (origin
  4813. (method url-fetch)
  4814. (uri (string-append
  4815. "mirror://xorg/individual/lib/libXfont-"
  4816. version
  4817. ".tar.bz2"))
  4818. (sha256
  4819. (base32
  4820. "0hiji1bvpl78aj3a3141hkk353aich71wv8l5l2z51scfy878zqs"))))
  4821. (build-system gnu-build-system)
  4822. (arguments
  4823. '(#:configure-flags '("--disable-static")))
  4824. (propagated-inputs
  4825. `(("freetype" ,freetype)
  4826. ("libfontenc" ,libfontenc)
  4827. ("xorgproto" ,xorgproto)))
  4828. (inputs
  4829. `(("zlib" ,zlib)
  4830. ("xtrans" ,xtrans)))
  4831. (native-inputs
  4832. `(("pkg-config" ,pkg-config)))
  4833. (home-page "https://www.x.org/wiki/")
  4834. (synopsis "Xorg Font handling library")
  4835. (description
  4836. "libXfont provides the core of the legacy X11 font system, handling the
  4837. index files (fonts.dir, fonts.alias, fonts.scale), the various font file
  4838. formats, and rasterizing them. It is used by the X servers, the X Font
  4839. Server (xfs), and some font utilities (bdftopcf for instance), but should
  4840. not be used by normal X11 clients. X11 clients access fonts via either the
  4841. new API's in libXft, or the legacy API's in libX11.")
  4842. (license license:x11)))
  4843. (define-public libxfont2
  4844. (package
  4845. (inherit libxfont)
  4846. (version "2.0.4")
  4847. (source (origin
  4848. (method url-fetch)
  4849. (uri (string-append "mirror://xorg/individual/lib/libXfont2-"
  4850. version ".tar.bz2"))
  4851. (sha256
  4852. (base32
  4853. "1rk9pjxcm01lbr1dxhnvk4f2qrn6zp068qjbvvz5w0z5d0rin5bd"))))))
  4854. (define-public libxi
  4855. (package
  4856. (name "libxi")
  4857. (version "1.7.10")
  4858. (source
  4859. (origin
  4860. (method url-fetch)
  4861. (uri (string-append
  4862. "mirror://xorg/individual/lib/libXi-"
  4863. version
  4864. ".tar.bz2"))
  4865. (sha256
  4866. (base32
  4867. "0q8hz3slga3w3ch8wp0k7ay9ilhz315qnab0w1y2x9w3cf7hv8rn"))))
  4868. (build-system gnu-build-system)
  4869. (outputs '("out" "doc")) ;man pages represent 28% of the total
  4870. (arguments
  4871. `(#:configure-flags (list "--disable-static"
  4872. (string-append "--mandir="
  4873. (assoc-ref %outputs "doc")
  4874. "/share/man")
  4875. ,@(malloc0-flags))))
  4876. (propagated-inputs
  4877. `(("xorgproto" ,xorgproto)
  4878. ("libx11" ,libx11)
  4879. ("libxext" ,libxext)
  4880. ("libxfixes" ,libxfixes)))
  4881. (native-inputs
  4882. `(("pkg-config" ,pkg-config)))
  4883. (home-page "https://www.x.org/wiki/")
  4884. (synopsis "Xorg Input Extension library")
  4885. (description "Library for the XInput Extension to the X11 protocol.")
  4886. (license license:x11)))
  4887. (define-public libxrandr
  4888. (package
  4889. (name "libxrandr")
  4890. (version "1.5.2")
  4891. (source
  4892. (origin
  4893. (method url-fetch)
  4894. (uri (string-append
  4895. "mirror://xorg/individual/lib/libXrandr-"
  4896. version
  4897. ".tar.bz2"))
  4898. (sha256
  4899. (base32
  4900. "08z0mqywrm7ij8bxlfrx0d2wy6kladdmkva1nw5k6qix82z0xsla"))))
  4901. (build-system gnu-build-system)
  4902. (arguments
  4903. `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
  4904. (propagated-inputs
  4905. ;; In accordance with xrandr.pc.
  4906. `(("libx11" ,libx11)
  4907. ("libxext" ,libxext)
  4908. ("libxrender" ,libxrender)
  4909. ("xorgproto" ,xorgproto)))
  4910. (native-inputs
  4911. `(("pkg-config" ,pkg-config)))
  4912. (home-page "https://www.x.org/wiki/")
  4913. (synopsis "Xorg Resize and Rotate Extension library")
  4914. (description
  4915. "Library for the Resize and Rotate Extension to the X11 protocol.")
  4916. (license license:x11)))
  4917. (define-public libxvmc
  4918. (package
  4919. (name "libxvmc")
  4920. (version "1.0.12")
  4921. (source
  4922. (origin
  4923. (method url-fetch)
  4924. (uri (string-append
  4925. "mirror://xorg/individual/lib/libXvMC-"
  4926. version
  4927. ".tar.bz2"))
  4928. (sha256
  4929. (base32
  4930. "1kbdjsvkm5l7axv7g477qj18sab2wnqhliy6197syzizgfbsfgbb"))))
  4931. (build-system gnu-build-system)
  4932. (arguments
  4933. `(#:configure-flags '(,@(malloc0-flags) "--disable-static")))
  4934. (propagated-inputs
  4935. `(("libxv" ,libxv)))
  4936. (inputs
  4937. `(("xorgproto" ,xorgproto)
  4938. ("libxext" ,libxext)
  4939. ("libx11" ,libx11)))
  4940. (native-inputs
  4941. `(("pkg-config" ,pkg-config)))
  4942. (home-page "https://www.x.org/wiki/")
  4943. (synopsis "Xorg XvMC library")
  4944. (description "Xorg XvMC library.")
  4945. (license license:x11)))
  4946. (define-public libxxf86vm
  4947. (package
  4948. (name "libxxf86vm")
  4949. (version "1.1.4")
  4950. (source
  4951. (origin
  4952. (method url-fetch)
  4953. (uri (string-append
  4954. "mirror://xorg/individual/lib/libXxf86vm-"
  4955. version
  4956. ".tar.bz2"))
  4957. (sha256
  4958. (base32
  4959. "0mydhlyn72i7brjwypsqrpkls3nm6vxw0li8b2nw0caz7kwjgvmg"))))
  4960. (build-system gnu-build-system)
  4961. (arguments
  4962. `(#:configure-flags '("--disable-static" ,@(malloc0-flags))))
  4963. (propagated-inputs
  4964. `(("libxext" ,libxext)
  4965. ("xorgproto" ,xorgproto)))
  4966. (inputs
  4967. `(("libx11" ,libx11)))
  4968. (native-inputs
  4969. `(("pkg-config" ,pkg-config)))
  4970. (home-page "https://www.x.org/wiki/")
  4971. (synopsis "Xorg XF86 Video Mode Extension library")
  4972. (description
  4973. "Library for the XFree86 Video Mode Extension Extension to the X11
  4974. protocol.")
  4975. (license license:x11)))
  4976. ;; packages of height 3 in the propagated-inputs tree
  4977. (define-public libxcb
  4978. (package
  4979. (name "libxcb")
  4980. (version "1.14")
  4981. (source
  4982. (origin
  4983. (method url-fetch)
  4984. (uri (string-append "https://xcb.freedesktop.org/dist/"
  4985. "libxcb-" version ".tar.xz"))
  4986. (sha256
  4987. (base32
  4988. "0d2chjgyn5lr9sfhacfvqgnj9l9faz11vn322a06jd6lk3dxcpm5"))))
  4989. (build-system gnu-build-system)
  4990. (outputs '("out" "doc")) ;5.5 MiB of man pages
  4991. (propagated-inputs
  4992. `(("libpthread-stubs" ,libpthread-stubs)
  4993. ("libxau" ,libxau)
  4994. ("libxdmcp" ,libxdmcp)))
  4995. (inputs
  4996. `(("xcb-proto" ,xcb-proto)
  4997. ("libxslt" ,libxslt)))
  4998. (native-inputs
  4999. `(("pkg-config" ,pkg-config)
  5000. ("python" ,python-minimal-wrapper)))
  5001. (arguments
  5002. `(#:configure-flags (list "--enable-xkb"
  5003. "--disable-static"
  5004. (string-append "--mandir="
  5005. (assoc-ref %outputs "doc")
  5006. "/share/man"))))
  5007. (home-page "https://xcb.freedesktop.org/")
  5008. (synopsis "The X C Binding (XCB) library")
  5009. (description
  5010. "libxcb provides an interface to the X Window System protocol,
  5011. which replaces the current Xlib interface. It has several advantages
  5012. over Xlib, including:
  5013. - size: small, simple library, and lower memory footprint;
  5014. - latency hiding: batch several requests and wait for the replies later;
  5015. - direct protocol access: interface and protocol correspond exactly;
  5016. - proven thread support: transparently access XCB from multiple threads;
  5017. - easy extension implementation: interfaces auto-generated from XML-XCB.")
  5018. (license license:x11)))
  5019. (define-public xorg-server
  5020. (package
  5021. (name "xorg-server")
  5022. (version "1.20.11")
  5023. (source
  5024. (origin
  5025. (method url-fetch)
  5026. (uri (string-append "mirror://xorg/individual/xserver/"
  5027. "xorg-server-" version ".tar.bz2"))
  5028. (sha256
  5029. (base32
  5030. "0jacqgin8kcyy8fyv0lhgb4if8g9hp60rm3ih3s1mgps7xp7jk4i"))
  5031. (patches
  5032. (list
  5033. ;; See:
  5034. ;; https://lists.fedoraproject.org/archives/list/devel@lists.
  5035. ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
  5036. (origin
  5037. (method url-fetch)
  5038. (uri (string-append
  5039. "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
  5040. "/plain/06_use-intel-only-on-pre-gen4.diff"))
  5041. (sha256
  5042. (base32
  5043. "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
  5044. (file-name "xorg-server-use-intel-only-on-pre-gen4.diff"))))))
  5045. (build-system gnu-build-system)
  5046. (propagated-inputs
  5047. `(("libpciaccess" ,libpciaccess)
  5048. ("mesa" ,mesa)
  5049. ("pixman" ,pixman)
  5050. ("xorgproto" ,xorgproto)))
  5051. (inputs
  5052. `(("udev" ,eudev)
  5053. ("dbus" ,dbus)
  5054. ("libdmx" ,libdmx)
  5055. ("libepoxy" ,libepoxy)
  5056. ("libgcrypt" ,libgcrypt)
  5057. ("libxau" ,libxau)
  5058. ("libxaw" ,libxaw)
  5059. ("libxdmcp" ,libxdmcp)
  5060. ("libxfixes" ,libxfixes)
  5061. ("libxfont2" ,libxfont2)
  5062. ("libxkbfile" ,libxkbfile)
  5063. ("libxrender" ,libxrender)
  5064. ("libxres" ,libxres)
  5065. ("libxshmfence" ,libxshmfence)
  5066. ("libxt" ,libxt)
  5067. ("libxv" ,libxv)
  5068. ("xkbcomp" ,xkbcomp)
  5069. ("xkeyboard-config" ,xkeyboard-config)
  5070. ("xtrans" ,xtrans)
  5071. ("zlib" ,zlib)
  5072. ;; Inputs for Xephyr
  5073. ("xcb-util" ,xcb-util)
  5074. ("xcb-util-image" ,xcb-util-image)
  5075. ("xcb-util-keysyms" ,xcb-util-keysyms)
  5076. ("xcb-util-renderutil" ,xcb-util-renderutil)
  5077. ("xcb-util-wm" ,xcb-util-wm)))
  5078. (native-inputs
  5079. `(("python" ,python-wrapper)
  5080. ("pkg-config" ,pkg-config)))
  5081. (arguments
  5082. `(#:parallel-tests? #f
  5083. #:configure-flags
  5084. (list (string-append "--with-xkb-path="
  5085. (assoc-ref %build-inputs "xkeyboard-config")
  5086. "/share/X11/xkb")
  5087. (string-append "--with-xkb-output="
  5088. "/tmp") ; FIXME: This is a bit doubtful; where should
  5089. ; the compiled keyboard maps go?
  5090. (string-append "--with-xkb-bin-directory="
  5091. (assoc-ref %build-inputs "xkbcomp")
  5092. "/bin")
  5093. ;; By default, it ends up with invalid '${prefix}/...', causes:
  5094. ;; _FontTransOpen: Unable to Parse address ${prefix}/share/...
  5095. ;; It's not used anyway, so set it to empty.
  5096. "--with-default-font-path="
  5097. ;; The default is to use "uname -srm", which captures the kernel
  5098. ;; version and makes builds non-reproducible.
  5099. "--with-os-name=GNU"
  5100. "--with-os-vendor=Guix" ; not strictly needed, but looks nice
  5101. ;; For the log file, etc.
  5102. "--localstatedir=/var"
  5103. ;; For sddm.
  5104. "--enable-kdrive"
  5105. "--enable-xephyr")
  5106. #:phases
  5107. (modify-phases %standard-phases
  5108. (add-before 'configure 'pre-configure
  5109. (lambda _
  5110. (substitute* (find-files "." "\\.c$")
  5111. (("/bin/sh") (which "sh")))
  5112. ;; Don't try to 'mkdir /var'.
  5113. (substitute* "hw/xfree86/Makefile.in"
  5114. (("\\$\\(MKDIR_P\\).*logdir.*")
  5115. "true\n"))
  5116. ;; Strip timestamps that would otherwise end up in the 'Xorg'
  5117. ;; binary.
  5118. (substitute* "configure"
  5119. (("^BUILD_DATE=.*$")
  5120. "BUILD_DATE=19700101\n")
  5121. (("^BUILD_TIME=.*$")
  5122. "BUILD_TIME=000001\n"))
  5123. #t)))))
  5124. (home-page "https://www.x.org/wiki/")
  5125. (synopsis "Xorg implementation of the X Window System")
  5126. (description
  5127. "This package provides the Xorg X server itself.
  5128. The X server accepts requests from client programs to create windows, which
  5129. are (normally rectangular) 'virtual screens' that the client program can
  5130. draw into.
  5131. Windows are then composed on the actual screen by the X server (or by a
  5132. separate composite manager) as directed by the window manager, which usually
  5133. communicates with the user via graphical controls such as buttons and
  5134. draggable titlebars and borders.")
  5135. (license license:x11)))
  5136. ;; This package is intended to be used when building GTK+.
  5137. ;; Note: It's currently marked as "hidden" to avoid having two non-eq?
  5138. ;; packages with the same name and version.
  5139. (define-public xorg-server-for-tests
  5140. (hidden-package
  5141. (package
  5142. (inherit xorg-server)
  5143. (version "1.20.10")
  5144. (source
  5145. (origin
  5146. (method url-fetch)
  5147. (uri (string-append "mirror://xorg/individual/xserver/"
  5148. "xorg-server-" version ".tar.bz2"))
  5149. (sha256
  5150. (base32
  5151. "16bwrf0ag41l7jbrllbix8z6avc5yimga7ihvq4ch3a5hb020x4p"))
  5152. (patches
  5153. (list
  5154. ;; See:
  5155. ;; https://lists.fedoraproject.org/archives/list/devel@lists.
  5156. ;; fedoraproject.org/message/JU655YB7AM4OOEQ4MOMCRHJTYJ76VFOK/
  5157. (origin
  5158. (method url-fetch)
  5159. (uri (string-append
  5160. "http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git"
  5161. "/plain/06_use-intel-only-on-pre-gen4.diff"))
  5162. (sha256
  5163. (base32
  5164. "0mm70y058r8s9y9jiv7q2myv0ycnaw3iqzm7d274410s0ik38w7q"))
  5165. (file-name "xorg-server-use-intel-only-on-pre-gen4.diff")))))))))
  5166. (define-public xorg-server-xwayland
  5167. (package/inherit xorg-server
  5168. (name "xorg-server-xwayland")
  5169. (inputs
  5170. `(("wayland" ,wayland)
  5171. ("wayland-protocols" ,wayland-protocols)
  5172. ,@(package-inputs xorg-server)))
  5173. (arguments
  5174. (substitute-keyword-arguments (package-arguments xorg-server)
  5175. ((#:configure-flags flags)
  5176. `(cons* "--enable-xwayland" "--disable-xorg"
  5177. "--disable-docs" "--disable-devel-docs"
  5178. "--disable-xvfb" "--disable-xnest"
  5179. "--disable-xquartz" "--disable-xwin"
  5180. ,flags))))
  5181. (synopsis "Xorg server with wayland backend")))
  5182. ;; packages of height 4 in the propagated-inputs tree
  5183. (define-public libx11
  5184. (package
  5185. (name "libx11")
  5186. (version "1.7.2")
  5187. (source
  5188. (origin
  5189. (method url-fetch)
  5190. (uri (string-append "mirror://xorg/individual/lib/libX11-"
  5191. version ".tar.bz2"))
  5192. (sha256
  5193. (base32
  5194. "0v7aj8q3rlchdyfwdna7n7vgpyzyir391dlv5rwy9fxagbikbyhw"))))
  5195. (build-system gnu-build-system)
  5196. (outputs '("out"
  5197. "doc")) ;8 MiB of man pages + XML
  5198. (arguments
  5199. `(#:configure-flags
  5200. (list (string-append "--mandir="
  5201. (assoc-ref %outputs "doc")
  5202. "/share/man")
  5203. "--disable-static"
  5204. ,@(malloc0-flags))))
  5205. (propagated-inputs
  5206. `(("xorgproto" ,xorgproto)
  5207. ("libxcb" ,libxcb)))
  5208. (inputs
  5209. `(("xtrans" ,xtrans)))
  5210. (native-inputs
  5211. `(("pkg-config" ,pkg-config)
  5212. ("xorgproto" ,xorgproto)))
  5213. (home-page "https://www.x.org/wiki/")
  5214. (synopsis "Xorg Core X11 protocol client library")
  5215. (description "Xorg Core X11 protocol client library.")
  5216. (license license:x11)))
  5217. ;; packages of height 5 in the propagated-inputs tree
  5218. (define-public libxcursor
  5219. (package
  5220. (name "libxcursor")
  5221. (version "1.2.0")
  5222. (source
  5223. (origin
  5224. (method url-fetch)
  5225. (uri (string-append
  5226. "mirror://xorg/individual/lib/libXcursor-"
  5227. version
  5228. ".tar.bz2"))
  5229. (sha256
  5230. (base32
  5231. "10l7c9fm0jmpkm9ab9dz8r6m1pr87vvgqjnbx1psz50h4pwfklrs"))))
  5232. (build-system gnu-build-system)
  5233. (arguments
  5234. '(#:configure-flags '("--disable-static")))
  5235. (propagated-inputs
  5236. `(("libx11" ,libx11)
  5237. ("libxrender" ,libxrender)
  5238. ("libxfixes" ,libxfixes)
  5239. ("xorgproto" ,xorgproto)))
  5240. (native-inputs
  5241. `(("pkg-config" ,pkg-config)))
  5242. ;; TODO: add XCURSOR_PATH=.../share/icons to profile search paths, so
  5243. ;; libXcursor finds cursors installed into a profile. If we solve bugs
  5244. ;; <http://bugs.gnu.org/20255> and <http://bugs.gnu.org/22138>, we can fix
  5245. ;; this with a search-path as follows:
  5246. ;;
  5247. ;; (native-search-paths
  5248. ;; (list (search-path-specification
  5249. ;; (variable "XCURSOR_PATH")
  5250. ;; (files '("share/icons")))))
  5251. (home-page "https://www.x.org/wiki/")
  5252. (synopsis "Xorg Cursor management library")
  5253. (description "Xorg Cursor management library.")
  5254. (license license:x11)))
  5255. (define-public libxt
  5256. (package
  5257. (name "libxt")
  5258. (version "1.2.1")
  5259. (source
  5260. (origin
  5261. (method url-fetch)
  5262. (uri (string-append
  5263. "mirror://xorg/individual/lib/libXt-"
  5264. version
  5265. ".tar.bz2"))
  5266. (sha256
  5267. (base32
  5268. "0q1x7842r8rcn2m0q4q9f69h4qa097fyizs8brzx5ns62s7w1737"))
  5269. (patches (search-patches "libxt-guix-search-paths.patch"))))
  5270. (build-system gnu-build-system)
  5271. (outputs '("out"
  5272. "doc")) ;2 MiB of man pages + XML
  5273. (arguments
  5274. `(#:configure-flags
  5275. (list (string-append "--mandir="
  5276. (assoc-ref %outputs "doc")
  5277. "/share/man")
  5278. "--disable-static"
  5279. ,@(malloc0-flags))))
  5280. (propagated-inputs
  5281. `(("libx11" ,libx11)
  5282. ("libice" ,libice)
  5283. ("libsm" ,libsm)))
  5284. (inputs
  5285. `(("libx11" ,libx11)))
  5286. (native-inputs
  5287. `(("pkg-config" ,pkg-config)))
  5288. (home-page "https://www.x.org/wiki/")
  5289. (synopsis "Xorg XToolkit Intrinsics library")
  5290. (description "Xorg XToolkit Intrinsics library.")
  5291. (license license:x11)))
  5292. (define-public libxaw
  5293. (package
  5294. (name "libxaw")
  5295. (version "1.0.14")
  5296. (source
  5297. (origin
  5298. (method url-fetch)
  5299. (uri (string-append
  5300. "mirror://xorg/individual/lib/libXaw-"
  5301. version
  5302. ".tar.bz2"))
  5303. (sha256
  5304. (base32
  5305. "13kg59r3086383g1dyhnwxanhp2frssh9062mrgn34nzlf7gkbkn"))))
  5306. (build-system gnu-build-system)
  5307. (arguments
  5308. '(#:configure-flags '("--disable-static")))
  5309. (propagated-inputs
  5310. `(("libxext" ,libxext)
  5311. ("libxmu" ,libxmu)
  5312. ("libxpm" ,libxpm)
  5313. ("libxt" ,libxt)))
  5314. (inputs
  5315. `(("xorgproto" ,xorgproto)))
  5316. (native-inputs
  5317. `(("pkg-config" ,pkg-config)))
  5318. (home-page "https://www.x.org/wiki/")
  5319. (synopsis "Xorg Xaw library")
  5320. (description
  5321. "Xaw is the X Athena Widget Set based on the X Toolkit
  5322. Intrinsics (Xt) Library.")
  5323. (license license:x11)))
  5324. (define-public twm
  5325. (package
  5326. (name "twm")
  5327. (version "1.0.11")
  5328. (source
  5329. (origin
  5330. (method url-fetch)
  5331. (uri (string-append "mirror://xorg/individual/app/twm-"
  5332. version ".tar.xz"))
  5333. (sha256
  5334. (base32
  5335. "1iv8kdb18n9vk3is5fyh6l40ipq9mkgx8ppj86byf464vr1ais7l"))))
  5336. (build-system gnu-build-system)
  5337. (inputs
  5338. `(("libxt" ,libxt)
  5339. ("libxmu" ,libxmu)
  5340. ("libxext" ,libxext)
  5341. ("xorgproto" ,xorgproto)))
  5342. (native-inputs
  5343. `(("bison" ,bison)
  5344. ("pkg-config" ,pkg-config)))
  5345. (home-page "https://www.x.org/wiki/")
  5346. (synopsis "Tab Window Manager for the X Window System")
  5347. (description "Twm is a window manager for the X Window System.
  5348. It provides titlebars, shaped windows, several forms of icon management,
  5349. user-defined macro functions, click-to-type and pointer-driven
  5350. keyboard focus, and user-specified key and pointer button bindings.")
  5351. (license license:x11)))
  5352. (define-public xcb-util
  5353. (package
  5354. (name "xcb-util")
  5355. (version "0.4.0")
  5356. (source (origin
  5357. (method url-fetch)
  5358. (uri (string-append "mirror://xorg/individual/xcb/"
  5359. name "-" version ".tar.bz2"))
  5360. (sha256
  5361. (base32
  5362. "1sahmrgbpyki4bb72hxym0zvxwnycmswsxiisgqlln9vrdlr9r26"))))
  5363. (build-system gnu-build-system)
  5364. (arguments
  5365. '(#:configure-flags '("--disable-static")))
  5366. (propagated-inputs
  5367. `(("libxcb" ,libxcb)))
  5368. (native-inputs
  5369. `(("pkg-config" ,pkg-config)))
  5370. (home-page "https://cgit.freedesktop.org/xcb/util/")
  5371. (synopsis "Core XCB utility functions")
  5372. (description
  5373. "The XCB util module provides a number of libraries which sit on
  5374. top of libxcb, the core X protocol library, and some of the extension
  5375. libraries. These experimental libraries provide convenience functions
  5376. and interfaces which make the raw X protocol more usable. Some of the
  5377. libraries also provide client-side code which is not strictly part of
  5378. the X protocol but which has traditionally been provided by Xlib.
  5379. The XCB util module provides the following libraries:
  5380. - aux: Convenient access to connection setup and some core requests.
  5381. - atom: Standard core X atom constants and atom caching.
  5382. - event: Some utilities that have little to do with events any more.")
  5383. (license license:x11)))
  5384. (define-public xcb-util-cursor
  5385. (package
  5386. (name "xcb-util-cursor")
  5387. (version "0.1.3")
  5388. (source (origin
  5389. (method url-fetch)
  5390. (uri (string-append "https://xcb.freedesktop.org/dist/"
  5391. "xcb-util-cursor-" version ".tar.bz2"))
  5392. (sha256
  5393. (base32
  5394. "0krr4rcw6r42cncinzvzzdqnmxk3nrgpnadyg2h8k9x10q3hm885"))))
  5395. (build-system gnu-build-system)
  5396. (arguments
  5397. '(#:configure-flags '("--disable-static")))
  5398. (native-inputs
  5399. `(("m4" ,m4)
  5400. ("pkg-config" ,pkg-config)))
  5401. (inputs
  5402. `(("libxcb" ,libxcb)))
  5403. (propagated-inputs
  5404. `(("xcb-util-renderutil" ,xcb-util-renderutil)
  5405. ("xcb-util-image" ,xcb-util-image)))
  5406. (home-page "https://cgit.freedesktop.org/xcb/util-cursor/")
  5407. (synopsis "Port of libxcursor")
  5408. (description "XCB-util-cursor is a port of libxcursor.")
  5409. (license
  5410. ; expat license with added clause regarding advertising
  5411. (license:non-copyleft
  5412. "file://COPYING"
  5413. "See COPYING in the distribution."))))
  5414. (define-public xcb-util-errors
  5415. (let ((commit "5d660ebe872cadcdc85de9d6f9afe05de629c030")
  5416. (revision "1"))
  5417. (package
  5418. (name "xcb-util-errors")
  5419. (version (git-version "1.0" revision commit))
  5420. (source (origin
  5421. (method git-fetch)
  5422. (uri (git-reference
  5423. (url "https://anongit.freedesktop.org/git/xcb/util-errors.git")
  5424. (commit commit)
  5425. (recursive? #t)))
  5426. (file-name (git-file-name name version))
  5427. (sha256
  5428. (base32
  5429. "12bah0iz5k6b9hwlc5zffyfg2gnrajll3gn5s8zmazgynvw72ahg"))))
  5430. (build-system gnu-build-system)
  5431. (outputs '("out"))
  5432. (inputs
  5433. `(("util-macros" ,util-macros)
  5434. ("xcb-proto" ,xcb-proto)))
  5435. (propagated-inputs
  5436. `(("libxcb" ,libxcb)))
  5437. (native-inputs
  5438. `(("autoconf" ,autoconf)
  5439. ("automake" ,automake)
  5440. ("libtool" ,libtool)
  5441. ("python" ,python-wrapper)
  5442. ("pkg-config" ,pkg-config)))
  5443. (arguments
  5444. `(#:phases
  5445. (modify-phases %standard-phases
  5446. (replace 'bootstrap
  5447. (lambda _
  5448. ;; The default 'bootstrap' phase would run 'autogen.sh', which
  5449. ;; would try to run ./configure and fail due to unpatched
  5450. ;; shebangs.
  5451. (invoke "autoreconf" "-v" "--install"))))))
  5452. (home-page "https://cgit.freedesktop.org/xcb/util-errors/")
  5453. (synopsis "XCB helper library for printing information about X11 errors")
  5454. (description
  5455. "The XCB util module provides a number of libraries which sit on
  5456. top of libxcb, the core X protocol library, and some of the extension
  5457. libraries. These experimental libraries provide convenience functions
  5458. and interfaces which make the raw X protocol more usable. Some of the
  5459. libraries also provide client-side code which is not strictly part of
  5460. the X protocol but which has traditionally been provided by Xlib.
  5461. The XCB util-errors module provides a utility library that gives human
  5462. readable names to error codes, event codes, and also to major and minor
  5463. numbers.")
  5464. (license license:x11))))
  5465. (define-public xcb-util-image
  5466. (package
  5467. (name "xcb-util-image")
  5468. (version "0.4.0")
  5469. (source (origin
  5470. (method url-fetch)
  5471. (uri (string-append "mirror://xorg/individual/xcb/"
  5472. name "-" version ".tar.bz2"))
  5473. (sha256
  5474. (base32
  5475. "1z1gxacg7q4cw6jrd26gvi5y04npsyavblcdad1xccc8swvnmf9d"))))
  5476. (build-system gnu-build-system)
  5477. (arguments
  5478. '(#:configure-flags '("--disable-static")))
  5479. (propagated-inputs
  5480. `(("libxcb" ,libxcb)))
  5481. (inputs
  5482. `(("xcb-util" ,xcb-util)))
  5483. (native-inputs
  5484. `(("pkg-config" ,pkg-config)))
  5485. (home-page "https://cgit.freedesktop.org/xcb/util-image/")
  5486. (synopsis "XCB port of Xlib's XImage and XShmImage")
  5487. (description
  5488. "The XCB util module provides a number of libraries which sit on
  5489. top of libxcb, the core X protocol library, and some of the extension
  5490. libraries. These experimental libraries provide convenience functions
  5491. and interfaces which make the raw X protocol more usable. Some of the
  5492. libraries also provide client-side code which is not strictly part of
  5493. the X protocol but which has traditionally been provided by Xlib.
  5494. The XCB util-image module provides the following library:
  5495. - image: Port of Xlib's XImage and XShmImage functions.")
  5496. (license license:x11)))
  5497. (define-public xcb-util-keysyms
  5498. (package
  5499. (name "xcb-util-keysyms")
  5500. (version "0.4.0")
  5501. (source (origin
  5502. (method url-fetch)
  5503. (uri (string-append "mirror://xorg/individual/xcb/"
  5504. name "-" version ".tar.bz2"))
  5505. (sha256
  5506. (base32
  5507. "1nbd45pzc1wm6v5drr5338j4nicbgxa5hcakvsvm5pnyy47lky0f"))))
  5508. (build-system gnu-build-system)
  5509. (arguments
  5510. '(#:configure-flags '("--disable-static")))
  5511. (propagated-inputs
  5512. `(("libxcb" ,libxcb)))
  5513. (native-inputs
  5514. `(("pkg-config" ,pkg-config)))
  5515. (home-page "https://cgit.freedesktop.org/xcb/util-keysyms/")
  5516. (synopsis "Standard X constants and conversion to/from keycodes")
  5517. (description
  5518. "The XCB util module provides a number of libraries which sit on
  5519. top of libxcb, the core X protocol library, and some of the extension
  5520. libraries. These experimental libraries provide convenience functions
  5521. and interfaces which make the raw X protocol more usable. Some of the
  5522. libraries also provide client-side code which is not strictly part of
  5523. the X protocol but which has traditionally been provided by Xlib.
  5524. The XCB util-keysyms module provides the following library:
  5525. - keysyms: Standard X key constants and conversion to/from keycodes.")
  5526. (license license:x11)))
  5527. (define-public xcb-util-renderutil
  5528. (package
  5529. (name "xcb-util-renderutil")
  5530. (version "0.3.9")
  5531. (source (origin
  5532. (method url-fetch)
  5533. (uri (string-append "mirror://xorg/individual/xcb/"
  5534. name "-" version ".tar.bz2"))
  5535. (sha256
  5536. (base32
  5537. "0nza1csdvvxbmk8vgv8vpmq7q8h05xrw3cfx9lwxd1hjzd47xsf6"))))
  5538. (build-system gnu-build-system)
  5539. (arguments
  5540. '(#:configure-flags '("--disable-static")))
  5541. (propagated-inputs
  5542. `(("libxcb" ,libxcb)))
  5543. (native-inputs
  5544. `(("pkg-config" ,pkg-config)))
  5545. (home-page "https://cgit.freedesktop.org/xcb/util-renderutil/")
  5546. (synopsis "Convenience functions for the Render extension")
  5547. (description
  5548. "The XCB util module provides a number of libraries which sit on
  5549. top of libxcb, the core X protocol library, and some of the extension
  5550. libraries. These experimental libraries provide convenience functions
  5551. and interfaces which make the raw X protocol more usable. Some of the
  5552. libraries also provide client-side code which is not strictly part of
  5553. the X protocol but which has traditionally been provided by Xlib.
  5554. The XCB util-renderutil module provides the following library:
  5555. - renderutil: Convenience functions for the Render extension.")
  5556. (license license:x11)))
  5557. (define-public xcb-util-wm
  5558. (package
  5559. (name "xcb-util-wm")
  5560. (version "0.4.1")
  5561. (source (origin
  5562. (method url-fetch)
  5563. (uri (string-append "mirror://xorg/individual/xcb/"
  5564. name "-" version ".tar.bz2"))
  5565. (sha256
  5566. (base32
  5567. "0gra7hfyxajic4mjd63cpqvd20si53j1q3rbdlkqkahfciwq3gr8"))))
  5568. (build-system gnu-build-system)
  5569. (arguments
  5570. '(#:configure-flags '("--disable-static")))
  5571. (propagated-inputs
  5572. `(("libxcb" ,libxcb)))
  5573. (native-inputs
  5574. `(("m4" ,m4)
  5575. ("pkg-config" ,pkg-config)))
  5576. (home-page "https://cgit.freedesktop.org/xcb/util-wm/")
  5577. (synopsis "Client and window-manager helpers for ICCCM and EWMH")
  5578. (description
  5579. "The XCB util modules provides a number of libraries which sit on
  5580. top of libxcb, the core X protocol library, and some of the extension
  5581. libraries. These experimental libraries provide convenience functions
  5582. and interfaces which make the raw X protocol more usable. Some of the
  5583. libraries also provide client-side code which is not strictly part of
  5584. the X protocol but which has traditionally been provided by Xlib.
  5585. The XCB util-wm module provides the following libraries:
  5586. - ewmh: Both client and window-manager helpers for EWMH.
  5587. - icccm: Both client and window-manager helpers for ICCCM.")
  5588. (license license:x11)))
  5589. (define-public xinit
  5590. (package
  5591. (name "xinit")
  5592. (version "1.4.1")
  5593. (source (origin
  5594. (method url-fetch)
  5595. (uri (string-append "mirror://xorg/individual/app/xinit-"
  5596. version ".tar.bz2"))
  5597. (sha256
  5598. (base32
  5599. "1fdbakx59vyh474skjydj1bbglpby3y03nl7mxn0z9v8gdhqz6yy"))))
  5600. (build-system gnu-build-system)
  5601. (inputs
  5602. `(("xorgproto" ,xorgproto)
  5603. ("libx11" ,libx11)))
  5604. (native-inputs
  5605. `(("pkg-config" ,pkg-config)))
  5606. (propagated-inputs
  5607. `(("xauth" ,xauth)))
  5608. (home-page "https://www.x.org/")
  5609. (synopsis "Commands to start the X Window server")
  5610. (description
  5611. "The xinit program is used to start the X Window System server and a
  5612. first client program on systems that are not using a display manager such as
  5613. xdm. This package also provides the @code{startx} command, which provides a
  5614. user-friendly mechanism to start the X server.")
  5615. (license license:x11)))
  5616. ;; package outside the x.org system proper of height 5
  5617. (define-public libxaw3d
  5618. (package
  5619. (name "libxaw3d")
  5620. (version "1.6.3")
  5621. (source
  5622. (origin
  5623. (method url-fetch)
  5624. (uri (string-append
  5625. "mirror://xorg/individual/lib/libXaw3d-"
  5626. version
  5627. ".tar.bz2"))
  5628. (sha256
  5629. (base32
  5630. "0i653s8g25cc0mimkwid9366bqkbyhdyjhckx7bw77j20hzrkfid"))))
  5631. (build-system gnu-build-system)
  5632. (propagated-inputs
  5633. `(("libxext" ,libxext)
  5634. ("libxmu" ,libxmu)
  5635. ("libxt" ,libxt)))
  5636. (inputs
  5637. `(("libx11" ,libx11)))
  5638. (native-inputs
  5639. `(("pkg-config" ,pkg-config)))
  5640. (home-page "https://www.x.org/wiki/")
  5641. (synopsis "Xorg Xaw3d library")
  5642. (description
  5643. "Xaw is the X 3D Athena Widget Set based on the X Toolkit
  5644. Intrinsics (Xt) Library.")
  5645. (license license:x11)))
  5646. (define-public xclock
  5647. (package
  5648. (name "xclock")
  5649. (version "1.0.9")
  5650. (source
  5651. (origin
  5652. (method url-fetch)
  5653. (uri (string-append "https://www.x.org/releases/individual/app/"
  5654. "xclock-" version ".tar.bz2"))
  5655. (sha256
  5656. (base32 "1fr3q4rszgx7x2zxy2ip592a3fgx20hfwac49p2l5b7jqsr1ying"))))
  5657. (build-system gnu-build-system)
  5658. (arguments
  5659. `(#:configure-flags
  5660. (list (string-append "--with-appdefaultdir="
  5661. %output ,%app-defaults-dir))))
  5662. (inputs
  5663. `(("libxmu" ,libxmu)
  5664. ("libx11" ,libx11)
  5665. ("libxaw" ,libxaw)
  5666. ("libxrender" ,libxrender)
  5667. ("libxft" ,libxft)
  5668. ("libxkbfile" ,libxkbfile)))
  5669. (native-inputs
  5670. `(("pkg-config" ,pkg-config)))
  5671. (home-page "https://gitlab.freedesktop.org/xorg/app/xclock")
  5672. (synopsis "Analog / digital clock for X")
  5673. (description "The xclock program displays the time in analog or digital
  5674. form.")
  5675. (license (license:x11-style "file://COPYING" "See COPYING for details."))))
  5676. (define-public xmag
  5677. (package
  5678. (name "xmag")
  5679. (version "1.0.6")
  5680. (source
  5681. (origin
  5682. (method url-fetch)
  5683. (uri (string-append
  5684. "mirror://xorg/individual/app/" name "-"
  5685. version
  5686. ".tar.gz"))
  5687. (sha256
  5688. (base32
  5689. "19bsg5ykal458d52v0rvdx49v54vwxwqg8q36fdcsv9p2j8yri87"))))
  5690. (build-system gnu-build-system)
  5691. (arguments
  5692. `(#:configure-flags
  5693. (list (string-append "--with-appdefaultdir="
  5694. %output ,%app-defaults-dir))))
  5695. (inputs
  5696. `(("libxaw" ,libxaw)))
  5697. (native-inputs
  5698. `(("pkg-config" ,pkg-config)))
  5699. (home-page "https://www.x.org/wiki/")
  5700. (synopsis "Display or capture a magnified part of a X11 screen")
  5701. (description "Xmag displays and captures a magnified snapshot of a portion
  5702. of an X11 screen.")
  5703. (license license:x11)))
  5704. (define-public xmessage
  5705. (package
  5706. (name "xmessage")
  5707. (version "1.0.5")
  5708. (source
  5709. (origin
  5710. (method url-fetch)
  5711. (uri (string-append
  5712. "mirror://xorg/individual/app/" name "-"
  5713. version
  5714. ".tar.gz"))
  5715. (sha256
  5716. (base32
  5717. "0sw0b0cbrjl44brw7qi1jkm61xd7a1lpj04418c6iqk6mf83llwr"))))
  5718. (build-system gnu-build-system)
  5719. (arguments
  5720. `(#:configure-flags
  5721. (list (string-append "--with-appdefaultdir="
  5722. %output ,%app-defaults-dir))))
  5723. (inputs
  5724. `(("libxaw" ,libxaw)))
  5725. (native-inputs
  5726. `(("pkg-config" ,pkg-config)))
  5727. (home-page "https://www.x.org/wiki/")
  5728. (synopsis "Displays a message or query in a window")
  5729. (description
  5730. "Xmessage displays a message or query in a window. The user can click
  5731. on a button to dismiss it or can select one of several buttons
  5732. to answer a question. Xmessage can also exit after a specified time.")
  5733. (license license:x11)))
  5734. (define-public xterm
  5735. (package
  5736. (name "xterm")
  5737. (version "369")
  5738. (source
  5739. (origin
  5740. (method url-fetch)
  5741. (uri (list
  5742. (string-append "https://invisible-mirror.net/archives/xterm/"
  5743. "xterm-" version ".tgz")
  5744. (string-append "ftp://ftp.invisible-island.net/xterm/"
  5745. "xterm-" version ".tgz")))
  5746. (sha256
  5747. (base32 "09jffsd46qsg6vfxlljds9pljwx9h4kh06kl94hkv2b4s146mvbi"))))
  5748. (build-system gnu-build-system)
  5749. (arguments
  5750. '(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts"
  5751. "--enable-i18n" "--enable-doublechars"
  5752. "--enable-luit" "--enable-mini-luit")
  5753. #:tests? #f ; no test suite
  5754. #:phases
  5755. (modify-phases %standard-phases
  5756. (add-after 'build 'patch-file-names
  5757. (lambda* (#:key outputs #:allow-other-keys)
  5758. (let ((out (assoc-ref outputs "out")))
  5759. (substitute* "uxterm"
  5760. (("([ `\\|])(sh|sed|awk|xmessage) " _ prefix command)
  5761. (string-append prefix (which command) " "))
  5762. (("(`|\"|LANG=C )(locale) " _ prefix command)
  5763. (string-append prefix (which command) " "))
  5764. (("=xterm")
  5765. (string-append "=" out "/bin/xterm")))))))))
  5766. (native-inputs
  5767. `(("pkg-config" ,pkg-config)))
  5768. (inputs
  5769. `(("luit" ,luit)
  5770. ("libXft" ,libxft)
  5771. ("fontconfig" ,fontconfig)
  5772. ("freetype" ,freetype)
  5773. ("ncurses" ,ncurses)
  5774. ("libICE" ,libice)
  5775. ("libSM" ,libsm)
  5776. ("libX11" ,libx11)
  5777. ("libXcursor" ,libxcursor)
  5778. ("libXext" ,libxext)
  5779. ("libXt" ,libxt)
  5780. ("xorgproto" ,xorgproto)
  5781. ("libXaw" ,libxaw)))
  5782. (home-page "https://invisible-island.net/xterm/")
  5783. (synopsis "Terminal emulator for the X Window System")
  5784. (description
  5785. "The xterm program is a terminal emulator for the X Window System. It
  5786. provides DEC VT102/VT220 (VTxxx) and Tektronix 4014 compatible terminals for
  5787. programs that cannot use the window system directly.")
  5788. (license license:x11)))
  5789. (define-public perl-x11-xcb
  5790. (package
  5791. (name "perl-x11-xcb")
  5792. (version "0.18")
  5793. (source (origin
  5794. (method url-fetch)
  5795. (uri (string-append
  5796. "mirror://cpan/authors/id/M/MS/MSTPLBG/"
  5797. "X11-XCB-" version ".tar.gz"))
  5798. (sha256
  5799. (base32
  5800. "1cjpghw7cnackw20lbd7yzm222kz5bnrwz52f8ay24d1f4pwrnxf"))))
  5801. (build-system perl-build-system)
  5802. (arguments
  5803. '(;; Disable parallel build to prevent a race condition.
  5804. #:parallel-build? #f
  5805. #:phases
  5806. (modify-phases %standard-phases
  5807. (add-before 'configure 'set-perl-search-path
  5808. (lambda _
  5809. (setenv "PERL5LIB"
  5810. (string-append (getcwd) ":"
  5811. (getenv "PERL5LIB")))
  5812. #t))
  5813. (add-before 'build 'patch-Makefile
  5814. (lambda* (#:key inputs #:allow-other-keys)
  5815. (substitute* "Makefile"
  5816. ;; XXX: Without this hack, attempts at using XCB.so fails with
  5817. ;; an error such as "XCB.so: undefined symbol: xcb_xinerama_id"
  5818. (("^LDDLFLAGS = ")
  5819. (string-append "LDDLFLAGS = "
  5820. "-lxcb -lxcb-util -lxcb-xinerama -lxcb-icccm ")))
  5821. #t)))
  5822. ;; Tests require a running X11 server.
  5823. #:tests? #f))
  5824. (native-inputs
  5825. `(("perl-extutils-depends" ,perl-extutils-depends)
  5826. ("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig)
  5827. ("perl-module-install" ,perl-module-install)
  5828. ("perl-test-deep" ,perl-test-deep)
  5829. ("perl-test-exception" ,perl-test-exception)))
  5830. (propagated-inputs
  5831. `(("perl-data-dump" ,perl-data-dump)
  5832. ("perl-mouse" ,perl-mouse)
  5833. ("perl-mousex-nativetraits" ,perl-mousex-nativetraits)
  5834. ("perl-try-tiny" ,perl-try-tiny)
  5835. ("perl-xml-descent" ,perl-xml-descent)
  5836. ("perl-xml-simple" ,perl-xml-simple)
  5837. ("perl-xs-object-magic" ,perl-xs-object-magic)))
  5838. (inputs
  5839. `(("libxcb" ,libxcb)
  5840. ("xcb-proto" ,xcb-proto)
  5841. ("xcb-util" ,xcb-util)
  5842. ("xcb-util-wm" ,xcb-util-wm)))
  5843. (home-page "https://metacpan.org/release/X11-XCB")
  5844. (synopsis "Perl bindings for libxcb")
  5845. (description
  5846. "These bindings wrap @code{libxcb} (a C library to speak with X11,
  5847. in many cases better than @code{Xlib}), and provides an object oriented
  5848. interface to its methods (using @code{Mouse}).")
  5849. (license license:perl-license)))
  5850. (define-public perl-x11-protocol
  5851. (package
  5852. (name "perl-x11-protocol")
  5853. (version "0.56")
  5854. (source (origin
  5855. (method url-fetch)
  5856. (uri (string-append
  5857. "mirror://cpan/authors/id/S/SM/SMCCAM/X11-Protocol-"
  5858. version ".tar.gz"))
  5859. (sha256
  5860. (base32
  5861. "1dq89bh6fqv7l5mbffqcismcljpq5f869bx7g8lg698zgindv5ny"))))
  5862. (build-system perl-build-system)
  5863. (arguments '(#:tests? #f)) ;tests require a running x server
  5864. (synopsis "Raw interface to X Window System servers")
  5865. (description
  5866. "X11::Protocol is a client-side interface to the X11 Protocol, allowing
  5867. perl programs to display windows and graphics on X11 servers.")
  5868. (home-page "https://metacpan.org/release/X11-Protocol")
  5869. ;; From the package README: "you can redistribute and/or modify it under
  5870. ;; the same terms as Perl itself. (As an exception, the file
  5871. ;; Keysyms.pm,which is derived from a file in the standard X11
  5872. ;; distribution, has another, less restrictive copying policy, as do some
  5873. ;; of the extension modules in the directory Protocol/Ext: see those files
  5874. ;; for details)."
  5875. (license license:perl-license)))
  5876. (define-public perl-x11-protocol-other
  5877. (package
  5878. (name "perl-x11-protocol-other")
  5879. (version "31")
  5880. (source
  5881. (origin
  5882. (method url-fetch)
  5883. (uri (string-append
  5884. "mirror://cpan/authors/id/K/KR/KRYDE/X11-Protocol-Other-"
  5885. version ".tar.gz"))
  5886. (sha256
  5887. (base32 "1x3kvic52jgp2mvd5wzrqrprqi82cdk8l4075v8b33ksvj9mjqiw"))))
  5888. (build-system perl-build-system)
  5889. (native-inputs
  5890. `(("perl-encode-hanextra" ,perl-encode-hanextra)
  5891. ("perl-module-util" ,perl-module-util)))
  5892. (propagated-inputs
  5893. `(("perl-x11-protocol" ,perl-x11-protocol)))
  5894. (home-page "https://metacpan.org/release/X11-Protocol-Other")
  5895. (synopsis "Miscellaneous helpers for @code{X11::Protocol} connections")
  5896. (description
  5897. "@code{X11::Protocol::Other} contains window manager related functions for
  5898. use by client programs, as per the @dfn{ICCCM} (Inter-Client Communication
  5899. Conventions Manual) and some of the @dfn{EWMH}
  5900. (Extended Window Manager Hints).")
  5901. (license license:gpl3+)))
  5902. (define-public xcompmgr
  5903. (package
  5904. (name "xcompmgr")
  5905. (version "1.1.8")
  5906. (source
  5907. (origin
  5908. ;; There's no current tarball.
  5909. (method git-fetch)
  5910. (uri (git-reference
  5911. (url "https://anongit.freedesktop.org/git/xorg/app/xcompmgr.git")
  5912. (commit (string-append "xcompmgr-" version))))
  5913. (sha256
  5914. (base32 "11i7vyk3pynw8q8aczpy56qncm84y0cmhlvyja3sj8dgy60g03q2"))
  5915. (file-name (git-file-name name version))))
  5916. (build-system gnu-build-system)
  5917. (native-inputs
  5918. `(("pkg-config" ,pkg-config)
  5919. ("autoconf" ,autoconf)
  5920. ("automake" ,automake)))
  5921. (inputs
  5922. `(("libX11" ,libx11)
  5923. ("libXext" ,libxext)
  5924. ("libXcomposite" ,libxcomposite)
  5925. ("libXfixes" ,libxfixes)
  5926. ("libXdamage" ,libxdamage)
  5927. ("libXrender" ,libxrender)))
  5928. (synopsis "X Compositing manager using RENDER")
  5929. (description "xcompmgr is a sample compositing manager for X servers
  5930. supporting the XFIXES, DAMAGE, RENDER, and COMPOSITE extensions. It enables
  5931. basic eye-candy effects.")
  5932. (home-page "https://cgit.freedesktop.org/xorg/app/xcompmgr/")
  5933. (license (license:x11-style
  5934. "https://cgit.freedesktop.org/xorg/app/xcompmgr/tree/COPYING"))))
  5935. (define-public xpra
  5936. (package
  5937. (name "xpra")
  5938. (version "4.2.2")
  5939. (source
  5940. (origin
  5941. (method url-fetch)
  5942. (uri (string-append "https://www.xpra.org/src/xpra-"
  5943. version ".tar.gz"))
  5944. (sha256
  5945. (base32 "0nky9j07zq8d5ifx568dima7a0jgs8kwhcqbg8p6gsxlgq5zdw96"))
  5946. (patches (search-patches "xpra-4.2-systemd-run.patch"))))
  5947. (build-system python-build-system)
  5948. ;; see also http://xpra.org/trac/wiki/Dependencies
  5949. (inputs `(("bash-minimal" ,bash-minimal) ; for wrap-program
  5950. ;; Essential dependencies.
  5951. ("libjpeg" ,libjpeg-turbo)
  5952. ("libwebp" ,libwebp)
  5953. ("ffmpeg" ,ffmpeg)
  5954. ("libx11" ,libx11)
  5955. ("libxrandr" ,libxrandr)
  5956. ("libxtst" ,libxtst)
  5957. ("libxfixes" ,libxfixes)
  5958. ("libxkbfile" ,libxkbfile)
  5959. ("libxcomposite" ,libxcomposite)
  5960. ("libxdamage" ,libxdamage)
  5961. ("libxext" ,libxext)
  5962. ("gtk+" ,gtk+)
  5963. ("python-pycairo" ,python-pycairo)
  5964. ("python-pygobject" ,python-pygobject)
  5965. ("xauth" ,xauth)
  5966. ("xorg-server" ,xorg-server)
  5967. ("xf86-video-dummy" ,xf86-video-dummy)
  5968. ("xf86-input-mouse" ,xf86-input-mouse)
  5969. ("xf86-input-keyboard" ,xf86-input-keyboard)
  5970. ("python-pillow" ,python-pillow)
  5971. ;; Optional dependencies.
  5972. ("libx264" ,libx264)
  5973. ("x265" ,x265)
  5974. ("libvpx" ,libvpx)
  5975. ("python-rencode" ,python-rencode) ; For speed.
  5976. ("python-numpy" ,python-numpy)
  5977. ("python-pyopengl" ,python-pyopengl) ; Drawing acceleration.
  5978. ("python-pyopengl-accelerate" ,python-pyopengl-accelerate) ; Same.
  5979. ("python-paramiko" ,python-paramiko) ; Tunneling over SSH.
  5980. ("python-dbus" ,python-dbus) ; For desktop notifications.
  5981. ("dbus" ,dbus) ; For dbus-launch command.
  5982. ("python-lz4" ,python-lz4) ; Faster compression than zlib.
  5983. ("python-netifaces" ,python-netifaces)))
  5984. (native-inputs `(("pkg-config" ,pkg-config)
  5985. ("pandoc" ,pandoc)
  5986. ("python-cython" ,python-cython)))
  5987. (arguments
  5988. `(#:configure-flags '("--without-Xdummy"
  5989. "--without-Xdummy_wrapper"
  5990. "--with-opengl"
  5991. "--without-debug"
  5992. "--without-strict") ; Ignore compiler warnings.
  5993. #:modules ((guix build python-build-system)
  5994. (guix build utils))
  5995. #:tests? #f ; Do not run test-cases. This would rebuild all modules and
  5996. ; they seem to require python2.
  5997. #:phases
  5998. (modify-phases %standard-phases
  5999. ;; built by 'install phase
  6000. (delete 'build)
  6001. (add-before 'install 'fix-paths
  6002. (lambda* (#:key inputs outputs #:allow-other-keys)
  6003. ;; Fix binary paths.
  6004. (substitute* '("xpra/scripts/config.py" "xpra/x11/vfb_util.py")
  6005. (("\"Xvfb\"")
  6006. (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xvfb\""))
  6007. (("\"Xorg\"")
  6008. (string-append "\"" (assoc-ref inputs "xorg-server") "/bin/Xorg\""))
  6009. (("\"xauth\"")
  6010. (string-append "\"" (assoc-ref inputs "xauth") "/bin/xauth\"")))
  6011. ;; Fix directory of config files.
  6012. (substitute* '("xpra/scripts/config.py" "xpra/platform/xposix/paths.py")
  6013. (("\"/etc/xpra/?\"")
  6014. (string-append "\"" (assoc-ref outputs "out") "/etc/xpra/\"")))
  6015. ;; XXX: Stolen from (gnu packages linux)
  6016. (define (append-to-file name body)
  6017. (let ((file (open-file name "a")))
  6018. (display body file)
  6019. (close-port file)))
  6020. ;; Add Xorg module paths.
  6021. (append-to-file
  6022. "fs/etc/xpra/xorg.conf"
  6023. (string-append "\nSection \"Files\"\nModulePath \""
  6024. (assoc-ref inputs "xf86-video-dummy") "/lib/xorg/modules,"
  6025. (assoc-ref inputs "xf86-input-mouse") "/lib/xorg/modules,"
  6026. (assoc-ref inputs "xf86-input-keyboard") "/lib/xorg/modules,"
  6027. (assoc-ref inputs "xorg-server") "/lib/xorg/modules\"\n"
  6028. "EndSection\n\n"))
  6029. (substitute* '("xpra/scripts/config.py"
  6030. "fs/etc/xpra/conf.d/60_server.conf.in"
  6031. "tests/unittests/unit/server/mixins/notification_test.py")
  6032. ;; The trailing -- is intentional, so we only replace it inside
  6033. ;; a command line.
  6034. (("dbus-launch --")
  6035. (string-append (search-input-file inputs "/bin/dbus-launch")
  6036. " --")))
  6037. ;; /run/user does not exist on guix system
  6038. (substitute* "./xpra/scripts/config.py"
  6039. (("socket-dir.*: \"\",")
  6040. "socket-dir\" : \"~/.xpra\","))
  6041. #t))
  6042. ;; GTK3 will not be found, if GI can’t find its typelibs.
  6043. (add-after
  6044. 'install 'wrap-program
  6045. (lambda* (#:key outputs #:allow-other-keys)
  6046. (let ((prog (string-append (assoc-ref outputs "out")
  6047. "/bin/xpra")))
  6048. ;; XXX: only export typelibs in inputs
  6049. (wrap-program prog
  6050. `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
  6051. #t))))))
  6052. (home-page "https://www.xpra.org/")
  6053. (synopsis "Remote access to individual applications or full desktops")
  6054. (description "Xpra is a persistent remote display server and client for
  6055. forwarding applications and desktop screens. It gives you remote access to
  6056. individual applications or full desktops. On X11, it is also known as
  6057. ``@command{screen} for X11'': it allows you to run programs, usually on a
  6058. remote host, direct their display to your local machine, and then to
  6059. disconnect from these programs and reconnect from the same or another machine,
  6060. without losing any state. It can also be used to forward full desktops from
  6061. X11 servers, Windows, or macOS.")
  6062. (license license:gpl2+)))
  6063. (define-public uim
  6064. (package
  6065. (name "uim")
  6066. (version "1.8.8")
  6067. (source
  6068. (origin
  6069. (method url-fetch)
  6070. (uri (string-append "https://github.com/uim/uim/releases/download/"
  6071. version "/uim-" version ".tar.bz2"))
  6072. (sha256
  6073. (base32
  6074. "1p7sl0js47ja4glmax93ci59h02ipqw3wxkh4f1qgaz5qjy9nn9l"))))
  6075. (build-system gnu-build-system)
  6076. (inputs
  6077. `(("anthy" ,anthy)
  6078. ("libedit" ,libedit)
  6079. ("libxft" ,libxft)
  6080. ("m17n-lib" ,m17n-lib)
  6081. ("ncurses" ,ncurses)))
  6082. (native-inputs
  6083. `(("emacs" ,emacs-minimal)
  6084. ("intltool" ,intltool)
  6085. ("pkg-config" ,pkg-config)))
  6086. (arguments
  6087. `(#:modules ((guix build gnu-build-system)
  6088. (guix build utils)
  6089. (guix build emacs-utils))
  6090. #:imported-modules (,@%gnu-build-system-modules
  6091. (guix build emacs-utils))
  6092. #:configure-flags
  6093. (list "--with-anthy-utf8"
  6094. (string-append "--with-lispdir=" %output "/share/emacs")
  6095. ;; Set proper runpath
  6096. (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
  6097. #:phases
  6098. (modify-phases %standard-phases
  6099. ;; Set path of uim-el-agent and uim-el-helper-agent executables
  6100. (add-after 'configure 'configure-uim-el
  6101. (lambda* (#:key outputs #:allow-other-keys)
  6102. (let ((out (assoc-ref outputs "out")))
  6103. (emacs-substitute-variables "emacs/uim-var.el"
  6104. ("uim-el-agent" (string-append out "/bin/uim-el-agent"))
  6105. ("uim-el-helper-agent" (string-append out "/bin/uim-el-helper-agent"))))
  6106. #t))
  6107. ;; Fix installation path by renaming share/emacs/uim-el to
  6108. ;; share/emacs/site-lisp
  6109. (add-after 'install 'fix-install-path
  6110. (lambda* (#:key outputs #:allow-other-keys)
  6111. (let ((share-emacs (string-append (assoc-ref outputs "out")
  6112. "/share/emacs")))
  6113. (rename-file (string-append share-emacs "/uim-el")
  6114. (string-append share-emacs "/site-lisp")))
  6115. #t))
  6116. ;; Generate emacs autoloads for uim.el
  6117. (add-after 'fix-install-path 'make-autoloads
  6118. (lambda* (#:key outputs #:allow-other-keys)
  6119. (emacs-generate-autoloads
  6120. ,name (string-append (assoc-ref outputs "out")
  6121. "/share/emacs/site-lisp"))
  6122. #t)))))
  6123. (home-page "https://github.com/uim/uim")
  6124. (synopsis "Multilingual input method framework")
  6125. (description "Uim is a multilingual input method library and environment.
  6126. It provides a simple, easily extensible and high code-quality input method
  6127. development platform, and useful input method environment for users of desktop
  6128. and embedded platforms.")
  6129. (license (list license:lgpl2.1+ ; scm/py.scm, pixmaps/*.{svg,png} (see pixmaps/README)
  6130. license:gpl2+ ; scm/pinyin-big5.scm
  6131. license:gpl3+ ; scm/elatin-rules.cm
  6132. license:public-domain ; scm/input-parse.scm, scm/match.scm
  6133. ;; gtk2/toolbar/eggtrayicon.{ch},
  6134. ;; qt3/chardict/kseparator.{cpp,h},
  6135. ;; qt3/pref/kseparator.{cpp,h}
  6136. license:lgpl2.0+
  6137. ;; pixmaps/*.{svg,png} (see pixmaps/README),
  6138. ;; all other files
  6139. license:bsd-3))))
  6140. (define-public uim-gtk
  6141. (package/inherit uim
  6142. (name "uim-gtk")
  6143. (inputs
  6144. `(("gtk" ,gtk+)
  6145. ("gtk" ,gtk+-2)
  6146. ,@(package-inputs uim)))
  6147. (synopsis "Multilingual input method framework (GTK+ support)")))
  6148. (define-public uim-qt
  6149. (package/inherit uim
  6150. (name "uim-qt")
  6151. (inputs
  6152. `(("qt" ,qtbase-5)
  6153. ("qtx11extras" ,qtx11extras)
  6154. ,@(package-inputs uim)))
  6155. (arguments
  6156. (substitute-keyword-arguments (package-arguments uim)
  6157. ((#:configure-flags configure-flags)
  6158. (append configure-flags (list "--with-qt5-immodule"
  6159. "--with-qt5")))))
  6160. (synopsis "Multilingual input method framework (Qt support)")))
  6161. (define-public keynav
  6162. (package
  6163. (name "keynav")
  6164. (version "0.20110708.0")
  6165. (source
  6166. (origin
  6167. (method url-fetch)
  6168. (uri (string-append
  6169. "http://http.debian.net/debian/pool/main/k/keynav/keynav_"
  6170. version ".orig.tar.gz"))
  6171. (file-name (string-append name "-" version ".tar.gz"))
  6172. (sha256
  6173. (base32
  6174. "1gizjhji3yspxxxvb90js3z1bv18rbf5phxg8rciixpj3cccff8z"))))
  6175. (build-system gnu-build-system)
  6176. (inputs
  6177. `(("cairo" ,cairo)
  6178. ("glib" ,glib)
  6179. ("libx11" ,libx11)
  6180. ("libxext" ,libxext)
  6181. ("libxinerama" ,libxinerama)
  6182. ("libxtst" ,libxtst)
  6183. ("xdotool" ,xdotool)))
  6184. (native-inputs
  6185. `(("pkg-config" ,pkg-config)))
  6186. (arguments
  6187. `(#:tests? #f ;No tests.
  6188. #:phases
  6189. (modify-phases %standard-phases
  6190. (add-after 'unpack 'setenv
  6191. (lambda _
  6192. (setenv "CC" (which "gcc"))
  6193. #t))
  6194. (add-after 'unpack 'patch-keynav
  6195. (lambda _
  6196. (substitute* "keynav.c"
  6197. (("xdo_symbol_map") "xdo_get_symbol_map")
  6198. (("xdo_window_setclass") "xdo_set_window_class")
  6199. (("xdo_window_get_active") "xdo_get_window_at_mouse")
  6200. (("xdo_click") "xdo_click_window")
  6201. (("xdo_mouseup") "xdo_mouse_up")
  6202. (("xdo_mousedown") "xdo_mouse_down")
  6203. (("xdo_mousemove") "xdo_move_mouse")
  6204. (("xdo_mousemove_relative") "xdo_move_mouse_relative")
  6205. (("xdo_mouselocation") "xdo_get_mouse_location")
  6206. (("xdo_mouse_wait_for_move_to") "xdo_wait_for_mouse_move_to")
  6207. (("xdo_keysequence_up") "xdo_send_keysequence_window_up")
  6208. (("xdo_keysequence_down") "xdo_send_keysequence_window_down"))
  6209. #t))
  6210. (delete 'configure)
  6211. (replace 'install
  6212. (lambda* (#:key outputs #:allow-other-keys)
  6213. (let ((out (assoc-ref outputs "out")))
  6214. (install-file "keynav" (string-append out "/bin"))
  6215. (install-file "keynavrc" (string-append out "/etc")))
  6216. #t)))))
  6217. (home-page "https://www.semicomplete.com/projects/keynav/")
  6218. (synopsis "Keyboard-driven mouse cursor mover")
  6219. (description
  6220. "Keynav makes your keyboard a fast mouse cursor mover. You can move the
  6221. cursor to any point on the screen with a few key strokes. It also simulates
  6222. mouse click. You can do everything mouse can do with a keyboard.")
  6223. (license license:bsd-3)))
  6224. (define-public transset
  6225. (package
  6226. (name "transset")
  6227. (version "1.0.2")
  6228. (source (origin
  6229. (method url-fetch)
  6230. (uri (string-append "https://www.x.org/releases/individual/app/"
  6231. name "-" version ".tar.gz"))
  6232. (sha256
  6233. (base32
  6234. "0rya202y87dwl35jnmq8hs3arzdrv5z4vf1xmi0py4rnmhdpszaw"))))
  6235. (build-system gnu-build-system)
  6236. (native-inputs
  6237. `(("pkg-config" ,pkg-config)))
  6238. (inputs `(("libxcomposite" ,libxcomposite)
  6239. ("libxdamage" ,libxdamage)
  6240. ("libxrender" ,libxrender)))
  6241. (synopsis "Set the transparency of X11 windows")
  6242. (description "@command{transset} is a simple program for X servers
  6243. supporting the XFIXES, DAMAGE, and COMPOSITE extensions. It lets the
  6244. user set the transparency on a window.")
  6245. (home-page "https://gitlab.freedesktop.org/xorg/app/transset")
  6246. (license license:x11)))
  6247. (define-public transset-df
  6248. (deprecated-package "transset-df" transset))
  6249. (define-public bdfresize
  6250. (package
  6251. (name "bdfresize")
  6252. (version "1.5-11")
  6253. (source (origin
  6254. ;; Former upstream at
  6255. ;; <http://openlab.ring.gr.jp/efont/dist/tools/bdfresize/>
  6256. ;; vanished so use Debian, which in practice is the new
  6257. ;; upstream.
  6258. (method git-fetch)
  6259. (uri (git-reference
  6260. (url "https://salsa.debian.org/debian/bdfresize.git")
  6261. (commit (string-append "debian/" version))))
  6262. (sha256
  6263. (base32
  6264. "0n3i29wicak8n10vkkippym8yw4ir8f7a263a8rwb8q16wqrxx85"))
  6265. (modules '((guix build utils)))
  6266. (snippet
  6267. '(begin
  6268. (for-each make-file-writable (find-files "."))
  6269. ;; Remove broken declaration.
  6270. (substitute* "charresize.c"
  6271. (("char\t\\*malloc\\(\\);")
  6272. ""))
  6273. ;; Remove old configury that doesn't support modern
  6274. ;; command-line options, new architectures, etc.
  6275. (for-each delete-file
  6276. '("configure" "install-sh"
  6277. "missing" "mkinstalldirs"))
  6278. #t))
  6279. (file-name (git-file-name name version))))
  6280. (build-system gnu-build-system)
  6281. (native-inputs
  6282. `(("pkg-config" ,pkg-config)
  6283. ("autoconf" ,autoconf)
  6284. ("automake" ,automake)))
  6285. (synopsis "Resize fonts in the BDF format")
  6286. (description
  6287. "This package provides @command{bdfresize}, a command to magnify or
  6288. reduce fonts in the Glyph Bitmap Distribution Format (BDF). It produces BDF
  6289. output.")
  6290. (home-page "https://tracker.debian.org/pkg/bdfresize")
  6291. (license license:gpl2+)) )
  6292. (define-public console-setup
  6293. (package
  6294. (name "console-setup")
  6295. (version "1.205")
  6296. (source
  6297. (origin
  6298. (method git-fetch)
  6299. (uri (git-reference
  6300. (url "https://salsa.debian.org/installer-team/console-setup.git")
  6301. (commit version)))
  6302. (sha256
  6303. (base32 "0sf560s14firyvzpgww79ydzc6p3jvjkbvsi8zsr5m3hr833w0ba"))
  6304. (file-name (git-file-name name version))))
  6305. (build-system gnu-build-system)
  6306. (arguments
  6307. '(#:make-flags
  6308. (let ((bash (assoc-ref %build-inputs "bash"))
  6309. (out (assoc-ref %outputs "out")))
  6310. (list (string-append "SHELL=" bash "/bin/bash")))
  6311. #:tests? #f ; no tests
  6312. #:phases
  6313. (modify-phases %standard-phases
  6314. (delete 'configure)
  6315. (add-after 'unpack 'patch-file-names
  6316. (lambda _
  6317. ;; 'ckbcomp' calls out to 'cat' (!). Give it the right file
  6318. ;; name.
  6319. (substitute* '("Keyboard/ckbcomp")
  6320. (("\"cat ")
  6321. (string-append "\"" (which "cat")
  6322. " ")))
  6323. #t))
  6324. (add-before 'build 'make-doubled-bdfs
  6325. (lambda* (#:key native-inputs inputs #:allow-other-keys)
  6326. (invoke "make" "-C" "Fonts"
  6327. "doubled_bdfs"
  6328. (string-append "SHELL="
  6329. (assoc-ref (or native-inputs inputs)
  6330. "bash")
  6331. "/bin/bash"))))
  6332. (replace 'install
  6333. (lambda* (#:key native-inputs inputs outputs #:allow-other-keys)
  6334. (let ((out (assoc-ref %outputs "out")))
  6335. (invoke "make" "install-linux"
  6336. (string-append "prefix=" out)
  6337. (string-append "SHELL="
  6338. (assoc-ref (or native-inputs inputs)
  6339. "bash")
  6340. "/bin/bash"))))))))
  6341. (native-inputs
  6342. `(("pkg-config" ,pkg-config)
  6343. ("bdftopcf" ,bdftopcf)
  6344. ("bdfresize" ,bdfresize)
  6345. ("sharutils" ,sharutils) ; for 'uuencode'
  6346. ("perl" ,perl)))
  6347. (inputs
  6348. `(("perl" ,perl))) ; used by 'ckbcomp'
  6349. (synopsis "Set up the Linux console font and keyboard")
  6350. (description
  6351. "console-setup provides the console with the same keyboard
  6352. configuration scheme that the X Window System has. In particular, the
  6353. @command{ckbcomp} program compiles an XKB keyboard description to a keymap
  6354. suitable for @command{loadkeys} or @command{kbdcontrol}. As a result, there
  6355. is no need to duplicate or change the console keyboard files just to make
  6356. simple customizations.
  6357. Besides the keyboard, the package also configures the font on the console. It
  6358. includes a rich collection of fonts and supports several languages that would
  6359. otherwise be unsupported on the console (such as Armenian, Georgian, Lao, and
  6360. Thai).")
  6361. (home-page "https://salsa.debian.org/installer-team/console-setup/")
  6362. ;; Most of the code is GPLv2+; the Expat license applies to 'setupcon' and
  6363. ;; 'ckbcomp-mini'. The installed precompiled keyboard files are covered
  6364. ;; by simple permissive licenses. See the 'COPYRIGHT' file.
  6365. (license (list license:gpl2+
  6366. license:expat))))
  6367. (define-public xcur2png
  6368. (package
  6369. (name "xcur2png")
  6370. (version "0.7.1")
  6371. (source
  6372. (origin
  6373. (method git-fetch)
  6374. (uri (git-reference
  6375. (url "https://github.com/eworm-de/xcur2png")
  6376. (commit version)))
  6377. (file-name (git-file-name name version))
  6378. (sha256
  6379. (base32 "0858wn2p14bxpv9lvaz2bz1rk6zk0g8zgxf8iy595m8fqv4q2fya"))))
  6380. (build-system gnu-build-system)
  6381. (native-inputs
  6382. `(("pkg-config" ,pkg-config)))
  6383. (inputs
  6384. `(("libpng" ,libpng)
  6385. ("libxcursor" ,libxcursor)))
  6386. (synopsis "Decode X cursors")
  6387. (description
  6388. "xcur2png is a program decomposes an X cursor into a set of PNG images and
  6389. a configuration file reusable by xcursorgen.")
  6390. (home-page "https://github.com/eworm-de/xcur2png")
  6391. (license license:gpl3+)))
  6392. (define-public gccmakedep
  6393. (package
  6394. (name "gccmakedep")
  6395. (version "1.0.3")
  6396. (source
  6397. (origin
  6398. (method url-fetch)
  6399. (uri (string-append "mirror://xorg/individual/util/gccmakedep-"
  6400. version ".tar.bz2"))
  6401. (sha256
  6402. (base32 "1r1fpy5ni8chbgx7j5sz0008fpb6vbazpy1nifgdhgijyzqxqxdj"))))
  6403. (build-system gnu-build-system)
  6404. (synopsis "Create dependencies in makefiles using 'gcc -M'")
  6405. (description
  6406. "@command{gccmakedep} is a deprecated program which calls @code{gcc -M}
  6407. to output Makefile rules describing the dependencies of each source file, so
  6408. that Make knows which object files must be recompiled when a dependency has
  6409. changed.")
  6410. (home-page "https://gitlab.freedesktop.org/xorg/util/gccmakedep")
  6411. (license license:x11)))
  6412. (define-public xdialog
  6413. (package
  6414. (name "xdialog")
  6415. (version "2.3.1")
  6416. (source (origin
  6417. (method url-fetch)
  6418. (uri (string-append "http://xdialog.free.fr/Xdialog-"
  6419. version ".tar.bz2"))
  6420. (sha256
  6421. (base32
  6422. "16jqparb33lfq4cvd9l3jgd7fq86fk9gv2ixc8vgqibid6cnhi0x"))))
  6423. (native-inputs
  6424. `(("pkg-config" ,pkg-config)))
  6425. (inputs
  6426. `(("glib" ,glib)
  6427. ("gettext" ,gettext-minimal)
  6428. ("gtk" ,gtk+-2)))
  6429. (arguments
  6430. `(#:configure-flags '("--with-gtk2")))
  6431. (build-system gnu-build-system)
  6432. (home-page "http://xdialog.free.fr/")
  6433. (synopsis "Convert a terminal program into a program with an X interface")
  6434. (description "X11 replacement for the text util dialog Xdialog is designed
  6435. to be a drop-in replacement for the dialog and cdialog programs. It converts
  6436. any terminal-based program into a program with an X interface. The dialogs
  6437. are easier to see and use, and Xdialog adds more functionality such as a help
  6438. button and box, a treeview, an editbox, file and directory selectors, a range
  6439. box, and a calendar. It uses GTK+, and will match your desktop theme.")
  6440. (license license:gpl2+)))
  6441. (define-public xvfb-run
  6442. (package
  6443. (name "xvfb-run")
  6444. (version "1.20.10-3")
  6445. (source
  6446. (origin
  6447. (method url-fetch)
  6448. (uri (string-append "mirror://debian/pool/main/x/xorg-server/"
  6449. "xorg-server_" version ".diff.gz"))
  6450. (sha256
  6451. (base32 "08gs9ni8ss8rw4n9cql1s8q05mj517vk1vm1varj1dsx75k4j25v"))))
  6452. (build-system gnu-build-system)
  6453. (arguments
  6454. `(#:phases
  6455. (modify-phases %standard-phases
  6456. (replace 'unpack
  6457. ;; Apply the source patch to an empty directory.
  6458. (lambda* (#:key inputs #:allow-other-keys)
  6459. (let* ((source (assoc-ref inputs "source"))
  6460. (diff.gz (basename source))
  6461. (diff (substring diff.gz 0 (string-rindex diff.gz #\.))))
  6462. (mkdir "source")
  6463. (chdir "source")
  6464. (copy-file source diff.gz)
  6465. (invoke "gunzip" diff.gz)
  6466. (invoke "patch" "-Np1" "-i" diff)
  6467. (chdir "debian/local"))))
  6468. (delete 'configure) ; nothing to configure
  6469. (replace 'build
  6470. (lambda _
  6471. (chmod "xvfb-run" #o755)
  6472. (substitute* "xvfb-run"
  6473. (("(\\(| )(fmt|stty|awk|cat|kill|getopt|mktemp|touch|rm|mcookie)"
  6474. _ prefix command)
  6475. (string-append prefix (which command)))
  6476. ;; These also feature in UI messages, so be more strict.
  6477. (("(AUTHFILE |command -v |exec )(Xvfb|xauth)"
  6478. _ prefix command)
  6479. (string-append prefix (which command))))))
  6480. (replace 'check
  6481. ;; There are no tests included. Here we test whether we can run
  6482. ;; a simple client and whether xvfb-run --help succeeds
  6483. ;; without xvfb-run itself relying on $PATH.
  6484. (lambda* (#:key tests? #:allow-other-keys)
  6485. (when tests?
  6486. (let ((old-PATH (getenv "PATH"))
  6487. (xterm (which "xterm")))
  6488. (unsetenv "PATH")
  6489. (invoke "./xvfb-run" xterm "-e" "true")
  6490. (invoke "./xvfb-run" "--help")
  6491. (setenv "PATH" old-PATH)))))
  6492. (replace 'install
  6493. (lambda* (#:key outputs #:allow-other-keys)
  6494. (let* ((out (assoc-ref outputs "out"))
  6495. (bin (string-append out "/bin"))
  6496. (man (string-append out "/share/man/man1")))
  6497. (install-file "xvfb-run" bin)
  6498. (install-file "xvfb-run.1" man)))))))
  6499. (inputs
  6500. `(("util-linux" ,util-linux) ; for getopt
  6501. ("xauth" ,xauth)
  6502. ("xorg-server" ,xorg-server)))
  6503. (native-inputs
  6504. `(("xterm" ,xterm))) ; for the test
  6505. ;; This script is not part of the upstream xorg-server. It is provided only
  6506. ;; as a patch added to Debian's package.
  6507. (home-page "https://packages.debian.org/sid/xorg-server-source")
  6508. (synopsis "Run X11 client or command in a virtual X server environment")
  6509. (description
  6510. "The @command{xvfb-run} wrapper simplifies running commands and scripts
  6511. within a virtual X server environment. It sets up an X authority file or uses
  6512. an existing user-specified one, writes a cookie to it, and then starts the
  6513. @command{Xvfb} X server as a background process. It also takes care of killing
  6514. the server and cleaning up before returning the exit status of the command.")
  6515. (license (list license:x11 ; the script
  6516. license:gpl2+)))) ; the man page
  6517. (define-public setroot
  6518. (package
  6519. (name "setroot")
  6520. (version "2.0.2")
  6521. (source
  6522. (origin
  6523. (method git-fetch)
  6524. (uri (git-reference
  6525. (url "https://github.com/ttzhou/setroot")
  6526. (commit (string-append "v" version))))
  6527. (file-name (git-file-name name version))
  6528. (sha256
  6529. (base32 "0w95828v0splk7bj5kfacp4pq6wxpyamvyjmahyvn5hc3ycq21mq"))))
  6530. (build-system gnu-build-system)
  6531. (arguments
  6532. `(#:make-flags
  6533. (list (string-append "CC=" ,(cc-for-target))
  6534. (string-append "DESTDIR=" (assoc-ref %outputs "out"))
  6535. "PREFIX="
  6536. "xinerama=1")
  6537. #:tests? #f ; no tests
  6538. #:phases
  6539. (modify-phases %standard-phases
  6540. (delete 'configure))))
  6541. (inputs
  6542. `(("imlib2" ,imlib2)
  6543. ("libx11" ,libx11)
  6544. ("libxinerama" ,libxinerama)))
  6545. (home-page "https://github.com/ttzhou/setroot")
  6546. (synopsis "Simple X background setter inspired by imlibsetroot and feh")
  6547. (description "Setroot is a lightweight X background setter with feh's
  6548. syntax without its image viewing capabilities. It supports multiple monitors
  6549. and can restore previously set wallpapers and options.")
  6550. (license license:gpl3+)))