123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558 |
- #!/usr/bin/env bash
- # screenFetch - a CLI Bash script to show system/theme info in screenshots
- # Copyright (c) 2010-2019 Brett Bohnenkamper <kittykatt@kittykatt.us>
- # This program is free software: you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation, either version 3 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program. If not, see <http://www.gnu.org/licenses/>.
- # Yes, I do realize some of this is horribly ugly coding. Any ideas/suggestions would be
- # appreciated by emailing me or by stopping by http://github.com/KittyKatt/screenFetch. You
- # could also drop in on the IRC channel at irc://irc.rizon.net/screenFetch.
- # to put forth suggestions/ideas. Thank you.
- # Requires: bash 4.0+
- # Optional dependencies: xorg-xdpyinfo (resoluton detection)
- # scrot (screenshot taking)
- # curl (screenshot uploading)
- #LANG=C
- #LANGUAGE=C
- #LC_ALL=C
- scriptVersion="3.9.1"
- ######################
- # Settings for fetcher
- ######################
- # This setting controls what ASCII logo is displayed.
- # distro="Linux"
- # This sets the information to be displayed. Available: distro, Kernel, DE, WM, Win_theme, Theme, Icons, Font, Background, ASCII.
- # To get just the information, and not a text-art logo, you would take "ASCII" out of the below variable.
- valid_display=(
- 'distro'
- 'host'
- 'kernel'
- 'uptime'
- 'pkgs'
- 'shell'
- 'res'
- 'de'
- 'wm'
- 'wmtheme'
- 'gtk'
- 'disk'
- 'cpu'
- 'gpu'
- 'mem'
- )
- display=(
- 'distro'
- 'host'
- 'kernel'
- 'uptime'
- 'pkgs'
- 'shell'
- 'res'
- 'de'
- 'wm'
- 'wmtheme'
- 'gtk'
- 'cpu'
- 'disk'
- 'gpu'
- 'mem'
- )
- # Display Type: ASCII or Text
- display_type="ASCII"
- # Plain logo
- display_logo="no"
- # Colors to use for the information found. These are set below according to distribution.
- # If you would like to set your OWN color scheme for these, uncomment the lines below and edit them to your heart's content.
- # textcolor="\e[0m"
- # labelcolor="\e[1;34m"
- # Array: WM Process Names
- # Order matters!
- # Removed WM's: compiz
- wmnames=(
- 'fluxbox'
- 'openbox'
- 'blackbox'
- 'xfwm4'
- 'metacity'
- 'kwin'
- 'twin'
- 'icewm'
- 'pekwm'
- 'flwm'
- 'flwm_topside'
- 'fvwm'
- 'dwm'
- 'awesome'
- 'wmaker'
- 'stumpwm'
- 'musca'
- 'xmonad.*'
- 'i3'
- 'ratpoison'
- 'scrotwm'
- 'spectrwm'
- 'wmfs'
- 'wmii'
- 'beryl'
- 'subtle'
- 'e16'
- 'enlightenment'
- 'sawfish'
- 'emerald'
- 'monsterwm'
- 'dminiwm'
- 'compiz'
- 'Finder'
- 'herbstluftwm'
- 'howm'
- 'notion'
- 'bspwm'
- 'cinnamon'
- '2bwm'
- 'echinus'
- 'swm'
- 'budgie-wm'
- 'dtwm'
- '9wm'
- 'chromeos-wm'
- 'deepin-wm'
- 'sway'
- 'mwm'
- )
- # Array with full Ubuntu release codenames, used so that the script will display
- # i.e. "Ubuntu 18.04 LTS (Bionic Beaver)" instead of "Ubuntu 18.04 bionic"
- ubuntu_codenames=(
- '(Warty Warthog)' # 4.10
- '(Hoary Hedgehog)' # 5.04
- '(Breezy Badger)' # 5.10
- 'LTS (Dapper Drake)' # 6.06
- '(Edgy Eft)' # 6.10
- '(Feisty Fawn)' # 7.04
- '(Gutsy Gibbon)' # 7.10
- 'LTS (Hardy Heron)' # 8.04
- '(Intrepid Ibex)' # 8.10
- '(Jaunty Jackalope)' # 9.04
- '(Karmic Koala)' # 9.10
- 'LTS (Lucid Lynx)' # 10.04
- '(Maverick Meerkat)' # 10.10
- '(Natty Narwhal)' # 11.04
- '(Oneiric Ocelot)' # 11.10
- 'LTS (Precise Pangolin)' # 12.04
- '(Quantal Quetzal)' # 12.10
- '(Raring Ringtail)' # 13.04
- '(Saucy Salamander)' # 13.10
- 'LTS (Trusty Tahr)' # 14.04
- '(Utopic Unicorn)' # 14.10
- '(Vivid Vervet)' # 15.04
- '(Wily Werewolf)' # 15.10
- 'LTS (Xenial Xerus)' # 16.04
- '(Yakkety Yak)' # 16.10
- '(Zesty Zapus)' # 17.04
- '(Artful Aardvark)' # 17.10
- 'LTS (Bionic Beaver)' # 18.04
- '(Cosmic Cuttlefish)' # 18.10
- '(Disco Dingo)' # 19.04
- '(Eoan Ermine)' # 19.10
- 'LTS (Focal Fossa)' # 20.04
- '(Groovy Gorilla)' # 20.10
- '(Hirsute Hippo)' # 21.04
- )
- # Screenshot Settings
- # This setting lets the script know if you want to take a screenshot or not. 1=Yes 0=No
- screenshot=
- # This setting lets the script know if you want to upload the screenshot to a filehost. 1=Yes 0=No
- upload=
- # This setting lets the script know where you would like to upload the file to.
- # Valid hosts are: teknik, mediacrush, imgur, hmp, and a configurable local.
- uploadLoc=
- # You can specify a custom screenshot command here. Just uncomment and edit.
- # Otherwise, we'll be using the default command: scrot -cd3.
- # screenCommand="scrot -cd5"
- shotfile=$(printf "screenFetch-%s.png" "$(date +'%Y-%m-%d_%H-%M-%S')")
- # Verbose Setting - Set to 1 for verbose output.
- verbosity=
- # Custom lines example:
- # screenfetch -C "IP 'WAN'=192.168.0.12,IP 'BRIDGED'=10.1.1.10,IP 'HOST-ONLY'=172.16.25.4,,Web terminal interface=http://10.1.1.10"
- #
- #... will produce:
- #
- # IP 'WAN': 192.168.0.12
- # IP 'BRIDGED': 10.1.1.10
- # IP 'HOST-ONLY': 172.16.25.4
- #
- # Web terminal interface: http://10.1.1.10
- customlines () {
- OLD_IFS="${IFS}"
- IFS=,
- for custom_line in ${custom_lines_string} ; do
- while read -r key; do
- read -r value
- if [[ -z "${key}" ]]; then
- custom="" # print an empty line
- else
- custom=$(echo -e " ${labelcolor}${key}: ${textcolor}${value}");
- fi
- out_array=( "${out_array[@]}" "${custom}" ); ((display_index++));
- done <<< "$(echo "${custom_line}" | tr "=" "\n")"
- done
- IFS="${OLD_IFS}"
- }
- #############################################
- #### CODE No need to edit past here CODE ####
- #############################################
- # https://github.com/KittyKatt/screenFetch/issues/549
- if [[ "${OSTYPE}" =~ "linux" || "${OSTYPE}" == "gnu" ]]; then
- # issue seems to affect Ubuntu; add LSB directories if it appears on other distros too
- export GIO_EXTRA_MODULES="/usr/lib/x86_64-linux-gnu/gio/modules:/usr/lib/i686-linux-gnu/gio/modules:$GIO_EXTRA_MODULES"
- fi
- #########################################
- # Static Variables and Common Functions #
- #########################################
- c0=$'\033[0m' # Reset Text
- bold=$'\033[1m' # Bold Text
- underline=$'\033[4m' # Underline Text
- display_index=0
- # User options
- gtk_2line="no"
- # Static Color Definitions
- colorize () {
- printf $'\033[0m\033[38;5;%sm' "$1"
- }
- getColor () {
- local tmp_color=""
- if [[ -n "$1" ]]; then
- if [[ ${BASH_VERSINFO[0]} -ge 4 ]]; then
- if [[ ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -gt 1 ]] || [[ ${BASH_VERSINFO[0]} -gt 4 ]]; then
- tmp_color=${1,,}
- else
- tmp_color="$(tr '[:upper:]' '[:lower:]' <<< "${1}")"
- fi
- else
- tmp_color="$(tr '[:upper:]' '[:lower:]' <<< "${1}")"
- fi
- case "${tmp_color}" in
- # Standards
- 'black') color_ret='\033[0m\033[30m';;
- 'red') color_ret='\033[0m\033[31m';;
- 'green') color_ret='\033[0m\033[32m';;
- 'brown') color_ret='\033[0m\033[33m';;
- 'blue') color_ret='\033[0m\033[34m';;
- 'purple') color_ret='\033[0m\033[35m';;
- 'cyan') color_ret='\033[0m\033[36m';;
- 'yellow') color_ret='\033[0m\033[1;33m';;
- 'white') color_ret='\033[0m\033[1;37m';;
- # Bolds
- 'dark grey'|'dark gray') color_ret='\033[0m\033[1;30m';;
- 'light red') color_ret='\033[0m\033[1;31m';;
- 'light green') color_ret='\033[0m\033[1;32m';;
- 'light blue') color_ret='\033[0m\033[1;34m';;
- 'light purple') color_ret='\033[0m\033[1;35m';;
- 'light cyan') color_ret='\033[0m\033[1;36m';;
- 'light grey'|'light gray') color_ret='\033[0m\033[37m';;
- # Some 256 colors
- 'orange') color_ret="$(colorize '202')";; #DarkOrange
- 'light orange') color_ret="$(colorize '214')";; #Orange1
- # HaikuOS
- 'black_haiku') color_ret="$(colorize '7')";;
- #ROSA color
- 'rosa_blue') color_ret='\033[01;38;05;25m';;
- # ArcoLinux
- 'arco_blue') color_ret='\033[1;38;05;111m';;
- esac
- [[ -n "${color_ret}" ]] && echo "${color_ret}"
- fi
- }
- verboseOut () {
- if [[ "$verbosity" -eq "1" ]]; then
- printf '\033[1;31m:: \033[0m%s\n' "$1"
- fi
- }
- errorOut () {
- printf '\033[1;37m[[ \033[1;31m! \033[1;37m]] \033[0m%s\n' "$1"
- }
- stderrOut () {
- while IFS='' read -r line; do
- printf '\033[1;37m[[ \033[1;31m! \033[1;37m]] \033[0m%s\n' "$line"
- done
- }
- ####################
- # Color Defines
- ####################
- colorNumberToCode () {
- local number="$1"
- if [[ "${number}" == "na" ]]; then
- unset code
- elif [[ $(tput colors) -eq "256" ]]; then
- code=$(colorize "${number}")
- else
- case "$number" in
- 0|00) code=$(getColor 'black');;
- 1|01) code=$(getColor 'red');;
- 2|02) code=$(getColor 'green');;
- 3|03) code=$(getColor 'brown');;
- 4|04) code=$(getColor 'blue');;
- 5|05) code=$(getColor 'purple');;
- 6|06) code=$(getColor 'cyan');;
- 7|07) code=$(getColor 'light grey');;
- 8|08) code=$(getColor 'dark grey');;
- 9|09) code=$(getColor 'light red');;
- 10) code=$(getColor 'light green');;
- 11) code=$(getColor 'yellow');;
- 12) code=$(getColor 'light blue');;
- 13) code=$(getColor 'light purple');;
- 14) code=$(getColor 'light cyan');;
- 15) code=$(getColor 'white');;
- *) unset code;;
- esac
- fi
- echo -n "${code}"
- }
- detectColors () {
- my_colors=$(sed 's/^,/na,/;s/,$/,na/;s/,/ /' <<< "${OPTARG}")
- my_lcolor=$(awk -F' ' '{print $1}' <<< "${my_colors}")
- my_lcolor=$(colorNumberToCode "${my_lcolor}")
- my_hcolor=$(awk -F' ' '{print $2}' <<< "${my_colors}")
- my_hcolor=$(colorNumberToCode "${my_hcolor}")
- }
- supported_distros="ALDOS, Alpine Linux, Amazon Linux, Antergos, Arch Linux (Old and Current Logos), Arch Linux 32, ArcoLinux, Artix Linux, \
- blackPanther OS, BLAG, BunsenLabs, CentOS, Chakra, Chapeau, Chrome OS, Chromium OS, CrunchBang, CRUX, \
- Debian, Deepin, DesaOS,Devuan, Dragora, DraugerOS, elementary OS, EuroLinux, Evolve OS, Sulin, Exherbo, Fedora, Frugalware, Fuduntu, Funtoo, \
- Fux, Gentoo, gNewSense, Guix System, Hyperbola GNU/Linux-libre, januslinux, Jiyuu Linux, Kali Linux, KaOS, KDE neon, Kogaion, Korora, \
- LinuxDeepin, Linux Mint, LMDE, Logos, Mageia, Mandriva/Mandrake, Manjaro, Mer, Netrunner, NixOS, OBRevenge, openSUSE, \
- OS Elbrus, Oracle Linux, Parabola GNU/Linux-libre, Pardus, Parrot Security, PCLinuxOS, PeppermintOS, Proxmox VE, PureOS, Qubes OS, \
- Raspbian, Red Hat Enterprise Linux, ROSA, Sabayon, SailfishOS, Scientific Linux, Siduction, Slackware, Solus, Source Mage GNU/Linux, \
- SparkyLinux, SteamOS, SUSE Linux Enterprise, SwagArch, TinyCore, Trisquel, Ubuntu, Viperr, Void and Zorin OS and EndeavourOS"
- supported_other="Dragonfly/Free/Open/Net BSD, Haiku, macOS, Windows+Cygwin and Windows+MSYS2."
- supported_dms="KDE, GNOME, Unity, Xfce, LXDE, Cinnamon, MATE, Deepin, CDE, RazorQt and Trinity."
- supported_wms="2bwm, 9wm, Awesome, Beryl, Blackbox, Cinnamon, chromeos-wm, Compiz, deepin-wm, \
- dminiwm, dwm, dtwm, E16, E17, echinus, Emerald, FluxBox, FLWM, FVWM, herbstluftwm, howm, IceWM, KWin, \
- Metacity, monsterwm, Musca, Gala, Mutter, Muffin, Notion, OpenBox, PekWM, Ratpoison, Sawfish, ScrotWM, SpectrWM, \
- StumpWM, subtle, sway, TWin, WindowMaker, WMFS, wmii, Xfwm4, XMonad and i3."
- displayHelp () {
- echo "${underline}Usage${c0}:"
- echo " ${0} [OPTIONAL FLAGS]"
- echo
- echo "screenFetch - a CLI Bash script to show system/theme info in screenshots."
- echo
- echo "${underline}Supported GNU/Linux Distributions${c0}:"
- echo "${supported_distros}" | fold -s | sed 's/^/\t/g'
- echo
- echo "${underline}Other Supported Systems${c0}:"
- echo "${supported_other}" | fold -s | sed 's/^/\t/g'
- echo
- echo "${underline}Supported Desktop Managers${c0}:"
- echo "${supported_dms}" | fold -s | sed 's/^/\t/g'
- echo
- echo "${underline}Supported Window Managers${c0}:"
- echo "${supported_wms}" | fold -s | sed 's/^/\t/g'
- echo
- echo "${underline}Supported Information Displays${c0}:"
- echo "${valid_display[@]}" | fold -s | sed 's/^/\t/g'
- echo
- echo "${underline}Options${c0}:"
- echo " ${bold}-v${c0} Verbose output."
- echo " ${bold}-o 'OPTIONS'${c0} Allows for setting script variables on the"
- echo " command line. Must be in the following format..."
- echo " 'OPTION1=\"OPTIONARG1\";OPTION2=\"OPTIONARG2\"'"
- echo " ${bold}-d '+var;-var;var'${c0} Allows for setting what information is displayed"
- echo " on the command line. You can add displays with +var,var. You"
- echo " can delete displays with -var,var. Setting without + or - will"
- echo " set display to that explicit combination. Add and delete statements"
- echo " may be used in conjunction by placing a ; between them as so:"
- echo " +var,var,var;-var,var. See above to find supported display names."
- echo " ${bold}-n${c0} Do not display ASCII distribution logo."
- echo " ${bold}-L${c0} Display ASCII distribution logo only."
- echo " ${bold}-N${c0} Strip all color from output."
- echo " ${bold}-w${c0} Wrap long lines."
- echo " ${bold}-t${c0} Truncate output based on terminal width (Experimental!)."
- echo " ${bold}-p${c0} Portrait output."
- echo " ${bold}-s [-u IMGHOST]${c0} Using this flag tells the script that you want it"
- echo " to take a screenshot. Use the -u flag if you would like"
- echo " to upload the screenshots to one of the pre-configured"
- echo " locations. These include: teknik, imgur, mediacrush and hmp."
- echo " ${bold}-c string${c0} You may change the outputted colors with -c. The format is"
- echo " as follows: [0-9][0-9],[0-9][0-9]. The first argument controls the"
- echo " ASCII logo colors and the label colors. The second argument"
- echo " controls the colors of the information found. One argument may be"
- echo " used without the other. For terminals supporting 256 colors argument"
- echo " may also contain other terminal control codes for bold, underline etc."
- echo " separated by semicolon. For example -c \"4;1,1;2\" will produce bold"
- echo " blue and dim red."
- echo " ${bold}-a 'PATH'${c0} You can specify a custom ASCII art by passing the path"
- echo " to a Bash script, defining \`startline\` and \`fulloutput\`"
- echo " variables, and optionally \`labelcolor\` and \`textcolor\`."
- echo " See the \`asciiText\` function in the source code for more"
- echo " information on the variables format."
- echo " ${bold}-S 'COMMAND'${c0} Here you can specify a custom screenshot command for"
- echo " the script to execute. Surrounding quotes are required."
- echo " ${bold}-D 'DISTRO'${c0} Here you can specify your distribution for the script"
- echo " to use. Surrounding quotes are required."
- echo " ${bold}-A 'DISTRO'${c0} Here you can specify the distribution art that you want"
- echo " displayed. This is for when you want your distro"
- echo " detected but want to display a different logo."
- echo " ${bold}-E${c0} Suppress output of errors."
- echo " ${bold}-C${c0} Add custom (extra) lines."
- echo " For example:"
- echo " screenfetch -C 'IP WAN=192.168.0.12,IP BRIDGED=10.1.1.10'"
- echo " ... will add two extra lines:"
- echo " IP WAN: 192.168.0.12"
- echo " IP BRIDGED: 10.1.1.10"
- echo " ${bold}-V, --version${c0} Display current script version."
- echo " ${bold}-h, --help${c0} Display this help."
- }
- displayVersion () {
- echo "${underline}screenFetch${c0} - Version ${scriptVersion}"
- echo "Created by and licensed to Brett Bohnenkamper <kittykatt@kittykatt.us>"
- echo "OS X porting done almost solely by shrx (https://github.com/shrx) and John D. Duncan, III (https://github.com/JohnDDuncanIII)."
- echo
- echo "This is free software; see the source for copying conditions. There is NO warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
- }
- #####################
- # Begin Flags Phase
- #####################
- case $1 in
- --help) displayHelp; exit 0;;
- --version) displayVersion; exit 0;;
- esac
- while getopts ":hsu:evVEnLNtlS:A:D:o:c:d:pa:w:C:" flags; do
- case $flags in
- h) displayHelp; exit 0 ;;
- s) screenshot='1' ;;
- S) screenCommand="${OPTARG}" ;;
- u) upload='1'; uploadLoc="${OPTARG}" ;;
- v) verbosity=1 ;;
- V) displayVersion; exit 0 ;;
- E) errorSuppress='1' ;;
- D) distro="${OPTARG}" ;;
- A) asc_distro="${OPTARG}" ;;
- t) truncateSet='Yes' ;;
- n) display_type='Text' ;;
- L) display_type='ASCII'; display_logo='Yes' ;;
- o) overrideOpts="${OPTARG}" ;;
- c) detectColors "${OPTARGS}" ;;
- d) overrideDisplay="${OPTARG}" ;;
- N) no_color='1' ;;
- p) portraitSet='Yes' ;;
- a) art="${OPTARG}" ;;
- w) lineWrap='Yes' ;;
- C) custom_lines_string="${OPTARG}" ;;
- :) errorOut "Error: You're missing an argument somewhere. Exiting."; exit 1 ;;
- ?) errorOut "Error: Invalid flag somewhere. Exiting."; exit 1 ;;
- *) errorOut "Error"; exit 1 ;;
- esac
- done
- ###################
- # End Flags Phase
- ###################
- ############################
- # Override Options/Display
- ############################
- if [[ "$overrideOpts" ]]; then
- verboseOut "Found 'o' flag in syntax. Overriding some script variables..."
- eval "${overrideOpts}"
- fi
- #########################
- # Begin Detection Phase
- #########################
- # Distro Detection - Begin
- detectdistro () {
- local distro_detect=""
- if [[ -z "${distro}" ]]; then
- distro="Unknown"
- # LSB Release or MCST Version Check
- if [[ -e "/etc/mcst_version" ]]; then
- distro="OS Elbrus"
- distro_release="$(tail -n 1 /etc/mcst_version)"
- if [[ -n ${distro_release} ]]; then
- distro_more="$distro_release"
- fi
- elif type -p lsb_release >/dev/null 2>&1; then
- # read distro_detect distro_release distro_codename <<< $(lsb_release -sirc)
- #OLD_IFS=$IFS
- #IFS=" "
- #read -r -a distro_detect <<< "$(lsb_release -sirc)"
- #IFS=$OLD_IFS
- #if [[ ${#distro_detect[@]} -eq 3 ]]; then
- # distro_codename=${distro_detect[2]}
- # distro_release=${distro_detect[1]}
- # distro_detect=${distro_detect[0]}
- #else
- # for i in "${!distro_detect[@]}"; do
- # if [[ ${distro_detect[$i]} =~ ^[[:digit:]]+((.[[:digit:]]+|[[:digit:]]+|)+)$ ]]; then
- # distro_release=${distro_detect[$i]}
- # distro_codename=${distro_detect[*]:$((i+1))}
- # distro_detect=${distro_detect[*]:0:${i}}
- # break 1
- # elif [[ ${distro_detect[$i]} =~ [Nn]/[Aa] || ${distro_detect[$i]} == "rolling" ]]; then
- # distro_release=${distro_detect[$i]}
- # distro_codename=${distro_detect[*]:$((i+1))}
- # distro_detect=${distro_detect[*]:0:${i}}
- # break 1
- # fi
- # done
- #fi
- distro_detect="$(lsb_release -si)"
- distro_release="$(lsb_release -sr)"
- distro_codename="$(lsb_release -sc)"
- case "${distro_detect}" in
- "archlinux"|"Arch Linux"|"arch"|"Arch"|"archarm")
- distro="Arch Linux"
- distro_release="n/a"
- if [ -f /etc/os-release ]; then
- os_release="/etc/os-release";
- elif [ -f /usr/lib/os-release ]; then
- os_release="/usr/lib/os-release";
- fi
- if [[ -n ${os_release} ]]; then
- if grep -q 'antergos' /etc/os-release; then
- distro="Antergos"
- distro_release="n/a"
- fi
- if grep -q -i 'logos' /etc/os-release; then
- distro="Logos"
- distro_release="n/a"
- fi
- if grep -q -i 'swagarch' /etc/os-release; then
- distro="SwagArch"
- distro_release="n/a"
- fi
- if grep -q -i 'obrevenge' /etc/os-release; then
- distro="OBRevenge"
- distro_release="n/a"
- fi
- fi
- ;;
- "ALDOS"|"Aldos")
- distro="ALDOS"
- ;;
- "ArcoLinux")
- distro="ArcoLinux"
- distro_release="n/a"
- ;;
- "artixlinux"|"Artix Linux"|"artix"|"Artix"|"Artix release")
- distro="Artix"
- ;;
- "blackPantherOS"|"blackPanther"|"blackpanther"|"blackpantheros")
- distro=$(source /etc/lsb-release; echo "$DISTRIB_ID")
- distro_release=$(source /etc/lsb-release; echo "$DISTRIB_RELEASE")
- distro_codename=$(source /etc/lsb-release; echo "$DISTRIB_CODENAME")
- ;;
- "BLAG")
- distro="BLAG"
- distro_more="$(head -n1 /etc/fedora-release)"
- ;;
- "Chakra")
- distro="Chakra"
- distro_release=""
- ;;
- "BunsenLabs")
- distro=$(source /etc/lsb-release; echo "$DISTRIB_ID")
- distro_release=$(source /etc/lsb-release; echo "$DISTRIB_RELEASE")
- distro_codename=$(source /etc/lsb-release; echo "$DISTRIB_CODENAME")
- ;;
- "Debian")
- if [[ -f /etc/crunchbang-lsb-release || -f /etc/lsb-release-crunchbang ]]; then
- distro="CrunchBang"
- distro_release=$(awk -F'=' '/^DISTRIB_RELEASE=/ {print $2}' /etc/lsb-release-crunchbang)
- distro_codename=$(awk -F'=' '/^DISTRIB_DESCRIPTION=/ {print $2}' /etc/lsb-release-crunchbang)
- elif [[ -f /etc/siduction-version ]]; then
- distro="Siduction"
- distro_release="(Debian Sid)"
- distro_codename=""
- elif [[ -f /usr/bin/pveversion ]]; then
- distro="Proxmox VE"
- distro_codename="n/a"
- distro_release="$(/usr/bin/pveversion | grep -oP 'pve-manager\/\K\d+\.\d+')"
- elif [[ -f /etc/os-release ]]; then
- if grep -q -i 'Raspbian' /etc/os-release ; then
- distro="Raspbian"
- distro_release=$(awk -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release)
- elif grep -q -i 'BlankOn' /etc/os-release ; then
- distro='BlankOn'
- distro_release=$(awk -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release)
- else
- distro="Debian"
- fi
- else
- distro="Debian"
- fi
- ;;
- "DraugerOS")
- distro = "DraugerOS"
- fake_distro="${distro}"
- ;;
- "elementary"|"elementary OS")
- distro="elementary OS"
- ;;
- "EvolveOS")
- distro="Evolve OS"
- ;;
- "Sulin")
- distro="Sulin"
- distro_release=$(awk -F'=' '/^ID_LIKE=/ {print $2}' /etc/os-release)
- distro_codename="Roolling donkey" # this is not wrong :D
- ;;
- "KaOS"|"kaos")
- distro="KaOS"
- ;;
- "frugalware")
- distro="Frugalware"
- distro_codename=null
- distro_release=null
- ;;
- "Fuduntu")
- distro="Fuduntu"
- distro_codename=null
- ;;
- "Fux")
- distro="Fux"
- distro_codename=null
- ;;
- "Gentoo")
- if [[ "$(lsb_release -sd)" =~ "Funtoo" ]]; then
- distro="Funtoo"
- else
- distro="Gentoo"
- fi
- #detecting release stable/testing/experimental
- if [[ -f /etc/portage/make.conf ]]; then
- source /etc/portage/make.conf
- elif [[ -d /etc/portage/make.conf ]]; then
- source /etc/portage/make.conf/*
- fi
- case $ACCEPT_KEYWORDS in
- [a-z]*) distro_release=stable ;;
- ~*) distro_release=testing ;;
- '**') distro_release=experimental ;; #experimental usually includes git-versions.
- esac
- ;;
- "Hyperbola GNU/Linux-libre"|"Hyperbola")
- distro="Hyperbola GNU/Linux-libre"
- distro_codename="n/a"
- distro_release="n/a"
- ;;
- "januslinux"|"janus")
- distro="januslinux"
- ;;
- "LinuxDeepin")
- distro="LinuxDeepin"
- distro_codename=null
- ;;
- "Uos")
- distro="Uos"
- distro_codename=null
- ;;
- "Kali"|"Debian Kali Linux")
- distro="Kali Linux"
- if [[ "${distro_codename}" =~ "kali-rolling" ]]; then
- distro_codename="n/a"
- distro_release="n/a"
- fi
- ;;
- "Lunar Linux"|"lunar")
- distro="Lunar Linux"
- ;;
- "MandrivaLinux")
- distro="Mandriva"
- case "${distro_codename}" in
- "turtle"|"Henry_Farman"|"Farman"|"Adelie"|"pauillac")
- distro="Mandriva-${distro_release}"
- distro_codename=null
- ;;
- esac
- ;;
- "ManjaroLinux")
- distro="Manjaro"
- ;;
- "Mer")
- distro="Mer"
- if [[ -f /etc/os-release ]]; then
- if grep -q 'SailfishOS' /etc/os-release; then
- distro="SailfishOS"
- distro_codename="$(grep 'VERSION=' /etc/os-release | cut -d '(' -f2 | cut -d ')' -f1)"
- distro_release="$(awk -F'=' '/^VERSION=/ {print $2}' /etc/os-release)"
- fi
- fi
- ;;
- "neon"|"KDE neon")
- distro="KDE neon"
- distro_codename="n/a"
- distro_release="n/a"
- if [[ -f /etc/issue ]]; then
- if grep -q '^KDE neon' /etc/issue ; then
- distro_release="$(grep '^KDE neon' /etc/issue | cut -d ' ' -f3)"
- fi
- fi
- ;;
- "Ol"|"ol"|"Oracle Linux")
- distro="Oracle Linux"
- [ -f /etc/oracle-release ] && distro_release="$(sed 's/Oracle Linux //' /etc/oracle-release)"
- ;;
- "LinuxMint")
- distro="Mint"
- if [[ "${distro_codename}" == "debian" ]]; then
- distro="LMDE"
- distro_codename="n/a"
- distro_release="n/a"
- #adding support for LMDE 3
- elif [[ "$(lsb_release -sd)" =~ "LMDE" ]]; then
- distro="LMDE"
- fi
- ;;
- "openSUSE"|"openSUSE project"|"SUSE LINUX" | "SUSE")
- distro="openSUSE"
- if [ -f /etc/os-release ]; then
- if grep -q -i 'SUSE Linux Enterprise' /etc/os-release ; then
- distro="SUSE Linux Enterprise"
- distro_codename="n/a"
- distro_release=$(awk -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"')
- fi
- fi
- if [[ "${distro_codename}" == "Tumbleweed" ]]; then
- distro_release="n/a"
- fi
- ;;
- "Parabola GNU/Linux-libre"|"Parabola")
- distro="Parabola GNU/Linux-libre"
- distro_codename="n/a"
- distro_release="n/a"
- ;;
- "Parrot"|"Parrot Security")
- distro="Parrot Security"
- ;;
- "PCLinuxOS")
- distro="PCLinuxOS"
- distro_codename="n/a"
- distro_release="n/a"
- ;;
- "Peppermint")
- distro="Peppermint"
- distro_codename=null
- ;;
- "rhel")
- distro="Red Hat Enterprise Linux"
- ;;
- "RosaDesktopFresh")
- distro="ROSA"
- distro_release=$(grep 'VERSION=' /etc/os-release | cut -d ' ' -f3 | cut -d "\"" -f1)
- distro_codename=$(grep 'PRETTY_NAME=' /etc/os-release | cut -d ' ' -f4,4)
- ;;
- "SailfishOS")
- distro="SailfishOS"
- if [[ -f /etc/os-release ]]; then
- distro_codename="$(grep 'VERSION=' /etc/os-release | cut -d '(' -f2 | cut -d ')' -f1)"
- distro_release="$(awk -F'=' '/^VERSION=/ {print $2}' /etc/os-release)"
- fi
- ;;
- "Sparky"|"SparkyLinux")
- distro="SparkyLinux"
- ;;
- "Ubuntu")
- for each in "${ubuntu_codenames[@]}"; do
- if [[ "${each,,}" =~ "${distro_codename,,}" ]]; then
- distro_codename="$each"
- fi
- done
- ;;
- "Viperr")
- distro="Viperr"
- distro_codename=null
- ;;
- "Void"|"VoidLinux")
- distro="Void Linux"
- distro_codename=""
- distro_release=""
- ;;
- "Zorin")
- distro="Zorin OS"
- distro_codename=""
- ;;
- *)
- if [ "x$(printf "${distro_detect}" | od -t x1 | sed -e 's/^\w*\ *//' | tr '\n' ' ' | grep 'eb b6 89 ec 9d 80 eb b3 84 ')" != "x" ]; then
- distro="Red Star OS"
- distro_codename="n/a"
- distro_release=$(printf "${distro_release}" | grep -o '[0-9.]' | tr -d '\n')
- else
- distro="${distro_detect}"
- fi
- ;;
- esac
- if [[ "${distro_detect}" =~ "CentOSStream" ]]; then
- distro="CentOS Stream"
- fi
- if [[ "${distro_detect}" =~ "RedHatEnterprise" ]]; then
- distro="Red Hat Enterprise Linux"
- fi
- if [[ "${distro_detect}" =~ "SUSELinuxEnterprise" ]]; then
- distro="SUSE Linux Enterprise"
- fi
- if [[ -n ${distro_release} && ${distro_release} != "n/a" ]]; then
- distro_more="$distro_release"
- fi
- if [[ -n ${distro_codename} && ${distro_codename} != "n/a" ]]; then
- distro_more="$distro_more $distro_codename"
- fi
- fi
- # Existing File Check
- if [ "$distro" == "Unknown" ]; then
- if [ "$(uname -o 2>/dev/null)" ]; then
- os="$(uname -o)"
- case "$os" in
- "Cygwin"|"FreeBSD"|"OpenBSD"|"NetBSD")
- distro="$os"
- fake_distro="${distro}"
- ;;
- "DragonFly")
- distro="DragonFlyBSD"
- fake_distro="${distro}"
- ;;
- "EndeavourOS")
- distro="EndeavourOS"
- fake_distro="${distro}"
- ;;
- "Msys")
- distro="Msys"
- fake_distro="${distro}"
- distro_more="${distro} $(uname -r | head -c 1)"
- ;;
- "Haiku")
- distro="Haiku"
- distro_more="$(uname -v | awk '/^hrev/ {print $1}')"
- ;;
- "GNU/Linux")
- if type -p crux >/dev/null 2>&1; then
- distro="CRUX"
- distro_more="$(crux | awk '{print $3}')"
- fi
- if type -p nixos-version >/dev/null 2>&1; then
- distro="NixOS"
- distro_more="$(nixos-version)"
- fi
- if type -p sorcery >/dev/null 2>&1; then
- distro="SMGL"
- fi
- if (type -p guix && type -p herd) >/dev/null 2>&1; then
- distro="Guix System"
- fi
- ;;
- esac
- fi
- if [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- # https://msdn.microsoft.com/en-us/library/ms724832%28VS.85%29.aspx
- if wmic os get version | grep -q '^\(6\.[23]\|10\)'; then
- fake_distro="Windows - Modern"
- fi
- fi
- if [[ "${distro}" == "Unknown" ]]; then
- if [ -f /etc/os-release ]; then
- os_release="/etc/os-release";
- elif [ -f /usr/lib/os-release ]; then
- os_release="/usr/lib/os-release";
- fi
- if [[ -n ${os_release} ]]; then
- distrib_id=$(<${os_release});
- for l in $distrib_id; do
- if [[ ${l} =~ ^ID= ]]; then
- distrib_id=${l//*=}
- distrib_id=${distrib_id//\"/}
- break 1
- fi
- done
- if [[ -n ${distrib_id} ]]; then
- if [[ ${BASH_VERSINFO[0]} -ge 4 ]]; then
- distrib_id=$(for i in ${distrib_id}; do echo -n "${i^} "; done)
- distro=${distrib_id% }
- unset distrib_id
- else
- distrib_id=$(for i in ${distrib_id}; do FIRST_LETTER=$(echo -n "${i:0:1}" | tr "[:lower:]" "[:upper:]"); echo -n "${FIRST_LETTER}${i:1} "; done)
- distro=${distrib_id% }
- unset distrib_id
- fi
- fi
- # Hotfixes
- [[ "${distro}" == "Opensuse-tumbleweed" ]] && distro="openSUSE" && distro_more="Tumbleweed"
- [[ "${distro}" == "Opensuse-leap" ]] && distro="openSUSE"
- [[ "${distro}" == "void" ]] && distro="Void Linux"
- [[ "${distro}" == "evolveos" ]] && distro="Evolve OS"
- [[ "${distro}" == "Sulin" ]] && distro="Sulin"
- [[ "${distro}" == "antergos" ]] && distro="Antergos"
- [[ "${distro}" == "logos" ]] && distro="Logos"
- [[ "${distro}" == "Arch" || "${distro}" == "Archarm" || "${distro}" == "archarm" ]] && distro="Arch Linux"
- [[ "${distro}" == "elementary" ]] && distro="elementary OS"
- [[ "${distro}" == "Fedora" && -d /etc/qubes-rpc ]] && distro="qubes" # Inner VM
- [[ "${distro}" == "Ol" || "${distro}" == "ol" ]] && distro="Oracle Linux"
- if [[ "${distro}" == "Oracle Linux" && -f /etc/oracle-release ]]; then
- distro_more="$(sed 's/Oracle Linux //' /etc/oracle-release)"
- fi
- # Upstream problem, SL and so EL is using rhel ID in os-release
- if [[ "${distro}" == "rhel" ]] || [[ "${distro}" == "Rhel" ]]; then
- distro="Red Hat Enterprise Linux"
- if grep -q 'Scientific' /etc/os-release; then
- distro="Scientific Linux"
- elif grep -q 'EuroLinux' /etc/os-release; then
- distro="EuroLinux"
- fi
- fi
- [[ "${distro}" == "Neon" ]] && distro="KDE neon"
- [[ "${distro}" == "SLED" || "${distro}" == "sled" || "${distro}" == "SLES" || "${distro}" == "sles" ]] && distro="SUSE Linux Enterprise"
- if [[ "${distro}" == "SUSE Linux Enterprise" && -f /etc/os-release ]]; then
- distro_more="$(awk -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"')"
- fi
- if [[ "${distro}" == "Debian" && -f /usr/bin/pveversion ]]; then
- distro="Proxmox VE"
- distro_codename="n/a"
- distro_release="$(/usr/bin/pveversion | grep -oP 'pve-manager\/\K\d+\.\d+')"
- fi
- fi
- fi
- if [[ "${distro}" == "Unknown" && "${OSTYPE}" =~ "linux" && -f /etc/lsb-release ]]; then
- LSB_RELEASE=$(</etc/lsb-release)
- distro=$(echo "${LSB_RELEASE}" | awk 'BEGIN {
- distro = "Unknown"
- }
- {
- if ($0 ~ /[Uu][Bb][Uu][Nn][Tt][Uu]/) {
- distro = "Ubuntu"
- exit
- }
- else if ($0 ~ /[Mm][Ii][Nn][Tt]/ && $0 ~ /[Dd][Ee][Bb][Ii][Aa][Nn]/) {
- distro = "LMDE"
- exit
- }
- else if ($0 ~ /[Mm][Ii][Nn][Tt]/) {
- distro = "Mint"
- exit
- }
- } END {
- print distro
- }')
- fi
- if [[ "${distro}" == "Unknown" ]] && [[ "${OSTYPE}" =~ "linux" || "${OSTYPE}" == "gnu" ]]; then
- for di in arch chakra crunchbang-lsb evolveos exherbo fedora \
- frugalware fux gentoo kogaion mageia obarun oracle \
- pardus pclinuxos redhat redstar rosa SuSe; do
- if [ -f /etc/$di-release ]; then
- distro=$di
- break
- fi
- done
- if [[ "${distro}" == "crunchbang-lsb" ]]; then
- distro="Crunchbang"
- elif [[ "${distro}" == "gentoo" ]]; then
- grep -q -i 'Funtoo' /etc/gentoo-release && distro="Funtoo"
- elif [[ "${distro}" == "mandrake" ]] || [[ "${distro}" == "mandriva" ]]; then
- grep -q -i 'PCLinuxOS' /etc/${distro}-release && distro="PCLinuxOS"
- elif [[ "${distro}" == "fedora" ]]; then
- grep -q -i 'Korora' /etc/fedora-release && distro="Korora"
- grep -q -i 'BLAG' /etc/fedora-release && distro="BLAG" && distro_more="$(head -n1 /etc/fedora-release)"
- elif [[ "${distro}" == "oracle" ]]; then
- distro_more="$(sed 's/Oracle Linux //' /etc/oracle-release)"
- elif [[ "${distro}" == "SuSe" ]]; then
- distro="openSUSE"
- if [ -f /etc/os-release ]; then
- if grep -q -i 'SUSE Linux Enterprise' /etc/os-release ; then
- distro="SUSE Linux Enterprise"
- distro_more=$(awk -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"')
- fi
- fi
- if [[ "${distro_more}" =~ "Tumbleweed" ]]; then
- distro_more="Tumbleweed"
- fi
- elif [[ "${distro}" == "redstar" ]]; then
- distro_more=$(grep -o '[0-9.]' /etc/redstar-release | tr -d '\n')
- elif [[ "${distro}" == "redhat" ]]; then
- grep -q -i 'CentOS' /etc/redhat-release && distro="CentOS"
- grep -q -i 'Scientific' /etc/redhat-release && distro="Scientific Linux"
- grep -q -i 'EuroLinux' /etc/redhat-release && distro="EuroLinux"
- grep -q -i 'PCLinuxOS' /etc/redhat-release && distro="PCLinuxOS"
- if [ "x$(od -t x1 /etc/redhat-release | sed -e 's/^\w*\ *//' | tr '\n' ' ' | grep 'eb b6 89 ec 9d 80 eb b3 84 ')" != "x" ]; then
- distro="Red Star OS"
- distro_more=$(grep -o '[0-9.]' /etc/redhat-release | tr -d '\n')
- fi
- fi
- fi
- if [[ "${distro}" == "Unknown" ]]; then
- if [[ "${OSTYPE}" =~ "linux" || "${OSTYPE}" == "gnu" ]]; then
- if [ -f /etc/debian_version ]; then
- if [ -f /etc/issue ]; then
- if grep -q -i 'gNewSense' /etc/issue ; then
- distro="gNewSense"
- elif grep -q -i 'KDE neon' /etc/issue ; then
- distro="KDE neon"
- distro_more="$(cut -d ' ' -f3 /etc/issue)"
- else
- distro="Debian"
- fi
- fi
- if grep -q -i 'Kali' /etc/debian_version ; then
- distro="Kali Linux"
- fi
- elif [ -f /etc/NIXOS ]; then distro="NixOS"
- elif [ -f /etc/dragora-version ]; then
- distro="Dragora"
- distro_more="$(cut -d, -f1 /etc/dragora-version)"
- elif [ -f /etc/slackware-version ]; then distro="Slackware"
- elif [ -f /usr/share/doc/tc/release.txt ]; then
- distro="TinyCore"
- distro_more="$(cat /usr/share/doc/tc/release.txt)"
- elif [ -f /etc/sabayon-edition ]; then distro="Sabayon"
- fi
- else
- if [[ -x /usr/bin/sw_vers ]] && /usr/bin/sw_vers | grep -i 'Mac OS X' >/dev/null; then
- distro="Mac OS X"
- elif [[ -x /usr/bin/sw_vers ]] && /usr/bin/sw_vers | grep -i 'macOS' >/dev/null; then
- distro="macOS"
- elif [[ -f /var/run/dmesg.boot ]]; then
- distro=$(awk 'BEGIN {
- distro = "Unknown"
- }
- {
- if ($0 ~ /DragonFly/) {
- distro = "DragonFlyBSD"
- exit
- }
- else if ($0 ~ /FreeBSD/) {
- distro = "FreeBSD"
- exit
- }
- else if ($0 ~ /NetBSD/) {
- distro = "NetBSD"
- exit
- }
- else if ($0 ~ /OpenBSD/) {
- distro = "OpenBSD"
- exit
- }
- } END {
- print distro
- }' /var/run/dmesg.boot)
- fi
- fi
- fi
- if [[ "${distro}" == "Unknown" ]] && [[ "${OSTYPE}" =~ "linux" || "${OSTYPE}" == "gnu" ]]; then
- if [[ -f /etc/issue ]]; then
- distro=$(awk 'BEGIN {
- distro = "Unknown"
- }
- {
- if ($0 ~ /"Hyperbola GNU\/Linux-libre"/) {
- distro = "Hyperbola GNU/Linux-libre"
- exit
- }
- else if ($0 ~ /"LinuxDeepin"/) {
- distro = "LinuxDeepin"
- exit
- }
- else if ($0 ~ /"Obarun"/) {
- distro = "Obarun"
- exit
- }
- else if ($0 ~ /"Parabola GNU\/Linux-libre"/) {
- distro = "Parabola GNU/Linux-libre"
- exit
- }
- else if ($0 ~ /"Solus"/) {
- distro = "Solus"
- exit
- }
- else if ($0 ~ /"ALDOS"/) {
- distro = "ALDOS"
- exit
- }
- } END {
- print distro
- }' /etc/issue)
- fi
- fi
- if [[ "${distro}" == "Unknown" ]] && [[ "${OSTYPE}" =~ "linux" || "${OSTYPE}" == "gnu" ]]; then
- if [[ -f /etc/system-release ]]; then
- if grep -q -i 'Scientific Linux' /etc/system-release; then
- distro="Scientific Linux"
- elif grep -q -i 'Oracle Linux' /etc/system-release; then
- distro="Oracle Linux"
- fi
- elif [[ -f /etc/lsb-release ]]; then
- if grep -q -i 'CHROMEOS_RELEASE_NAME' /etc/lsb-release; then
- distro="$(awk -F'=' '/^CHROMEOS_RELEASE_NAME=/ {print $2}' /etc/lsb-release)"
- distro_more="$(awk -F'=' '/^CHROMEOS_RELEASE_VERSION=/ {print $2}' /etc/lsb-release)"
- fi
- fi
- fi
- fi
- fi
- if [[ -n ${distro_more} ]]; then
- distro_more="${distro} ${distro_more}"
- fi
- if [[ "${distro}" != "Haiku" ]]; then
- if [[ ${BASH_VERSINFO[0]} -ge 4 ]]; then
- if [[ ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -gt 1 ]] || [[ ${BASH_VERSINFO[0]} -gt 4 ]]; then
- distro=${distro,,}
- else
- distro="$(tr '[:upper:]' '[:lower:]' <<< "${distro}")"
- fi
- else
- distro="$(tr '[:upper:]' '[:lower:]' <<< "${distro}")"
- fi
- fi
- case $distro in
- aldos) distro="ALDOS";;
- alpine) distro="Alpine Linux" ;;
- amzn|amazon|amazon*linux) distro="Amazon Linux" ;;
- antergos) distro="Antergos" ;;
- arch*linux*old) distro="Arch Linux - Old" ;;
- arch|arch*linux) distro="Arch Linux" ;;
- arch32) distro="Arch Linux 32" ;;
- arcolinux|arcolinux*) distro="ArcoLinux" ;;
- artix|artix*linux) distro="Artix Linux" ;;
- blackpantheros|black*panther*) distro="blackPanther OS" ;;
- blag) distro="BLAG" ;;
- bunsenlabs) distro="BunsenLabs" ;;
- centos) distro="CentOS" ;;
- centos*stream) distro="CentOS Stream" ;;
- chakra) distro="Chakra" ;;
- chapeau) distro="Chapeau" ;;
- chrome*|chromium*) distro="Chrome OS" ;;
- crunchbang) distro="CrunchBang" ;;
- crux) distro="CRUX" ;;
- cygwin) distro="Cygwin" ;;
- debian) distro="Debian" ;;
- devuan) distro="Devuan" ;;
- deepin) distro="Deepin" ;;
- uos) distro="Uos" ;;
- desaos) distro="DesaOS" ;;
- dragonflybsd) distro="DragonFlyBSD" ;;
- dragora) distro="Dragora" ;;
- drauger*) distro="DraugerOS" ;;
- elementary|'elementary os') distro="elementary OS";;
- eurolinux) distro="EuroLinux" ;;
- evolveos) distro="Evolve OS" ;;
- sulin) distro="Sulin" ;;
- exherbo|exherbo*linux) distro="Exherbo" ;;
- fedora) distro="Fedora" ;;
- freebsd) distro="FreeBSD" ;;
- freebsd*old) distro="FreeBSD - Old" ;;
- frugalware) distro="Frugalware" ;;
- fuduntu) distro="Fuduntu" ;;
- funtoo) distro="Funtoo" ;;
- fux) distro="Fux" ;;
- gentoo) distro="Gentoo" ;;
- gnewsense) distro="gNewSense" ;;
- guix*system) distro="Guix System" ;;
- haiku) distro="Haiku" ;;
- hyperbolagnu|hyperbolagnu/linux-libre|'hyperbola gnu/linux-libre'|hyperbola) distro="Hyperbola GNU/Linux-libre" ;;
- januslinux) distro="januslinux" ;;
- kali*linux) distro="Kali Linux" ;;
- kaos) distro="KaOS";;
- kde*neon|neon) distro="KDE neon" ;;
- kogaion) distro="Kogaion" ;;
- korora) distro="Korora" ;;
- linuxdeepin) distro="LinuxDeepin" ;;
- lmde) distro="LMDE" ;;
- logos) distro="Logos" ;;
- lunar|lunar*linux) distro="Lunar Linux";;
- mac*os*x|os*x) distro="Mac OS X" ;;
- macos) distro="macOS" ;;
- manjaro) distro="Manjaro" ;;
- mageia) distro="Mageia" ;;
- mandrake) distro="Mandrake" ;;
- mandriva) distro="Mandriva" ;;
- mer) distro="Mer" ;;
- mint|linux*mint) distro="Mint" ;;
- msys|msys2) distro="Msys" ;;
- netbsd) distro="NetBSD" ;;
- netrunner) distro="Netrunner" ;;
- nix|nix*os) distro="NixOS" ;;
- obarun) distro="Obarun" ;;
- obrevenge) distro="OBRevenge" ;;
- ol|oracle*linux) distro="Oracle Linux" ;;
- openbsd) distro="OpenBSD" ;;
- opensuse) distro="openSUSE" ;;
- os*elbrus) distro="OS Elbrus" ;;
- parabolagnu|parabolagnu/linux-libre|'parabola gnu/linux-libre'|parabola) distro="Parabola GNU/Linux-libre" ;;
- pardus) distro="Pardus" ;;
- parrot|parrot*security) distro="Parrot Security" ;;
- pclinuxos|pclos) distro="PCLinuxOS" ;;
- peppermint) distro="Peppermint" ;;
- proxmox|proxmox*ve) distro="Proxmox VE" ;;
- pureos) distro="PureOS" ;;
- qubes) distro="Qubes OS" ;;
- raspbian) distro="Raspbian" ;;
- red*hat*|rhel) distro="Red Hat Enterprise Linux" ;;
- rosa) distro="ROSA" ;;
- red*star|red*star*os) distro="Red Star OS" ;;
- sabayon) distro="Sabayon" ;;
- sailfish|sailfish*os) distro="SailfishOS" ;;
- scientific*) distro="Scientific Linux" ;;
- siduction) distro="Siduction" ;;
- slackware) distro="Slackware" ;;
- smgl|source*mage|source*mage*gnu*linux) distro="Source Mage GNU/Linux" ;;
- solus) distro="Solus" ;;
- sparky|sparky*linux) distro="SparkyLinux" ;;
- steam|steam*os) distro="SteamOS" ;;
- suse*linux*enterprise) distro="SUSE Linux Enterprise" ;;
- swagarch) distro="SwagArch" ;;
- tinycore|tinycore*linux) distro="TinyCore" ;;
- trisquel) distro="Trisquel";;
- grombyangos) distro="GrombyangOS" ;;
- ubuntu) distro="Ubuntu";;
- viperr) distro="Viperr" ;;
- void*linux) distro="Void Linux" ;;
- zorin*) distro="Zorin OS" ;;
- endeavour*) distro="EndeavourOS" ;;
- esac
- if grep -q -i 'Microsoft' /proc/version 2>/dev/null || \
- grep -q -i 'Microsoft' /proc/sys/kernel/osrelease 2>/dev/null
- then
- wsl="(on the Windows Subsystem for Linux)"
- fi
- verboseOut "Finding distro...found as '${distro} ${distro_release}'"
- }
- # Distro Detection - End
- # Host and User detection - Begin
- detecthost () {
- myUser=${USER}
- myHost=${HOSTNAME}
- if [[ -z "$USER" ]]; then
- myUser=$(whoami)
- fi
- if [[ "${distro}" == "Mac OS X" || "${distro}" == "macOS" ]]; then
- myHost=${myHost/.local}
- fi
- verboseOut "Finding hostname and user...found as '${myUser}@${myHost}'"
- }
- # Find Number of Running Processes
- # processnum="$(( $( ps aux | wc -l ) - 1 ))"
- # Kernel Version Detection - Begin
- detectkernel () {
- if [[ "$distro" == "OpenBSD" ]]; then
- kernel=$(uname -a | cut -f 3- -d ' ')
- else
- # compatibility for older versions of OS X:
- kernel=$(uname -m && uname -sr)
- kernel=${kernel//$'\n'/ }
- #kernel=( $(uname -srm) )
- #kernel="${kernel[${#kernel[@]}-1]} ${kernel[@]:0:${#kernel[@]}-1}"
- verboseOut "Finding kernel version...found as '${kernel}'"
- fi
- }
- # Kernel Version Detection - End
- # Uptime Detection - Begin
- detectuptime () {
- unset uptime
- if [[ "${distro}" == "Mac OS X" || "${distro}" == "macOS" || "${distro}" == "FreeBSD" || "${distro}" == "DragonFlyBSD" ]]; then
- boot=$(sysctl -n kern.boottime | cut -d "=" -f 2 | cut -d "," -f 1)
- now=$(date +%s)
- uptime=$((now-boot))
- elif [[ "${distro}" == "OpenBSD" ]]; then
- boot=$(sysctl -n kern.boottime)
- now=$(date +%s)
- uptime=$((now - boot))
- elif [[ "${distro}" == "Haiku" ]]; then
- uptime=$(uptime | awk -F', up ' '{gsub(/ *hours?,/, "h"); gsub(/ *minutes?/, "m"); print $2;}')
- else
- if [[ -f /proc/uptime ]]; then
- uptime=$(</proc/uptime)
- uptime=${uptime//.*}
- fi
- fi
- if [[ -n ${uptime} ]] && [[ "${distro}" != "Haiku" ]]; then
- mins=$((uptime/60%60))
- hours=$((uptime/3600%24))
- days=$((uptime/86400))
- uptime="${mins}m"
- if [ "${hours}" -ne "0" ]; then
- uptime="${hours}h ${uptime}"
- fi
- if [ "${days}" -ne "0" ]; then
- uptime="${days}d ${uptime}"
- fi
- else
- if [[ "$distro" =~ "NetBSD" ]]; then
- uptime=$(awk -F. '{print $1}' /proc/uptime)
- elif [[ "$distro" =~ "BSD" ]]; then
- uptime=$(uptime | awk '{$1=$2=$(NF-6)=$(NF-5)=$(NF-4)=$(NF-3)=$(NF-2)=$(NF-1)=$NF=""; sub(" days","d");sub(",","");sub(":","h ");sub(",","m"); print}')
- fi
- fi
- verboseOut "Finding current uptime...found as '${uptime}'"
- }
- # Uptime Detection - End
- # Package Count - Begin
- detectpkgs () {
- pkgs="Unknown"
- local offset=0
- case "${distro}" in
- 'Alpine Linux') pkgs=$(apk info | wc -l) ;;
- 'Arch Linux'|'Arch Linux 32'|'ArcoLinux'|'Parabola GNU/Linux-libre'|'Hyperbola GNU/Linux-libre'|'Chakra'|'Manjaro'|'Antergos'| \
- 'Netrunner'|'KaOS'|'Obarun'|'SwagArch'|'OBRevenge'|'Artix Linux'|'EndeavourOS')
- pkgs=$(pacman -Qq | wc -l) ;;
- 'Chrome OS')
- if [ -d "/usr/local/lib/crew/packages" ]; then
- pkgs=$(ls -l /usr/local/etc/crew/meta/*.filelist | wc -l)
- else
- pkgs=$(ls -d /var/db/pkg/*/* | wc -l)
- fi
- ;;
- 'Dragora')
- pkgs=$(ls -1 /var/db/pkg | wc -l) ;;
- 'Frugalware')
- pkgs=$(pacman-g2 -Q | wc -l) ;;
- 'Debian'|'Ubuntu'|'Mint'|'Fuduntu'|'KDE neon'|'Devuan'|'OS Elbrus'|'Raspbian'|'LMDE'|'CrunchBang'|'Peppermint'| \
- 'LinuxDeepin'|'Deepin'|'Kali Linux'|'Trisquel'|'elementary OS'|'gNewSense'|'BunsenLabs'|'SteamOS'|'Parrot Security'| \
- 'GrombyangOS'|'DesaOS'|'Zorin OS'|'Proxmox VE'|'PureOS'|'DraugerOS')
- pkgs=$(dpkg -l | grep -c '^i') ;;
- 'Slackware')
- pkgs=$(ls -1 /var/log/packages | wc -l) ;;
- 'Gentoo'|'Sabayon'|'Funtoo'|'Kogaion')
- pkgs=$(ls -d /var/db/pkg/*/* | wc -l) ;;
- 'NixOS')
- pkgs=$(nix path-info -r /run/current-system | wc -l) ;;
- 'Guix System')
- pkgs=$(guix package --list-installed | wc -l) ;;
- 'ALDOS'|'Fedora'|'Fux'|'Korora'|'BLAG'|'Chapeau'|'openSUSE'|'SUSE Linux Enterprise'|'Red Hat Enterprise Linux'| \
- 'ROSA'|'Oracle Linux'|'Scientific Linux'|'EuroLinux'|'CentOS'|'CentOS Stream'|'Mandriva'|'Mandrake'|'Mageia'|'Mer'|'SailfishOS'|'PCLinuxOS'|'Viperr'|'Qubes OS'| \
- 'Red Star OS'|'blackPanther OS'|'Amazon Linux')
- pkgs=$(rpm -qa | wc -l) ;;
- 'Void Linux')
- pkgs=$(xbps-query -l | wc -l) ;;
- 'Evolve OS')
- pkgs=$(pisi list-installed | wc -l) ;;
- 'Sulin')
- pkgs=$(inary li | wc -l) ;;
- 'Solus')
- pkgs=$(eopkg list-installed | wc -l) ;;
- 'Source Mage GNU/Linux')
- pkgs=$(gaze installed | wc -l) ;;
- 'CRUX'|'januslinux')
- pkgs=$(pkginfo -i | wc -l) ;;
- 'Lunar Linux')
- pkgs=$(lvu installed | wc -l) ;;
- 'TinyCore')
- pkgs=$(tce-status -i | wc -l) ;;
- 'Exherbo')
- xpkgs=$(ls -d -1 /var/db/paludis/repositories/cross-installed/*/data/* | wc -l)
- pkgs=$(ls -d -1 /var/db/paludis/repositories/installed/data/* | wc -l)
- pkgs=$((pkgs + xpkgs))
- ;;
- 'Mac OS X'|'macOS')
- offset=1
- if [ -d "/usr/local/bin" ]; then
- loc_pkgs=$(ls -l /usr/local/bin/ | grep -cv "\(../Cellar/\|brew\)")
- pkgs=$((loc_pkgs - offset));
- fi
- if type -p port >/dev/null 2>&1; then
- port_pkgs=$(port installed 2>/dev/null | wc -l)
- pkgs=$((pkgs + (port_pkgs - offset)))
- fi
- if type -p brew >/dev/null 2>&1; then
- brew_pkgs=$(ls -1 /usr/local/Cellar/ | wc -l)
- pkgs=$((pkgs + brew_pkgs))
- fi
- if type -p pkgin >/dev/null 2>&1; then
- pkgsrc_pkgs=$(pkgin list 2>/dev/null | wc -l)
- pkgs=$((pkgs + pkgsrc_pkgs))
- fi
- ;;
- 'DragonFlyBSD')
- if TMPDIR=/dev/null ASSUME_ALWAYS_YES=1 PACKAGESITE=file:///nonexistent pkg info pkg >/dev/null 2>&1; then
- pkgs=$(pkg info | grep -c .)
- else
- pkgs=$(pkg_info | grep -c .)
- fi
- ;;
- 'OpenBSD'|'NetBSD')
- pkgs=$(pkg_info | grep -c .)
- ;;
- 'FreeBSD')
- pkgs=$(pkg info | grep -c .)
- ;;
- 'Cygwin')
- offset=2
- pkgs=$(($(cygcheck -cd | wc -l) - offset))
- if [ -d "/cygdrive/c/ProgramData/chocolatey/lib" ]; then
- chocopkgs=$(ls -1 /cygdrive/c/ProgramData/chocolatey/lib | wc -l)
- pkgs=$((pkgs + chocopkgs))
- fi
- ;;
- 'Msys')
- pkgs=$(pacman -Qq | wc -l)
- if [ -d "/c/ProgramData/chocolatey/lib" ]; then
- chocopkgs=$(ls -1 /c/ProgramData/chocolatey/lib | wc -l)
- pkgs=$((pkgs + chocopkgs))
- fi
- ;;
- 'Haiku')
- haikualpharelease="no"
- if [ -d /boot/system/package-links ]; then
- pkgs=$(ls /boot/system/package-links | wc -l)
- elif type -p installoptionalpackage >/dev/null 2>&1; then
- haikualpharelease="yes"
- pkgs=$(installoptionalpackage -l | sed -n '3p' | wc -w)
- fi
- ;;
- esac
- if [[ "${OSTYPE}" =~ "linux" && -z "${wsl}" ]] && snap list >/dev/null 2>&1; then
- offset=1
- snappkgs=$(($(snap list 2>/dev/null | wc -l) - offset))
- if [ $snappkgs -lt 0 ]; then
- snappkgs=0
- fi
- pkgs=$((pkgs + snappkgs))
- fi
- verboseOut "Finding current package count...found as '$pkgs'"
- }
- # CPU Detection - Begin
- detectcpu () {
- local REGEXP="-r"
- if [[ "$distro" == "Mac OS X" || "$distro" == "macOS" ]]; then
- cpu=$(machine)
- if [[ $cpu == "ppc750" ]]; then
- cpu="IBM PowerPC G3"
- elif [[ $cpu == "ppc7400" || $cpu == "ppc7450" ]]; then
- cpu="IBM PowerPC G4"
- elif [[ $cpu == "ppc970" ]]; then
- cpu="IBM PowerPC G5"
- else
- cpu=$(sysctl -n machdep.cpu.brand_string)
- fi
- REGEXP="-E"
- elif [ "$OSTYPE" == "gnu" ]; then
- # no /proc/cpuinfo on GNU/Hurd
- if uname -m | grep -q 'i.86'; then
- cpu="Unknown x86"
- else
- cpu="Unknown"
- fi
- elif [ "$distro" == "FreeBSD" ]; then
- cpu=$(dmesg | awk -F': ' '/^CPU/ {gsub(/ +/," "); gsub(/\([^\(\)]*\)|CPU /,"", $2); print $2; exit}')
- elif [ "$distro" == "DragonFlyBSD" ]; then
- cpu=$(sysctl -n hw.model)
- elif [ "$distro" == "OpenBSD" ]; then
- cpu=$(sysctl -n hw.model | sed 's/@.*//')
- elif [ "$distro" == "Haiku" ]; then
- cpu=$(sysinfo -cpu | awk -F': ' '/^CPU #0/ {gsub(/ +/," "); gsub(/\([^\(\)]*\)|CPU /,"", $2); print $2; exit}')
- else
- cpu=$(awk -F':' '/^model name/ {split($2, A, " @"); print A[1]; exit}' /proc/cpuinfo)
- cpun=$(grep -c '^processor' /proc/cpuinfo)
- if [ -z "$cpu" ]; then
- cpu=$(awk 'BEGIN{FS=":"} /Hardware/ { print $2; exit }' /proc/cpuinfo)
- fi
- if [ -z "$cpu" ]; then
- cpu=$(awk 'BEGIN{FS=":"} /^cpu/ { gsub(/ +/," ",$2); print $2; exit}' /proc/cpuinfo | sed 's/, altivec supported//;s/^ //')
- if [[ $cpu =~ ^(PPC)*9.+ ]]; then
- model="IBM PowerPC G5 "
- elif [[ $cpu =~ 740/750 ]]; then
- model="IBM PowerPC G3 "
- elif [[ $cpu =~ ^74.+ ]]; then
- model="Motorola PowerPC G4 "
- elif [[ $cpu =~ ^POWER.* ]]; then
- model="IBM POWER "
- elif grep -q -i 'BCM2708' /proc/cpuinfo ; then
- model="Broadcom BCM2835 ARM1176JZF-S"
- else
- arch=$(uname -m)
- if [[ "$arch" == "s390x" || "$arch" == "s390" ]]; then
- cpu=""
- args=$(grep 'machine' /proc/cpuinfo | sed 's/^.*://g; s/ //g; s/,/\n/g' | grep '^machine=.*')
- eval "$args"
- case "$machine" in
- # information taken from https://github.com/SUSE/s390-tools/blob/master/cputype
- 2064) model="IBM eServer zSeries 900" ;;
- 2066) model="IBM eServer zSeries 800" ;;
- 2084) model="IBM eServer zSeries 990" ;;
- 2086) model="IBM eServer zSeries 890" ;;
- 2094) model="IBM System z9 Enterprise Class" ;;
- 2096) model="IBM System z9 Business Class" ;;
- 2097) model="IBM System z10 Enterprise Class" ;;
- 2098) model="IBM System z10 Business Class" ;;
- 2817) model="IBM zEnterprise 196" ;;
- 2818) model="IBM zEnterprise 114" ;;
- 2827) model="IBM zEnterprise EC12" ;;
- 2828) model="IBM zEnterprise BC12" ;;
- 2964) model="IBM z13" ;;
- *) model="IBM S/390 machine type $machine" ;;
- esac
- elif [[ "$arch" == "aarch64" ]]; then
- cpu_vendor=$(lscpu | grep ^Vendor | sed 's/^.*://g; s/ //g; s/,/\n/g')
- cpu=$(lscpu | grep ^Model\ name: | sed 's/^.*://g; s/ //g; s/,/\n/g')
- cpu="${cpu_vendor} ${cpu}"
- else
- model="Unknown"
- fi
- fi
- cpu="${model}${cpu}"
- fi
- loc="/sys/devices/system/cpu/cpu0/cpufreq"
- bl="${loc}/bios_limit"
- smf="${loc}/scaling_max_freq"
- if [ -f "$bl" ] && [ -r "$bl" ]; then
- cpu_mhz=$(awk '{print $1/1000}' "$bl")
- elif [ -f "$smf" ] && [ -r "$smf" ]; then
- cpu_mhz=$(awk '{print $1/1000}' "$smf")
- else
- cpu_mhz=$(awk -F':' '/cpu MHz/{ print int($2+.5) }' /proc/cpuinfo | head -n 1)
- fi
- if [ -n "$cpu_mhz" ]; then
- if [ "${cpu_mhz%.*}" -ge 1000 ]; then
- cpu_ghz=$(awk '{print $1/1000}' <<< "${cpu_mhz}")
- cpufreq="${cpu_ghz}GHz"
- else
- cpufreq="${cpu_mhz}MHz"
- fi
- fi
- fi
- if [[ "${cpun}" -gt "1" ]]; then
- cpun="${cpun}x "
- else
- cpun=""
- fi
- if [ -z "$cpufreq" ]; then
- cpu="${cpun}${cpu}"
- else
- cpu="$cpu @ ${cpun}${cpufreq}"
- fi
- if [ -d '/sys/class/hwmon/' ]; then
- for dir in /sys/class/hwmon/* ; do
- hwmonfile=""
- [ -e "$dir/name" ] && hwmonfile=$dir/name
- [ -e "$dir/device/name" ] && hwmonfile=$dir/device/name
- [ -n "$hwmonfile" ] && if grep -q 'coretemp' "$hwmonfile"; then
- thermal="$dir/temp1_input"
- break
- fi
- done
- if [ -e "$thermal" ] && [ "${thermal:+isSetToNonNull}" = 'isSetToNonNull' ]; then
- temperature=$(bc <<< "scale=1; $(cat "$thermal")/1000")
- fi
- fi
- if [ -n "$temperature" ]; then
- cpu="$cpu [${temperature}°C]"
- fi
- cpu=$(sed $REGEXP 's/\([tT][mM]\)|\([Rr]\)|[pP]rocessor|CPU//g' <<< "${cpu}" | xargs)
- verboseOut "Finding current CPU...found as '$cpu'"
- }
- # CPU Detection - End
- # GPU Detection - Begin (EXPERIMENTAL!)
- detectgpu () {
- if [[ "${distro}" == "FreeBSD" || "${distro}" == "DragonFlyBSD" ]]; then
- nvisettexist=$(which nvidia-settings)
- if [ -x "$nvisettexist" ]; then
- gpu="$(nvidia-settings -t -q gpus | grep \( | sed 's/.*(\(.*\))/\1/')"
- else
- gpu_info=$(pciconf -lv 2> /dev/null | grep -B 4 VGA)
- gpu_info=$(grep -E 'device.*=.*' <<< "${gpu_info}")
- gpu="${gpu_info##*device*= }"
- gpu="${gpu//\'}"
- # gpu=$(sed 's/.*device.*= //' <<< "${gpu_info}" | sed "s/'//g")
- fi
- elif [[ "${distro}" == "OpenBSD" ]]; then
- gpu=$(glxinfo 2> /dev/null | awk '/OpenGL renderer string/ { sub(/OpenGL renderer string: /,""); print }')
- elif [[ "${distro}" == "Mac OS X" || "${distro}" == "macOS" ]]; then
- gpu=$(system_profiler SPDisplaysDataType | awk -F': ' '/^ *Chipset Model:/ {print $2}' | awk '{ printf "%s / ", $0 }' | sed -e 's/\/ $//g')
- elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- gpu=$(wmic path Win32_VideoController get caption | sed -n '2p')
- elif [[ "${distro}" == "Haiku" ]]; then
- gpu="$(listdev | grep -A2 -e 'device Display controller' | awk -F': ' '/^ +device/ {print $2}')"
- else
- if [[ -n "$(PATH="/opt/bin:$PATH" type -p nvidia-smi)" ]]; then
- gpu=$($(PATH="/opt/bin:$PATH" type -p nvidia-smi | cut -f1) -q | awk -F':' '/Product Name/ {gsub(/: /,":"); print $2}' | sed ':a;N;$!ba;s/\n/, /g')
- elif [[ -n "$(PATH="/usr/sbin:$PATH" type -p glxinfo)" && -z "${gpu}" ]]; then
- gpu_info=$($(PATH="/usr/sbin:$PATH" type -p glxinfo | cut -f1) 2>/dev/null)
- gpu=$(grep "OpenGL renderer string" <<< "${gpu_info}" | cut -d ':' -f2 | sed -n -e '1h;2,$H;${g;s/\n/, /g' -e 'p' -e '}')
- gpu="${gpu:1}"
- gpu_info=$(grep "OpenGL vendor string" <<< "${gpu_info}")
- elif [[ -n "$(PATH="/usr/sbin:$PATH" type -p lspci)" && -z "$gpu" ]]; then
- gpu_info=$($(PATH="/usr/bin:$PATH" type -p lspci | cut -f1) 2> /dev/null | grep VGA)
- gpu=$(grep -oE '\[.*\]' <<< "${gpu_info}" | sed 's/\[//;s/\]//' | sed -n -e '1h;2,$H;${g;s/\n/, /g' -e 'p' -e '}')
- fi
- fi
- if [ -n "$gpu" ];then
- if grep -q -i 'nvidia' <<< "${gpu_info}"; then
- gpu_info="NVidia "
- elif grep -q -i 'intel' <<< "${gpu_info}"; then
- gpu_info="Intel "
- elif grep -q -i 'amd' <<< "${gpu_info}"; then
- gpu_info="AMD "
- elif grep -q -i 'ati' <<< "${gpu_info}" || grep -q -i 'radeon' <<< "${gpu_info}"; then
- gpu_info="ATI "
- else
- gpu_info=$(cut -d ':' -f2 <<< "${gpu_info}")
- gpu_info="${gpu_info:1} "
- fi
- gpu="${gpu}"
- else
- gpu="Not Found"
- fi
- verboseOut "Finding current GPU...found as '$gpu'"
- }
- # GPU Detection - End
- # Detect Intel GPU #works in dash
- # Run it only on Intel Processors if GPU is unknown
- DetectIntelGPU() {
- if [ -r /proc/fb ]; then
- gpu=$(awk 'BEGIN {ORS = " &"} {$1="";print}' /proc/fb | sed -r s/'^\s+|\s*&$'//g)
- fi
- case $gpu in
- *mfb)
- gpu=$(lspci | grep -i vga | awk -F ": " '{print $2}')
- ;;
- *intel*)
- gpu="intel"
- ;;
- *)
- gpu="Not Found"
- ;;
- esac
- if [[ "$gpu" = "intel" ]]; then
- #Detect CPU
- local CPU=$(uname -p | awk '{print $3}')
- CPU=${CPU#*'-'}; #Detect CPU number
- #Detect Intel GPU
- case $CPU in
- [3-6][3-9][0-5]|[3-6][3-9][0-5][K-Y])
- gpu='Intel HD Graphics'
- ;; #1st
- 2[1-5][0-3][0-2]*|2390T|2600S)
- gpu='Intel HD Graphics 2000'
- ;; #2nd
- 2[1-5][1-7][0-8]*|2105|2500K)
- gpu='Intel HD Graphics 3000'
- ;; #2nd
- 32[1-5]0*|3[4-5][5-7]0*|33[3-4]0*)
- gpu='Intel HD Graphics 2500'
- ;; #3rd
- 3570K|3427U)
- gpu='Intel HD Graphics 4000'
- ;; #3rd
- 4[3-7][0-9][0-5]*)
- gpu='Intel HD Graphics 4600'
- ;; #4th Haswell
- 5[5-6]75[C-R]|5350H)
- gpu='Intel Iris Pro Graphics 6200'
- ;; #5th Broadwell
- #6th Skylake
- #7th Kabylake
- #8th Cannonlake
- *)
- gpu='Unknown'
- ;; #Unknown GPU model
- esac
- fi
- }
- # Disk Usage Detection - Begin
- detectdisk () {
- diskusage="Unknown"
- if type -p df >/dev/null 2>&1; then
- if [[ "${distro}" =~ (Free|Net|DragonFly)BSD ]]; then
- totaldisk=$(df -h -c 2>/dev/null | tail -1)
- elif [[ "${distro}" == "OpenBSD" ]]; then
- totaldisk=$(df -Pk 2> /dev/null | awk '
- /^\// {total+=$2; used+=$3; avail+=$4}
- END{printf("total %.1fG %.1fG %.1fG %d%%\n", total/1048576, used/1048576, avail/1048576, used*100/total)}')
- elif [[ "${distro}" == "Mac OS X" || "${distro}" == "macOS" ]]; then
- majorVers=$(sw_vers | grep "ProductVersion" | cut -d ':' -f 2 | awk -F "." '{print $1}') # Major version
- minorVers=$(sw_vers | grep "ProductVersion" | cut -d ':' -f 2 | awk -F "." '{print $2}') # Minor version
- if [[ "${minorVers}" -ge "15" || "${majorVers}" -ge "11" ]]; then # Catalina or newer
- totaldisk=$(df -H /System/Volumes/Data 2>/dev/null | tail -1)
- else
- totaldisk=$(df -H / 2>/dev/null | tail -1)
- fi
- else
- totaldisk=$(df -h -x aufs -x tmpfs -x overlay -x drvfs --total 2>/dev/null | tail -1)
- fi
- disktotal=$(awk '{print $2}' <<< "${totaldisk}")
- diskused=$(awk '{print $3}' <<< "${totaldisk}")
- diskusedper=$(awk '{print $5}' <<< "${totaldisk}")
- diskusage="${diskused} / ${disktotal} (${diskusedper})"
- diskusage_verbose=$(sed 's/%/%%/' <<< "$diskusage")
- fi
- verboseOut "Finding current disk usage...found as '$diskusage_verbose'"
- }
- # Disk Usage Detection - End
- # Memory Detection - Begin
- detectmem () {
- if [[ "$distro" == "Mac OS X" || "$distro" == "macOS" ]]; then
- totalmem=$(echo "$(sysctl -n hw.memsize)" / 1024^2 | bc)
- wiredmem=$(vm_stat | grep wired | awk '{ print $4 }' | sed 's/\.//')
- activemem=$(vm_stat | grep ' active' | awk '{ print $3 }' | sed 's/\.//')
- compressedmem=$(vm_stat | grep occupied | awk '{ print $5 }' | sed 's/\.//')
- if [[ ! -z "$compressedmem | tr -d" ]]; then # FIXME: is this line correct?
- compressedmem=0
- fi
- usedmem=$(((wiredmem + activemem + compressedmem) * 4 / 1024))
- elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- total_mem=$(awk '/MemTotal/ { print $2 }' /proc/meminfo)
- totalmem=$((total_mem / 1024))
- free_mem=$(awk '/MemFree/ { print $2 }' /proc/meminfo)
- used_mem=$((total_mem - free_mem))
- usedmem=$((used_mem / 1024))
- elif [[ "$distro" == "FreeBSD" || "$distro" == "DragonFlyBSD" ]]; then
- phys_mem=$(sysctl -n hw.physmem)
- size_mem=$phys_mem
- size_chip=1
- guess_chip=$(echo "$size_mem / 8 - 1" | bc)
- while [ "$guess_chip" != 0 ]; do
- guess_chip=$(echo "$guess_chip / 2" | bc)
- size_chip=$(echo "$size_chip * 2" | bc)
- done
- round_mem=$(echo "( $size_mem / $size_chip + 1 ) * $size_chip " | bc)
- totalmem=$((round_mem / 1024 / 1024))
- pagesize=$(sysctl -n hw.pagesize)
- inactive_count=$(sysctl -n vm.stats.vm.v_inactive_count)
- inactive_mem=$((inactive_count * pagesize))
- cache_count=$(sysctl -n vm.stats.vm.v_cache_count)
- cache_mem=$((cache_count * pagesize))
- free_count=$(sysctl -n vm.stats.vm.v_free_count)
- free_mem=$((free_count * pagesize))
- avail_mem=$((inactive_mem + cache_mem + free_mem))
- used_mem=$((round_mem - avail_mem))
- usedmem=$((used_mem / 1024 / 1024))
- elif [ "$distro" == "OpenBSD" ]; then
- totalmem=$(($(sysctl -n hw.physmem) / 1024 / 1024))
- usedmem=$(vmstat | awk '!/[a-z]/{gsub("M",""); print $3}')
- elif [ "$distro" == "NetBSD" ]; then
- phys_mem=$(awk '/MemTotal/ { print $2 }' /proc/meminfo)
- totalmem=$((phys_mem / 1024))
- if grep -q 'Cached' /proc/meminfo; then
- cache=$(awk '/Cached/ {print $2}' /proc/meminfo)
- usedmem=$((cache / 1024))
- else
- free_mem=$(awk '/MemFree/ { print $2 }' /proc/meminfo)
- used_mem=$((phys_mem - free_mem))
- usedmem=$((used_mem / 1024))
- fi
- elif [ "$distro" == "Haiku" ]; then
- totalmem=$(sysinfo -mem | awk 'NR == 1 {gsub(/[\(\)\/]/, ""); printf("%d", $6/1024**2)}')
- usedmem=$(sysinfo -mem | awk 'NR == 1 {gsub(/[\(\)\/]/, ""); printf("%d", $5/1024**2)}')
- else
- # MemUsed = Memtotal + Shmem - MemFree - Buffers - Cached - SReclaimable
- # Source: https://github.com/dylanaraps/neofetch/pull/391/files#diff-e863270127ca6116fd30e708cdc582fc
- #mem_info=$(</proc/meminfo)
- #mem_info=$(echo $(echo $(mem_info=${mem_info// /}; echo ${mem_info//kB/})))
- #for m in $mem_info; do
- # case ${m//:*} in
- # "MemTotal") usedmem=$((usedmem+=${m//*:})); totalmem=${m//*:} ;;
- # "Shmem") usedmem=$((usedmem+=${m//*:})) ;;
- # "MemFree"|"Buffers"|"Cached"|"SReclaimable") usedmem=$((usedmem-=${m//*:})) ;;
- # esac
- #done
- #usedmem=$((usedmem / 1024))
- #totalmem=$((totalmem / 1024))
- mem=$(free -b | awk 'NR==2{print $2"-"$7}')
- usedmem=$((mem / 1024 / 1024))
- totalmem=$((${mem//-*} / 1024 / 1024))
- fi
- mem="${usedmem}MiB / ${totalmem}MiB"
- verboseOut "Finding current RAM usage...found as '$mem'"
- }
- # Memory Detection - End
- # Shell Detection - Begin
- detectshell_ver () {
- local version_data='' version='' get_version='--version'
- case $1 in
- # ksh sends version to stderr. Weeeeeeird.
- ksh)
- version_data="$( $1 $get_version 2>&1 )"
- ;;
- *)
- version_data="$( $1 $get_version 2>/dev/null )"
- ;;
- esac
- if [[ -n $version_data ]];then
- version=$(awk '
- BEGIN {
- IGNORECASE=1
- }
- /'$2'/ {
- gsub(/(,|v|V)/, "",$'$3')
- if ($2 ~ /[Bb][Aa][Ss][Hh]/) {
- gsub(/\(.*|-release|-version\)/,"",$4)
- }
- print $'$3'
- exit # quit after first match prints
- }' <<< "$version_data")
- fi
- echo "$version"
- }
- detectshell () {
- if [[ ! "${shell_type}" ]]; then
- if [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" || "${distro}" == "Haiku" || "${distro}" == "Alpine Linux" ||
- "${distro}" == "Mac OS X" || "${distro}" == "macOS" || "${distro}" == "TinyCore" || "${distro}" == "Raspbian" || "${OSTYPE}" == "gnu" ]]; then
- shell_type=$(echo "$SHELL" | awk -F'/' '{print $NF}')
- elif readlink -f "$SHELL" 2>&1 | grep -q -i 'busybox'; then
- shell_type="BusyBox"
- else
- if [[ "${OSTYPE}" =~ "linux" ]]; then
- shell_type=$(realpath /proc/$PPID/exe | awk -F'/' '{print $NF}')
- elif [[ "${distro}" =~ "BSD" ]]; then
- shell_type=$(ps -p $PPID -o command | tail -1)
- else
- shell_type=$(ps -p "$(ps -p $PPID | awk '$1 !~ /PID/ {print $1}')" | awk 'FNR>1 {print $1}')
- fi
- shell_type=${shell_type/-}
- shell_type=${shell_type//*\/}
- fi
- fi
- case $shell_type in
- bash)
- shell_version_data=$( detectshell_ver "$shell_type" "^GNU.bash,.version" "4" )
- ;;
- BusyBox)
- shell_version_data=$( busybox | head -n1 | cut -d ' ' -f2 )
- ;;
- csh)
- shell_version_data=$( detectshell_ver "$shell_type" "$shell_type" "3" )
- ;;
- dash)
- shell_version_data=$( detectshell_ver "$shell_type" "$shell_type" "3" )
- ;;
- ksh)
- shell_version_data=$( detectshell_ver "$shell_type" "version" "5" )
- ;;
- tcsh)
- shell_version_data=$( detectshell_ver "$shell_type" "^tcsh" "2" )
- ;;
- zsh)
- shell_version_data=$( detectshell_ver "$shell_type" "^zsh" "2" )
- ;;
- fish)
- shell_version_data=$( fish --version | awk '{print $3}' )
- ;;
- esac
- if [[ -n $shell_version_data ]];then
- shell_type="$shell_type $shell_version_data"
- fi
- myShell=${shell_type}
- verboseOut "Finding current shell...found as '$myShell'"
- }
- # Shell Detection - End
- # Resolution Detection - Begin
- detectres () {
- xResolution="No X Server"
- if [[ ${distro} == "Mac OS X" || $distro == "macOS" ]]; then
- xResolution=$(system_profiler SPDisplaysDataType | awk '/Resolution:/ {print $2"x"$4" "}')
- if [[ "$(echo "$xResolution" | wc -l)" -ge 1 ]]; then
- xResolution=$(echo "$xResolution" | tr " \\n" ", " | sed 's/\(.*\),/\1/')
- fi
- elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- xResolution=$(wmic path Win32_VideoController get CurrentHorizontalResolution,CurrentVerticalResolution | awk 'NR==2 {print $1"x"$2}')
- elif [[ "${distro}" == "Haiku" ]]; then
- xResolution="$(screenmode | grep Resolution | awk '{gsub(/,/,""); print $2"x"$3}')"
- elif [[ -n ${DISPLAY} ]]; then
- if type -p xdpyinfo >/dev/null 2>&1; then
- xResolution=$(xdpyinfo | awk '/^ +dimensions/ {print $2}')
- fi
- fi
- verboseOut "Finding current resolution(s)...found as '$xResolution'"
- }
- # Resolution Detection - End
- # DE Detection - Begin
- detectde () {
- DE="Not Present"
- if [[ "${distro}" == "Mac OS X" || "${distro}" == "macOS" ]]; then
- if ps -U "${USER}" | grep -q -i 'finder'; then
- DE="Aqua"
- fi
- elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- # https://msdn.microsoft.com/en-us/library/ms724832%28VS.85%29.aspx
- if wmic os get version | grep -q '^\(6\.[01]\)'; then
- DE="Aero"
- elif wmic os get version | grep -q '^\(6\.[23]\|10\)'; then
- DE="Modern UI/Metro"
- else
- DE="Luna"
- fi
- elif [[ -n ${DISPLAY} ]]; then
- if type -p xprop >/dev/null 2>&1;then
- xprop_root="$(xprop -root 2>/dev/null)"
- if [[ -n ${xprop_root} ]]; then
- DE=$(echo "${xprop_root}" | awk 'BEGIN {
- de = "Not Present"
- }
- {
- if ($1 ~ /^_DT_SAVE_MODE/) {
- de = $NF
- gsub(/"/,"",de)
- de = toupper(de)
- exit
- }
- else if ($1 ~/^KDE_SESSION_VERSION/) {
- de = "KDE"$NF
- exit
- }
- else if ($1 ~ /^_MUFFIN/) {
- de = "Cinnamon"
- exit
- }
- else if ($1 ~ /^TDE_FULL_SESSION/) {
- de = "Trinity"
- exit
- }
- else if ($0 ~ /"xfce4"/) {
- de = "Xfce4"
- exit
- }
- else if ($0 ~ /"xfce5"/) {
- de = "Xfce5"
- exit
- }
- } END {
- print de
- }')
- fi
- fi
- if [[ ${DE} == "Not Present" ]]; then
- # Let's use xdg-open code for GNOME/Enlightment/KDE/LXDE/MATE/Xfce detection
- # http://bazaar.launchpad.net/~vcs-imports/xdg-utils/master/view/head:/scripts/xdg-utils-common.in#L251
- if [ -n "${XDG_CURRENT_DESKTOP}" ]; then
- case "${XDG_CURRENT_DESKTOP,,}" in
- 'enlightenment')
- DE="Enlightenment"
- ;;
- 'gnome')
- DE="GNOME"
- ;;
- 'kde')
- DE="KDE"
- ;;
- 'lumina')
- DE="Lumina"
- ;;
- 'lxde')
- DE="LXDE"
- ;;
- 'mate')
- DE="MATE"
- ;;
- 'xfce')
- DE="Xfce"
- ;;
- 'x-cinnamon')
- DE="Cinnamon"
- ;;
- 'unity')
- DE="Unity"
- ;;
- 'lxqt')
- DE="LXQt"
- ;;
- esac
- fi
- if [ -n "$DE" ]; then
- # classic fallbacks
- if [ -n "$KDE_FULL_SESSION" ]; then
- DE="KDE"
- elif [ -n "$TDE_FULL_SESSION" ]; then
- DE="Trinity"
- elif [ -n "$GNOME_DESKTOP_SESSION_ID" ]; then
- DE="GNOME"
- elif [ -n "$MATE_DESKTOP_SESSION_ID" ]; then
- DE="MATE"
- elif dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus \
- org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager >/dev/null 2>&1 ; then
- DE="GNOME"
- elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep -q -i ' = \"xfce4\"$'; then
- DE="Xfce"
- elif xprop -root 2> /dev/null | grep -q -i '^xfce_desktop_window'; then
- DE="Xfce"
- elif echo "$DESKTOP" | grep -q -i '^Enlightenment'; then
- DE="Enlightenment"
- fi
- fi
- if [[ -z "$DE" || "$DE" = "Not Present" ]]; then
- # fallback to checking $DESKTOP_SESSION
- case "${DESKTOP_SESSION,,}" in
- 'gnome'*)
- DE="GNOME"
- ;;
- 'deepin')
- DE="Deepin"
- ;;
- 'lumina')
- DE="Lumina"
- ;;
- 'lxde'|'lubuntu')
- DE="LXDE"
- ;;
- 'mate')
- DE="MATE"
- ;;
- 'xfce'*)
- DE="Xfce"
- ;;
- 'budgie-desktop')
- DE="Budgie"
- ;;
- 'cinnamon')
- DE="Cinnamon"
- ;;
- 'trinity')
- DE="Trinity"
- ;;
- esac
- fi
- if [ -n "$DE" ]; then
- # fallback to checking $GDMSESSION
- case "${GDMSESSION,,}" in
- 'lumina'*)
- DE="Lumina"
- ;;
- 'mate')
- DE="MATE"
- ;;
- esac
- fi
- if [[ ${DE} == "GNOME" ]]; then
- if type -p xprop >/dev/null 2>&1; then
- if xprop -name "unity-launcher" >/dev/null 2>&1; then
- DE="Unity"
- elif xprop -name "launcher" >/dev/null 2>&1 &&
- xprop -name "panel" >/dev/null 2>&1; then
- DE="Unity"
- fi
- fi
- fi
- if [[ ${DE} == "KDE" ]]; then
- if [[ -n ${KDE_SESSION_VERSION} ]]; then
- if [[ ${KDE_SESSION_VERSION} == '5' ]]; then
- DE="KDE5"
- elif [[ ${KDE_SESSION_VERSION} == '4' ]]; then
- DE="KDE4"
- fi
- elif [[ ${KDE_FULL_SESSION} == 'true' ]]; then
- DE="KDE"
- DEver_data=$(kded --version 2>/dev/null)
- DEver=$(grep -si '^KDE:' <<< "$DEver_data" | awk '{print $2}')
- fi
- fi
- fi
- if [[ ${DE} != "Not Present" ]]; then
- if [[ ${DE} == "Cinnamon" ]]; then
- if type -p >/dev/null 2>&1; then
- DEver=$(cinnamon --version)
- DE="${DE} ${DEver//* }"
- fi
- elif [[ ${DE} == "GNOME" ]]; then
- if type -p gnome-control-center>/dev/null 2>&1; then
- DEver=$(gnome-control-center --version 2> /dev/null)
- DE="${DE} ${DEver//* }"
- elif type -p gnome-session-properties >/dev/null 2>&1; then
- DEver=$(gnome-session-properties --version 2> /dev/null)
- DE="${DE} ${DEver//* }"
- elif type -p gnome-session >/dev/null 2>&1; then
- DEver=$(gnome-session --version 2> /dev/null)
- DE="${DE} ${DEver//* }"
- fi
- elif [[ ${DE} == "KDE4" || ${DE} == "KDE5" ]]; then
- if type -p kded${DE#KDE} >/dev/null 2>&1; then
- DEver=$(kded${DE#KDE} --version)
- if [[ $(( $(echo "$DEver" | wc -w) )) -eq 2 ]] && [[ "$(echo "$DEver" | cut -d ' ' -f1)" == "kded${DE#KDE}" ]]; then
- DEver=$(echo "$DEver" | cut -d ' ' -f2)
- DE="KDE ${DEver}"
- else
- for l in $(echo "${DEver// /_}"); do
- if [[ ${l//:*} == "KDE_Development_Platform" ]]; then
- DEver=${l//*:_}
- DE="KDE ${DEver//_*}"
- fi
- done
- fi
- if pgrep -U ${UID} plasmashell >/dev/null 2>&1; then
- DEver=$(plasmashell --version | cut -d ' ' -f2)
- DE="$DE / Plasma $DEver"
- fi
- fi
- elif [[ ${DE} == "Lumina" ]]; then
- if type -p Lumina-DE.real >/dev/null 2>&1; then
- lumina="$(type -p Lumina-DE.real)"
- elif type -p Lumina-DE >/dev/null 2>&1; then
- lumina="$(type -p Lumina-DE)"
- fi
- if [ -n "$lumina" ]; then
- if grep -q '--version' "$lumina"; then
- DEver=$("$lumina" --version 2>&1 | tr -d \")
- DE="${DE} ${DEver}"
- fi
- fi
- elif [[ ${DE} == "LXQt" ]]; then
- if type -p lxqt-about >/dev/null 2>&1; then
- DEver=$(lxqt-about --version | awk '/^liblxqt/ {print $2}')
- DE="${DE} ${DEver}"
- fi
- elif [[ ${DE} == "MATE" ]]; then
- if type -p mate-session >/dev/null 2>&1; then
- DEver=$(mate-session --version)
- DE="${DE} ${DEver//* }"
- fi
- elif [[ ${DE} == "Unity" ]]; then
- if type -p unity >/dev/null 2>&1; then
- DEver=$(unity --version)
- DE="${DE} ${DEver//* }"
- fi
- elif [[ ${DE} == "Deepin" ]]; then
- if [[ -f /etc/deepin-version ]]; then
- DEver="$(awk -F '=' '/Version/ {print $2}' /etc/deepin-version)"
- DE="${DE} ${DEver//* }"
- fi
- elif [[ ${DE} == "Trinity" ]]; then
- if type -p tde-config >/dev/null 2>&1; then
- DEver="$(tde-config --version | awk -F ' ' '/TDE:/ {print $2}')"
- DE="${DE} ${DEver//* }"
- fi
- fi
- fi
- if [[ "${DE}" == "Not Present" ]]; then
- if pgrep -U ${UID} lxsession >/dev/null 2>&1; then
- DE="LXDE"
- if type -p lxpanel >/dev/null 2>&1; then
- DEver=$(lxpanel -v)
- DE="${DE} $DEver"
- fi
- elif pgrep -U ${UID} lxqt-session >/dev/null 2>&1; then
- DE="LXQt"
- elif pgrep -U ${UID} razor-session >/dev/null 2>&1; then
- DE="RazorQt"
- elif pgrep -U ${UID} dtsession >/dev/null 2>&1; then
- DE="CDE"
- fi
- fi
- fi
- verboseOut "Finding desktop environment...found as '$DE'"
- }
- ### DE Detection - End
- # WM Detection - Begin
- detectwm () {
- WM="Not Found"
- if [[ ${distro} == "Mac OS X" || ${distro} == "macOS" ]]; then
- if ps -U "${USER}" | grep -q -i 'finder'; then
- WM="Quartz Compositor"
- fi
- elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- if [ "$(tasklist | grep -o 'bugn' | tr -d '\r \n')" = "bugn" ]; then
- WM="bug.n"
- elif [ "$(tasklist | grep -o 'Windawesome' | tr -d '\r \n')" = "Windawesome" ]; then
- WM="Windawesome"
- elif [ "$(tasklist | grep -o 'blackbox' | tr -d '\r \n')" = "blackbox" ]; then
- WM="Blackbox"
- else
- WM="DWM/Explorer"
- fi
- elif [[ -n ${DISPLAY} ]]; then
- if [[ "${distro}" == "FreeBSD" ]]; then
- pgrep_flags="-aU"
- else
- pgrep_flags="-U"
- fi
- for each in "${wmnames[@]}"; do
- PID="$(pgrep ${pgrep_flags} ${UID} "^$each$")"
- if [ "$PID" ]; then
- case $each in
- '2bwm') WM="2bwm";;
- '9wm') WM="9wm";;
- 'awesome') WM="Awesome";;
- 'beryl') WM="Beryl";;
- 'blackbox') WM="BlackBox";;
- 'bspwm') WM="bspwm";;
- 'budgie-wm') WM="BudgieWM";;
- 'chromeos-wm') WM="chromeos-wm";;
- 'cinnamon') WM="Muffin";;
- 'compiz') WM="Compiz";;
- 'deepin-wm') WM="deepin-wm";;
- 'dminiwm') WM="dminiwm";;
- 'dtwm') WM="dtwm";;
- 'dwm') WM="dwm";;
- 'e16') WM="E16";;
- 'emerald') WM="Emerald";;
- 'enlightenment') WM="E17";;
- 'fluxbox') WM="FluxBox";;
- 'flwm'|'flwm_topside') WM="FLWM";;
- 'fvwm') WM="FVWM";;
- 'herbstluftwm') WM="herbstluftwm";;
- 'howm') WM="howm";;
- 'i3') WM="i3";;
- 'icewm') WM="IceWM";;
- 'kwin') WM="KWin";;
- 'metacity') WM="Metacity";;
- 'monsterwm') WM="monsterwm";;
- 'musca') WM="Musca";;
- 'mwm') WM="MWM";;
- 'notion') WM="Notion";;
- 'openbox') WM="OpenBox";;
- 'pekwm') WM="PekWM";;
- 'ratpoison') WM="Ratpoison";;
- 'sawfish') WM="Sawfish";;
- 'scrotwm') WM="ScrotWM";;
- 'spectrwm') WM="SpectrWM";;
- 'stumpwm') WM="StumpWM";;
- 'subtle') WM="subtle";;
- 'sway') WM="sway";;
- 'swm') WM="swm";;
- 'twin') WM="TWin";;
- 'wmaker') WM="WindowMaker";;
- 'wmfs') WM="WMFS";;
- 'wmii') WM="wmii";;
- 'xfwm4') WM="Xfwm4";;
- 'xmonad.*') WM="XMonad";;
- esac
- fi
- if [[ ${WM} != "Not Found" ]]; then
- break 1
- fi
- done
- if [[ ${WM} == "Not Found" ]]; then
- if type -p xprop >/dev/null 2>&1; then
- WM=$(xprop -root _NET_SUPPORTING_WM_CHECK)
- if [[ "$WM" =~ 'not found' ]]; then
- WM="Not Found"
- elif [[ "$WM" =~ 'Not found' ]]; then
- WM="Not Found"
- elif [[ "$WM" =~ '[Ii]nvalid window id format' ]]; then
- WM="Not Found"
- elif [[ "$WM" =~ "no such" ]]; then
- WM="Not Found"
- else
- WM=${WM//* }
- WM=$(xprop -id "${WM}" 8s _NET_WM_NAME)
- WM=$(echo "$(WM=${WM//*= }; echo "${WM//\"}")")
- fi
- fi
- fi
- # Proper format WM names that need it.
- if [[ ${BASH_VERSINFO[0]} -ge 4 ]]; then
- if [[ ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -gt 1 ]] || [[ ${BASH_VERSINFO[0]} -gt 4 ]]; then
- WM_lower=${WM,,}
- else
- WM_lower="$(tr '[:upper:]' '[:lower:]' <<< "${WM}")"
- fi
- else
- WM_lower="$(tr '[:upper:]' '[:lower:]' <<< "${WM}")"
- fi
- case ${WM_lower} in
- *'gala'*) WM="Gala";;
- '2bwm') WM="2bwm";;
- 'awesome') WM="Awesome";;
- 'beryl') WM="Beryl";;
- 'blackbox') WM="BlackBox";;
- 'budgiewm') WM="BudgieWM";;
- 'chromeos-wm') WM="chromeos-wm";;
- 'cinnamon') WM="Cinnamon";;
- 'compiz') WM="Compiz";;
- 'deepin-wm') WM="Deepin WM";;
- 'dminiwm') WM="dminiwm";;
- 'dwm') WM="dwm";;
- 'e16') WM="E16";;
- 'echinus') WM="echinus";;
- 'emerald') WM="Emerald";;
- 'enlightenment') WM="E17";;
- 'fluxbox') WM="FluxBox";;
- 'flwm'|'flwm_topside') WM="FLWM";;
- 'fvwm') WM="FVWM";;
- 'gnome shell'*) WM="Mutter";;
- 'herbstluftwm') WM="herbstluftwm";;
- 'howm') WM="howm";;
- 'i3') WM="i3";;
- 'icewm') WM="IceWM";;
- 'kwin') WM="KWin";;
- 'metacity') WM="Metacity";;
- 'monsterwm') WM="monsterwm";;
- 'muffin') WM="Muffin";;
- 'musca') WM="Musca";;
- 'mutter'*) WM="Mutter";;
- 'mwm') WM="MWM";;
- 'notion') WM="Notion";;
- 'openbox') WM="OpenBox";;
- 'pekwm') WM="PekWM";;
- 'ratpoison') WM="Ratpoison";;
- 'sawfish') WM="Sawfish";;
- 'scrotwm') WM="ScrotWM";;
- 'spectrwm') WM="SpectrWM";;
- 'stumpwm') WM="StumpWM";;
- 'subtle') WM="subtle";;
- 'sway') WM="sway";;
- 'swm') WM="swm";;
- 'twin') WM="TWin";;
- 'wmaker') WM="WindowMaker";;
- 'wmfs') WM="WMFS";;
- 'wmii') WM="wmii";;
- 'xfwm4') WM="Xfwm4";;
- 'xmonad') WM="XMonad";;
- esac
- fi
- verboseOut "Finding window manager...found as '$WM'"
- }
- # WM Detection - End
- # WM Theme Detection - BEGIN
- detectwmtheme () {
- Win_theme="Not Found"
- if [[ "${distro}" == "Mac OS X" || "${distro}" == "macOS" ]]; then
- themeNumber="$(defaults read NSGlobalDomain AppleAquaColorVariant 2>/dev/null)"
- accentColorNumber="$(defaults read NSGlobalDomain AppleAccentColor 2>/dev/null)"
- interfaceStyle="$(defaults read NSGlobalDomain AppleInterfaceStyle 2>/dev/null)"
- if [ "${themeNumber}" == "1" ] || [ "${themeNumber}x" == "x" ]; then
- case "${accentColorNumber}" in
- "5")
- Win_theme="Purple"
- ;;
- "6")
- Win_theme="Pink"
- ;;
- "0")
- Win_theme="Red"
- ;;
- "1")
- Win_theme="Orange"
- ;;
- "2")
- Win_theme="Yellow"
- ;;
- "3")
- Win_theme="Green"
- ;;
- *)
- Win_theme="Blue"
- ;;
- esac
- else
- Win_theme="Graphite"
- fi
- if [ "${interfaceStyle}" == "Dark" ]; then
- Win_theme="${Win_theme} (Dark)"
- fi
- elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then
- if [ "${WM}" == "Blackbox" ]; then
- if [ "${distro}" == "Msys" ]; then
- Blackbox_loc=$(reg query 'HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon' //v 'Shell')
- else
- Blackbox_loc=$(reg query 'HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon' /v 'Shell')
- fi
- Blackbox_loc="$(echo "${Blackbox_loc}" | sed 's/.*REG_SZ//' | sed -e 's/^[ \t]*//' | sed 's/.\{4\}$//')"
- Win_theme=$(grep 'session.styleFile' "${Blackbox_loc}.rc" | sed 's/ //g' | sed 's/session\.styleFile://g' | sed 's/.*\\//g')
- else
- if [[ "${distro}" == "Msys" ]]; then
- themeFile="$(reg query 'HKCU\Software\Microsoft\Windows\CurrentVersion\Themes' //v 'CurrentTheme')"
- else
- themeFile="$(reg query 'HKCU\Software\Microsoft\Windows\CurrentVersion\Themes' /v 'CurrentTheme')"
- fi
- Win_theme=$(echo "$themeFile" | awk -F"\\" '{print $NF}' | sed 's|\.theme$||')
- fi
- else
- case $WM in
- '2bwm'|'9wm'|'Beryl'|'bspwm'|'dminiwm'|'dwm'|'echinus'|'FVWM'|'howm'|'i3'|'monsterwm'|'Musca'|\
- 'Notion'|'Ratpoison'|'ScrotWM'|'SpectrWM'|'swm'|'subtle'|'WindowMaker'|'WMFS'|'wmii'|'XMonad')
- Win_theme="Not Applicable"
- ;;
- 'Awesome')
- if [ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/awesome/rc.lua" ]; then
- Win_theme="$(grep '^[^-].*\(theme\|beautiful\).*lua' "${XDG_CONFIG_HOME:-${HOME}/.config}/awesome/rc.lua" | grep '[^/]\+/[^/]\+.lua' -o | cut -d'/' -f1 | head -1)"
- fi
- ;;
- 'BlackBox')
- if [ -f "$HOME/.blackboxrc" ]; then
- Win_theme="$(awk -F"/" '/styleFile/ {print $NF}' "$HOME/.blackboxrc")"
- fi
- ;;
- 'BudgieWM')
- Win_theme="$(gsettings get org.gnome.desktop.wm.preferences theme)"
- Win_theme="${Win_theme//\'}"
- ;;
- 'Cinnamon'|'Muffin')
- de_theme="$(gsettings get org.cinnamon.theme name)"
- de_theme=${de_theme//"'"}
- win_theme="$(gsettings get org.cinnamon.desktop.wm.preferences theme)"
- win_theme=${win_theme//"'"}
- Win_theme="${de_theme} (${win_theme})"
- ;;
- 'Compiz'|'Mutter'*|'GNOME Shell'|'Gala')
- if type -p gsettings >/dev/null 2>&1; then
- Win_theme="$(gsettings get org.gnome.shell.extensions.user-theme name 2>/dev/null)"
- if [[ -z "$Win_theme" ]]; then
- Win_theme="$(gsettings get org.gnome.desktop.wm.preferences theme)"
- fi
- Win_theme=${Win_theme//"'"}
- elif type -p gconftool-2 >/dev/null 2>&1; then
- Win_theme=$(gconftool-2 -g /apps/metacity/general/theme)
- fi
- ;;
- 'Deepin WM')
- if type -p gsettings >/dev/null 2>&1; then
- Win_theme="$(gsettings get com.deepin.wrap.gnome.desktop.wm.preferences theme)"
- Win_theme=${Win_theme//"'"}
- fi
- ;;
- 'E16')
- Win_theme="$(awk -F"= " '/theme.name/ {print $2}' $HOME/.e16/e_config--*.cfg)"
- ;;
- 'E17'|'Enlightenment')
- if [ "$(which eet 2>/dev/null)" ]; then
- econfig="$(eet -d "$HOME/.e/e/config/standard/e.cfg" config | awk '/value \"file\" string.*.edj/{ print $4 }')"
- econfigend="${econfig##*/}"
- Win_theme=${econfigend%.*}
- elif [ -n "${E_CONF_PROFILE}" ]; then
- #E17 doesn't store cfg files in text format so for now get the profile as opposed to theme. atyoung
- #TODO: Find a way to extract and read E17 .cfg files ( google seems to have nothing ). atyoung
- Win_theme="${E_CONF_PROFILE}"
- fi
- ;;
- 'Emerald')
- if [ -f "$HOME/.emerald/theme/theme.ini" ]; then
- Win_theme="$(for a in /usr/share/emerald/themes/* $HOME/.emerald/themes/*; do cmp "$HOME/.emerald/theme/theme.ini" "$a/theme.ini" &>/dev/null && basename "$a"; done)"
- fi
- ;;
- 'FluxBox'|'Fluxbox')
- if [ -f "$HOME/.fluxbox/init" ]; then
- Win_theme="$(awk -F"/" '/styleFile/ {print $NF}' "$HOME/.fluxbox/init")"
- fi
- ;;
- 'IceWM')
- if [ -f "$HOME/.icewm/theme" ]; then
- Win_theme="$(awk -F"[\",/]" '!/#/ {print $2}' "$HOME/.icewm/theme")"
- fi
- ;;
- 'KWin'*)
- if [[ -z $KDE_CONFIG_DIR ]]; then
- if type -p kde5-config >/dev/null 2>&1; then
- KDE_CONFIG_DIR=$(kde5-config --localprefix)
- elif type -p kde4-config >/dev/null 2>&1; then
- KDE_CONFIG_DIR=$(kde4-config --localprefix)
- elif type -p kde-config >/dev/null 2>&1; then
- KDE_CONFIG_DIR=$(kde-config --localprefix)
- fi
- fi
- if [[ -n $KDE_CONFIG_DIR ]]; then
- Win_theme="Not Applicable"
- KDE_CONFIG_DIR=${KDE_CONFIG_DIR%/}
- if [[ -f $KDE_CONFIG_DIR/share/config/kwinrc ]]; then
- Win_theme="$(awk '/PluginLib=kwin3_/{gsub(/PluginLib=kwin3_/,"",$0); print $0; exit}' "$KDE_CONFIG_DIR/share/config/kwinrc")"
- if [[ -z "$Win_theme" ]]; then
- Win_theme="Not Applicable"
- fi
- fi
- if [[ "$Win_theme" == "Not Applicable" ]]; then
- if [[ -f $KDE_CONFIG_DIR/share/config/kdebugrc ]]; then
- Win_theme="$(awk '/(decoration)/ {gsub(/\[/,"",$1); print $1; exit}' "$KDE_CONFIG_DIR/share/config/kdebugrc")"
- if [[ -z "$Win_theme" ]]; then
- Win_theme="Not Applicable"
- fi
- fi
- fi
- if [[ "$Win_theme" == "Not Applicable" ]]; then
- if [[ -f $KDE_CONFIG_DIR/share/config/kdeglobals ]]; then
- Win_theme="$(awk '/\[General\]/ {flag=1;next} /^$/{flag=0} flag {print}' "$KDE_CONFIG_DIR/share/config/kdeglobals" | grep -oP 'Name=\K.*')"
- if [[ -z "$Win_theme" ]]; then
- Win_theme="Not Applicable"
- fi
- fi
- fi
- if [[ "$Win_theme" != "Not Applicable" ]]; then
- if [[ ${BASH_VERSINFO[0]} -ge 4 ]]; then
- if [[ ${BASH_VERSINFO[0]} -eq 4 && ${BASH_VERSINFO[1]} -gt 1 ]] || [[ ${BASH_VERSINFO[0]} -gt 4 ]]; then
- Win_theme="${Win_theme^}"
- else
- Win_theme="$(tr '[:lower:]' '[:upper:]' <<< "${Win_theme:0:1}")${Win_theme:1}"
- fi
- else
- Win_theme="$(tr '[:lower:]' '[:upper:]' <<< "${Win_theme:0:1}")${Win_theme:1}"
- fi
- fi
- fi
- ;;
- 'Marco'|'Metacity (Marco)')
- Win_theme="$(gsettings get org.mate.Marco.general theme)"
- Win_theme=${Win_theme//"'"}
- ;;
- 'Metacity')
- if [ "$(gconftool-2 -g /apps/metacity/general/theme)" ]; then
- Win_theme="$(gconftool-2 -g /apps/metacity/general/theme)"
- fi
- ;;
- 'OpenBox'|'Openbox')
- if [ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/openbox/rc.xml" ]; then
- Win_theme="$(awk -F"[<,>]" '/<theme/ { getline; print $3 }' "${XDG_CONFIG_HOME:-${HOME}/.config}/openbox/rc.xml")";
- elif [[ -f ${XDG_CONFIG_HOME:-${HOME}/.config}/openbox/lxde-rc.xml && "${DE}" == "LXDE" ]]; then
- Win_theme="$(awk -F"[<,>]" '/<theme/ { getline; print $3 }' "${XDG_CONFIG_HOME:-${HOME}/.config}/openbox/lxde-rc.xml")";
- elif [[ -f ${XDG_CONFIG_HOME:-${HOME}/.config}/openbox/lxqt-rc.xml && "${DE}" =~ "LXQt" ]]; then
- Win_theme="$(awk -F'=' '/^theme/ {print $2}' ${HOME}/.config/lxqt/lxqt.conf)"
- fi
- ;;
- 'PekWM')
- if [ -f "$HOME/.pekwm/config" ]; then
- Win_theme="$(awk -F"/" '/Theme/ {gsub(/\"/,""); print $NF}' "$HOME/.pekwm/config")"
- fi
- ;;
- 'Sawfish')
- Win_theme="$(awk -F")" '/\(quote default-frame-style/{print $2}' "$HOME/.sawfish/custom" | sed 's/ (quote //')"
- ;;
- 'TWin')
- if [[ -z $TDE_CONFIG_DIR ]]; then
- if type -p tde-config >/dev/null 2>&1; then
- TDE_CONFIG_DIR=$(tde-config --localprefix)
- fi
- fi
- if [[ -n $TDE_CONFIG_DIR ]]; then
- TDE_CONFIG_DIR=${TDE_CONFIG_DIR%/}
- if [[ -f $TDE_CONFIG_DIR/share/config/kcmthememanagerrc ]]; then
- Win_theme=$(awk '/CurrentTheme=/ {gsub(/CurrentTheme=/,"",$0); print $0; exit}' "$TDE_CONFIG_DIR/share/config/kcmthememanagerrc")
- fi
- if [[ -z $Win_theme ]]; then
- Win_theme="Not Applicable"
- fi
- fi
- ;;
- 'Xfwm4')
- if [ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml" ]; then
- Win_theme="$(xfconf-query -c xfwm4 -p /general/theme)"
- fi
- ;;
- esac
- fi
- verboseOut "Finding window manager theme...found as '$Win_theme'"
- }
- # WM Theme Detection - END
- # GTK Theme\Icon\Font Detection - BEGIN
- detectgtk () {
- gtk2Theme="Not Found"
- gtk3Theme="Not Found"
- gtkIcons="Not Found"
- gtkFont="Not Found"
- # Font detection (OS X)
- if [[ ${distro} == "Mac OS X" || ${distro} == "macOS" ]]; then
- gtk2Theme="Not Applicable"
- gtk3Theme="Not Applicable"
- gtkIcons="Not Applicable"
- if ps -U "${USER}" | grep -q -i 'finder'; then
- if [[ ${TERM_PROGRAM} == "iTerm.app" ]] && [ -f ~/Library/Preferences/com.googlecode.iterm2.plist ]; then
- # iTerm2
- iterm2_theme_uuid=$(defaults read com.googlecode.iTerm2 "Default Bookmark Guid")
- OLD_IFS=$IFS
- IFS=$'\n'
- iterm2_theme_info=($(defaults read com.googlecode.iTerm2 "New Bookmarks" | grep -e 'Guid\s*=\s*\w+' -e 'Normal Font'))
- IFS=$OLD_IFS
- for i in $(seq 0 $((${#iterm2_theme_info[*]}/2-1))); do
- found_uuid=$(str1=${iterm2_theme_info[$i*2]};echo "${str1}")
- if [[ $found_uuid == $iterm2_theme_info ]]; then
- gtkFont=$(str2=${iterm2_theme_info[$i*2+1]};echo ${str2:25:${#str2}-25-2} | sed 's/ [0-9]*$//')
- break
- fi
- done
- else
- # Terminal.app
- termapp_theme_name=$(defaults read com.apple.Terminal "Default Window Settings")
- OLD_IFS=$IFS
- IFS=$'\n'
- termapp_theme_info=$(/usr/libexec/PlistBuddy -c \
- "print ':Window Settings:${termapp_theme_name}:Font'" \
- ~/Library/Preferences/com.apple.Terminal.plist \
- | xxd -p |tr -d '\n\t\s')
- IFS=$OLD_IFS
- gtkFont=$(echo "${termapp_theme_info:288:60}" | xxd -r -p | perl -pe 'binmode(STDIN, ":bytes"); tr/A-Za-z0-9_\!\@\#\$\%\&\^\*\(\)-+=//dc;')
- gtkFont=$(echo "${gtkFont:1}" | sed 's/Z\$.*//')
- fi
- fi
- else
- case $DE in
- 'KDE'*) # Desktop Environment found as "KDE"
- if type - p kde4-config >/dev/null 2>&1; then
- KDE_CONFIG_DIR=$(kde4-config --localprefix)
- if [[ -d ${KDE_CONFIG_DIR} ]]; then
- if [[ -f "${KDE_CONFIG_DIR}/share/config/kdeglobals" ]]; then
- KDE_CONFIG_FILE="${KDE_CONFIG_DIR}/share/config/kdeglobals"
- fi
- fi
- elif type -p kde5-config >/dev/null 2>&1; then
- KDE_CONFIG_DIR=$(kde5-config --localprefix)
- if [[ -d ${KDE_CONFIG_DIR} ]]; then
- if [[ -f "${KDE_CONFIG_DIR}/share/config/kdeglobals" ]]; then
- KDE_CONFIG_FILE="${KDE_CONFIG_DIR}/share/config/kdeglobals"
- fi
- fi
- elif type -p kde-config >/dev/null 2>&1; then
- KDE_CONFIG_DIR=$(kde-config --localprefix)
- if [[ -d ${KDE_CONFIG_DIR} ]]; then
- if [[ -f "${KDE_CONFIG_DIR}/share/config/kdeglobals" ]]; then
- KDE_CONFIG_FILE="${KDE_CONFIG_DIR}/share/config/kdeglobals"
- fi
- fi
- fi
- if [[ -n ${KDE_CONFIG_FILE} ]]; then
- if grep -q 'widgetStyle=' "${KDE_CONFIG_FILE}"; then
- gtk2Theme=$(awk -F"=" '/widgetStyle=/ {print $2}' "${KDE_CONFIG_FILE}")
- elif grep -q 'colorScheme=' "${KDE_CONFIG_FILE}"; then
- gtk2Theme=$(awk -F"=" '/colorScheme=/ {print $2}' "${KDE_CONFIG_FILE}")
- fi
- if grep -q 'Theme=' "${KDE_CONFIG_FILE}"; then
- gtkIcons=$(awk -F"=" '/Theme=/ {print $2}' "${KDE_CONFIG_FILE}")
- fi
- if grep -q 'Font=' "${KDE_CONFIG_FILE}"; then
- gtkFont=$(awk -F"=" '/font=/ {print $2}' "${KDE_CONFIG_FILE}")
- fi
- fi
- if [[ -f $HOME/.gtkrc-2.0 ]]; then
- gtk2Theme=$(grep '^gtk-theme-name' "$HOME"/.gtkrc-2.0 | awk -F'=' '{print $2}')
- gtk2Theme=${gtk2Theme//\"/}
- gtkIcons=$(grep '^gtk-icon-theme-name' "$HOME"/.gtkrc-2.0 | awk -F'=' '{print $2}')
- gtkIcons=${gtkIcons//\"/}
- gtkFont=$(grep 'font_name' "$HOME"/.gtkrc-2.0 | awk -F'=' '{print $2}')
- gtkFont=${gtkFont//\"/}
- fi
- if [[ -f $HOME/.config/gtk-3.0/settings.ini ]]; then
- gtk3Theme=$(grep '^gtk-theme-name=' "$HOME"/.config/gtk-3.0/settings.ini | awk -F'=' '{print $2}')
- fi
- ;;
- 'Cinnamon'*) # Desktop Environment found as "Cinnamon"
- if type -p gsettings >/dev/null 2>&1; then
- gtk3Theme=$(gsettings get org.cinnamon.desktop.interface gtk-theme)
- gtk3Theme=${gtk3Theme//"'"}
- gtk2Theme=${gtk3Theme}
- gtkIcons=$(gsettings get org.cinnamon.desktop.interface icon-theme)
- gtkIcons=${gtkIcons//"'"}
- gtkFont=$(gsettings get org.cinnamon.desktop.interface font-name)
- gtkFont=${gtkFont//"'"}
- if [ "$background_detect" == "1" ]; then gtkBackground=$(gsettings get org.gnome.desktop.background picture-uri); fi
- fi
- ;;
- 'GNOME'*|'Unity'*|'Budgie') # Desktop Environment found as "GNOME"
- if type -p gsettings >/dev/null 2>&1; then
- gtk3Theme=$(gsettings get org.gnome.desktop.interface gtk-theme)
- gtk3Theme=${gtk3Theme//"'"}
- gtk2Theme=${gtk3Theme}
- gtkIcons=$(gsettings get org.gnome.desktop.interface icon-theme)
- gtkIcons=${gtkIcons//"'"}
- gtkFont=$(gsettings get org.gnome.desktop.interface font-name)
- gtkFont=${gtkFont//"'"}
- if [ "$background_detect" == "1" ]; then gtkBackground=$(gsettings get org.gnome.desktop.background picture-uri); fi
- elif type -p gconftool-2 >/dev/null 2>&1; then
- gtk2Theme=$(gconftool-2 -g /desktop/gnome/interface/gtk_theme)
- gtkIcons=$(gconftool-2 -g /desktop/gnome/interface/icon_theme)
- gtkFont=$(gconftool-2 -g /desktop/gnome/interface/font_name)
- if [ "$background_detect" == "1" ]; then
- gtkBackgroundFull=$(gconftool-2 -g /desktop/gnome/background/picture_filename)
- gtkBackground=$(echo "$gtkBackgroundFull" | awk -F"/" '{print $NF}')
- fi
- fi
- ;;
- 'MATE'*) # MATE desktop environment
- if type -p gsettings >/dev/null 2>&1; then
- gtk3Theme=$(gsettings get org.mate.interface gtk-theme)
- gtk3Theme=${gtk3Theme//"'"}
- gtk2Theme=${gtk3Theme}
- gtkIcons=$(gsettings get org.mate.interface icon-theme)
- gtkIcons=${gtkIcons//"'"}
- gtkFont=$(gsettings get org.mate.interface font-name)
- gtkFont=${gtkFont//"'"}
- fi
- ;;
- 'Xfce'*) # Desktop Environment found as "Xfce"
- if [ "$distro" == "BunsenLabs" ] ; then
- gtk2Theme=$(awk -F'"' '/^gtk-theme/ {print $2}' "$HOME"/.gtkrc-2.0)
- gtk3Theme=$(awk -F'=' '/^gtk-theme-name/ {print $2}' "$HOME"/.config/gtk-3.0/settings.ini)
- gtkIcons=$(awk -F'"' '/^gtk-icon-theme/ {print $2}' "$HOME"/.gtkrc-2.0)
- gtkFont=$(awk -F'"' '/^gtk-font-name/ {print $2}' "$HOME"/.gtkrc-2.0)
- else
- if type -p xfconf-query >/dev/null 2>&1; then
- gtk2Theme=$(xfconf-query -c xsettings -p /Net/ThemeName 2>/dev/null)
- [ -z "$gtk2Theme" ] && gtk2Theme="Not Found"
- fi
- if type -p xfconf-query >/dev/null 2>&1; then
- gtkIcons=$(xfconf-query -c xsettings -p /Net/IconThemeName 2>/dev/null)
- [ -z "$gtkIcons" ] && gtkIcons="Not Found"
- fi
- if type -p xfconf-query >/dev/null 2>&1; then
- gtkFont=$(xfconf-query -c xsettings -p /Gtk/FontName 2>/dev/null)
- [ -z "$gtkFont" ] && gtkFont="Not Identified"
- fi
- fi
- ;;
- 'LXDE'*)
- config_home="${XDG_CONFIG_HOME:-${HOME}/.config}"
- if [ -f "$config_home/lxde/config" ]; then
- lxdeconf="/lxde/config"
- elif [ "$distro" == "Trisquel" ] || [ "$distro" == "FreeBSD" ]; then
- lxdeconf=""
- elif [ -f "$config_home/lxsession/Lubuntu/desktop.conf" ]; then
- lxdeconf="/lxsession/Lubuntu/desktop.conf"
- else
- lxdeconf="/lxsession/LXDE/desktop.conf"
- fi
- if grep -q 'sNet\/ThemeName' "${config_home}${lxdeconf}" 2>/dev/null; then
- gtk2Theme=$(awk -F'=' '/sNet\/ThemeName/ {print $2}' "${config_home}${lxdeconf}")
- fi
- if grep -q 'IconThemeName' "${config_home}${lxdeconf}" 2>/dev/null; then
- gtkIcons=$(awk -F'=' '/sNet\/IconThemeName/ {print $2}' "${config_home}${lxdeconf}")
- fi
- if grep -q 'FontName' "${config_home}${lxdeconf}" 2>/dev/null; then
- gtkFont=$(awk -F'=' '/sGtk\/FontName/ {print $2}' "${config_home}${lxdeconf}")
- fi
- ;;
- # /home/me/.config/rox.sourceforge.net/ROX-Session/Settings.xml
- *) # Lightweight or No DE Found
- if [ -f "$HOME/.gtkrc-2.0" ]; then
- if grep -q 'gtk-theme' "$HOME/.gtkrc-2.0"; then
- gtk2Theme=$(awk -F'"' '/^gtk-theme/ {print $2}' "$HOME/.gtkrc-2.0")
- fi
- if grep -q 'icon-theme' "$HOME/.gtkrc-2.0"; then
- gtkIcons=$(awk -F'"' '/^gtk-icon-theme/ {print $2}' "$HOME/.gtkrc-2.0")
- fi
- if grep -q 'font' "$HOME/.gtkrc-2.0"; then
- gtkFont=$(awk -F'"' '/^gtk-font-name/ {print $2}' "$HOME/.gtkrc-2.0")
- fi
- fi
- # $HOME/.gtkrc.mine theme detect only
- if [[ -f "$HOME/.gtkrc.mine" ]]; then
- minegtkrc="$HOME/.gtkrc.mine"
- elif [[ -f "$HOME/.gtkrc-2.0.mine" ]]; then
- minegtkrc="$HOME/.gtkrc-2.0.mine"
- fi
- if [ -f "$minegtkrc" ]; then
- if grep -q '^include' "$minegtkrc"; then
- gtk2Theme=$(grep '^include.*gtkrc' "$minegtkrc" | awk -F "/" '{ print $5 }')
- fi
- if grep -q '^gtk-icon-theme-name' "$minegtkrc"; then
- gtkIcons=$(grep '^gtk-icon-theme-name' "$minegtkrc" | awk -F '"' '{print $2}')
- fi
- fi
- # /etc/gtk-2.0/gtkrc compatibility
- if [[ -f /etc/gtk-2.0/gtkrc && ! -f "$HOME/.gtkrc-2.0" && ! -f "$HOME/.gtkrc.mine" && ! -f "$HOME/.gtkrc-2.0.mine" ]]; then
- if grep -q 'gtk-theme-name' /etc/gtk-2.0/gtkrc; then
- gtk2Theme=$(awk -F'"' '/^gtk-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc)
- fi
- if grep -q 'gtk-fallback-theme-name' /etc/gtk-2.0/gtkrc && ! [ "x$gtk2Theme" = "x" ]; then
- gtk2Theme=$(awk -F'"' '/^gtk-fallback-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc)
- fi
- if grep -q 'icon-theme' /etc/gtk-2.0/gtkrc; then
- gtkIcons=$(awk -F'"' '/^icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc)
- fi
- if grep -q 'gtk-fallback-icon-theme' /etc/gtk-2.0/gtkrc && ! [ "x$gtkIcons" = "x" ]; then
- gtkIcons=$(awk -F'"' '/^gtk-fallback-icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc)
- fi
- if grep -q 'font' /etc/gtk-2.0/gtkrc; then
- gtkFont=$(awk -F'"' '/^gtk-font-name/ {print $2}' /etc/gtk-2.0/gtkrc)
- fi
- fi
- # EXPERIMENTAL gtk3 Theme detection
- if [[ "$gtk3Theme" = "Not Found" && -f "$HOME/.config/gtk-3.0/settings.ini" ]]; then
- if grep -q 'gtk-theme-name' "$HOME/.config/gtk-3.0/settings.ini"; then
- gtk3Theme=$(awk -F'=' '/^gtk-theme-name/ {print $2}' "$HOME/.config/gtk-3.0/settings.ini")
- fi
- fi
- # Proper gtk3 Theme detection
- if type -p gsettings >/dev/null 2>&1; then
- if [[ -z "$gtk3Theme" || "$gtk3Theme" = "Not Found" ]]; then
- gtk3Theme=$(gsettings get org.gnome.desktop.interface gtk-theme 2>/dev/null)
- gtk3Theme=${gtk3Theme//"'"}
- fi
- fi
- # ROX-Filer icon detect only
- if [ -a "${XDG_CONFIG_HOME:-${HOME}/.config}/rox.sourceforge.net/ROX-Filer/Options" ]; then
- gtkIcons=$(awk -F'[>,<]' '/icon_theme/ {print $3}' "${XDG_CONFIG_HOME:-${HOME}/.config}/rox.sourceforge.net/ROX-Filer/Options")
- fi
- # E17 detection
- if [ "$E_ICON_THEME" ]; then
- gtkIcons=${E_ICON_THEME}
- gtk2Theme="Not available."
- gtkFont="Not available."
- fi
- # Background Detection (feh, nitrogen)
- if [ "$background_detect" == "1" ]; then
- if [ -a "$HOME/.fehbg" ]; then
- gtkBackgroundFull=$(awk -F"'" '/feh --bg/{print $2}' "$HOME/.fehbg" 2>/dev/null)
- gtkBackground=$(echo "$gtkBackgroundFull" | awk -F"/" '{print $NF}')
- elif [ -a "${XDG_CONFIG_HOME:-${HOME}/.config}/nitrogen/bg-saved.cfg" ]; then
- gtkBackground=$(awk -F"/" '/file=/ {print $NF}' "${XDG_CONFIG_HOME:-${HOME}/.config}/nitrogen/bg-saved.cfg")
- fi
- fi
- if [[ "$distro" == "Cygwin" || "$distro" == "Msys" ]]; then
- if [ "$gtkFont" == "Not Found" ]; then
- if [ -f "$HOME/.minttyrc" ]; then
- gtkFont="$(grep '^Font=.*' "$HOME/.minttyrc" | grep -o '[0-9A-z ]*$')"
- fi
- fi
- fi
- ;;
- esac
- fi
- verboseOut "Finding GTK2 theme...found as '$gtk2Theme'"
- verboseOut "Finding GTK3 theme...found as '$gtk3Theme'"
- verboseOut "Finding icon theme...found as '$gtkIcons'"
- verboseOut "Finding user font...found as '$gtkFont'"
- if [[ -n "$gtkBackground" ]]; then
- verboseOut "Finding background...found as '$gtkBackground'"
- fi
- }
- # GTK Theme\Icon\Font Detection - END
- # Android-specific detections
- detectdroid () {
- distro_ver=$(getprop ro.build.version.release)
- hostname=$(getprop net.hostname)
- device="$(getprop ro.product.model) ($(getprop ro.product.device))"
- if [[ $(getprop ro.build.host) == "cyanogenmod" ]]; then
- rom=$(getprop ro.cm.version)
- else
- rom=$(getprop ro.build.display.id)
- fi
- baseband=$(getprop ro.baseband)
- cpu=$(awk -F': ' '/^Processor/ {P=$2} /^Hardware/ {H=$2} END {print H != "" ? H : P}' /proc/cpuinfo)
- }
- #######################
- # End Detection Phase
- #######################
- takeShot () {
- if [[ -n "$screenCommand" ]]; then
- $screenCommand
- else
- shotfiles[1]=${shotfile}
- if [ "$distro" == "Mac OS X" || "$distro" == "macOS" ]; then
- displays="$(system_profiler SPDisplaysDataType | grep -c 'Resolution:' | tr -d ' ')"
- for (( i=2; i<=displays; i++))
- do
- shotfiles[$i]="$(echo ${shotfile} | sed "s/\(.*\)\./\1_${i}./")"
- done
- printf "Taking shot in 3.. "; sleep 1
- printf "2.. "; sleep 1
- printf "1.. "; sleep 1
- printf "0.\n"
- screencapture -x ${shotfiles[@]} &> /dev/null
- else
- if type -p scrot >/dev/null 2>&1; then
- scrot -cd3 "${shotfile}"
- else
- errorOut "Cannot take screenshot! \`scrot' not in \$PATH"
- fi
- fi
- if [ -f "${shotfile}" ]; then
- verboseOut "Screenshot saved at '${shotfiles[*]}'"
- if [[ "${upload}" == "1" ]]; then
- if type -p curl >/dev/null 2>&1; then
- printf "${bold}==>${c0} Uploading your screenshot now..."
- case "${uploadLoc}" in
- 'teknik')
- baseurl='https://u.teknik.io'
- uploadurl='https://api.teknik.io/upload/post'
- ret=$(curl -sf -F file="@${shotfiles[*]}" ${uploadurl})
- desturl="${ret##*url\":\"}"
- desturl="${desturl%%\"*}"
- desturl="${desturl//\\}"
- ;;
- 'mediacrush')
- baseurl='https://mediacru.sh'
- uploadurl='https://mediacru.sh/api/upload/file'
- ret=$(curl -sf -F file="@${shotfiles[*]};type=image/png" ${uploadurl})
- filehash=$(echo "${ret}" | grep 'hash' | cut -d '"' -f4)
- desturl="${baseurl}/${filehash}"
- ;;
- 'imgur')
- baseurl='http://imgur.com'
- uploadurl='http://imgur.com/upload'
- ret=$(curl -sf -F file="@${shotfiles[*]}" ${uploadurl})
- filehash="${ret##*hash\":\"}"
- filehash="${filehash%%\"*}"
- desturl="${baseurl}/${filehash}"
- ;;
- 'hmp')
- baseurl='http://i.hmp.me/m'
- uploadurl='http://hmp.me/ap/?uf=1'
- ret=$(curl -sf -F a="@${shotfiles[*]};type=image/png" ${uploadurl})
- desturl="${ret##*img_path\":\"}"
- desturl="${desturl%%\"*}"
- desturl="${desturl//\\}"
- ;;
- 'local-example')
- baseurl="http://www.example.com"
- serveraddr="www.example.com"
- scptimeout="20"
- serverdir="/path/to/directory"
- scp -qo ConnectTimeout="${scptimeout}" "${shotfiles[*]}" "${serveraddr}:${serverdir}"
- desturl="${baseurl}/${shotfile}"
- ;;
- esac
- printf "your screenshot can be viewed at ${desturl}\n"
- else
- errorOut "Cannot upload screenshot! \`curl' not in \$PATH"
- fi
- fi
- else
- if type -p scrot >/dev/null 2>&1; then
- errorOut "ERROR: Problem saving screenshot to ${shotfiles[*]}"
- fi
- fi
- fi
- }
- asciiText () {
- # Distro logos and ASCII outputs
- if [[ "$asc_distro" ]]; then
- myascii="${asc_distro}"
- elif [[ "$art" ]]; then
- myascii="custom"
- elif [[ "$fake_distro" ]]; then
- myascii="${fake_distro}"
- else
- myascii="${distro}"
- fi
- case ${myascii} in
- "custom")
- source "$art"
- ;;
- "ALDOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light grey') # light grey
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="27"
- fulloutput=(
- "${c1} %s"
- "${c1} # ## # %s"
- "${c1} # ######## # %s"
- "${c1} # ### ######## # %s"
- "${c1} # #### ######### # %s"
- "${c1} # #### # # # # #### # %s"
- "${c1} # ##### # ##### # %s"
- "${c1} # ###### ##### #### # %s"
- "${c1} # ############### # %s"
- "${c1} %s"
- "${c2} _ ___ ___ ___ %s"
- "${c2} __ _| | \ / _ \/ __| %s"
- "${c2} / _' | | |) | (_) \__ \ %s"
- "${c2} \__,_|_|___/ \___/|___/ %s"
- "${c1} %s"
- "${c1} %s")
- ;;
- "Alpine Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light
- c2=$(getColor 'blue') # Dark
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="34"
- fulloutput=(
- "${c1} ................ %s"
- "${c1} ∴::::::::::::::::∴ %s"
- "${c1} ∴::::::::::::::::::∴ %s"
- "${c1} ∴::::::::::::::::::::∴ %s"
- "${c1} ∴:::::::. :::::':::::::∴ %s"
- "${c1} ∴:::::::. ;::; ::::::::∴ %s"
- "${c1} ∴::::::; ∵ :::::::∴ %s"
- "${c1} ∴:::::. . .::::::∴ %s"
- "${c1} :::::: :::. . :::::: %s"
- "${c1} ∵:::: ::::::. ::. ::::∵ %s"
- "${c1} ∵:.. .:;::::::: :::. :::∵ %s"
- "${c1} ∵::::::::::::::::::::::::∵ %s"
- "${c1} ∵::::::::::::::::::::::∵ %s"
- "${c1} ∵::::::::::::::::::::∵ %s"
- "${c1} :::::::::::::::::::: %s"
- "${c1} ∵::::::::::::::::∵ %s")
- ;;
- "Arch Linux - Old")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c1} __ %s"
- "${c1} _=(SDGJT=_ %s"
- "${c1} _GTDJHGGFCVS) %s"
- "${c1} ,GTDJGGDTDFBGX0 %s"
- "${c1} JDJDIJHRORVFSBSVL${c2}-=+=,_ %s"
- "${c1} IJFDUFHJNXIXCDXDSV,${c2} \"DEBL %s"
- "${c1} [LKDSDJTDU=OUSCSBFLD.${c2} '?ZWX, %s"
- "${c1} ,LMDSDSWH' \`DCBOSI${c2} DRDS], %s"
- "${c1} SDDFDFH' !YEWD,${c2} )HDROD %s"
- "${c1} !KMDOCG &GSU|${c2}\_GFHRGO\' %s"
- "${c1} HKLSGP'${c2} __${c1}\TKM0${c2}\GHRBV)' %s"
- "${c1} JSNRVW'${c2} __+MNAEC${c1}\IOI,${c2}\BN' %s"
- "${c1} HELK['${c2} __,=OFFXCBGHC${c1}\FD) %s"
- "${c1} ?KGHE ${c2}\_-#DASDFLSV='${c1} 'EF %s"
- "${c1} 'EHTI !H %s"
- "${c1} \`0F' '! %s"
- "${c1} %s"
- "${c1} %s")
- ;;
- "Arch Linux"|"Arch Linux 32")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light cyan') # Light
- c2=$(getColor 'cyan') # Dark
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="1"
- logowidth="38"
- fulloutput=(
- "${c1} -\` "
- "${c1} .o+\` %s"
- "${c1} \`ooo/ %s"
- "${c1} \`+oooo: %s"
- "${c1} \`+oooooo: %s"
- "${c1} -+oooooo+: %s"
- "${c1} \`/:-:++oooo+: %s"
- "${c1} \`/++++/+++++++: %s"
- "${c1} \`/++++++++++++++: %s"
- "${c1} \`/+++o${c2}oooooooo${c1}oooo/\` %s"
- "${c2} ${c1}./${c2}ooosssso++osssssso${c1}+\` %s"
- "${c2} .oossssso-\`\`\`\`/ossssss+\` %s"
- "${c2} -osssssso. :ssssssso. %s"
- "${c2} :osssssss/ osssso+++. %s"
- "${c2} /ossssssss/ +ssssooo/- %s"
- "${c2} \`/ossssso+/:- -:/+osssso+- %s"
- "${c2} \`+sso+:-\` \`.-/+oso: %s"
- "${c2} \`++:. \`-/+/%s"
- "${c2} .\` \`/%s")
- ;;
- "Artix Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'cyan')
- c2=$(getColor 'blue')
- c3=$(getColor 'green')
- c4=$(getColor 'dark gray')
- fi
- if [ -n "${my_lcolor}" ]; then
- c1="${my_lcolor}"
- c2="${my_lcolor}"
- c3="${my_lcolor}"
- c4="${my_lcolor}"
- fi
- startline="1"
- logowidth="38"
- fulloutput=(""
- "${c1} d${c2}c. %s"
- "${c1} x${c2}dc. %s"
- "${c1} '.${c4}.${c1} d${c2}dlc. %s"
- "${c1} c${c2}0d:${c1}o${c2}xllc; %s"
- "${c1} :${c2}0ddlolc,lc, %s"
- "${c1} :${c1}ko${c4}.${c1}:${c2}0ddollc..dlc. %s"
- "${c1} ;${c1}K${c2}kxoOddollc' cllc. %s"
- "${c1} ,${c1}K${c2}kkkxdddllc, ${c4}.${c2}lll: %s"
- "${c1} ,${c1}X${c2}kkkddddlll;${c3}...';${c1}d${c2}llll${c3}dxk: %s"
- "${c1} ,${c1}X${c2}kkkddddllll${c3}oxxxddo${c2}lll${c3}oooo, %s"
- "${c3} xxk${c1}0${c2}kkkdddd${c1}o${c2}lll${c1}o${c3}ooooooolooooc;${c1}. %s"
- "${c3} ddd${c2}kkk${c1}d${c2}ddd${c1}ol${c2}lc:${c3}:;,'.${c3}... .${c2}lll; %s"
- "${c1} .${c3}xd${c1}x${c2}kk${c1}xd${c2}dl${c1}'cl:${c4}. ${c2}.llc, %s"
- "${c1} .${c1}0${c2}kkkxddl${c4}. ${c2};'${c4}. ${c2};llc. %s"
- "${c1} .${c1}K${c2}Okdcddl${c4}. ${c2}cllc${c4}. %s"
- "${c1} 0${c2}Okd''dc. .cll; %s"
- "${c1} k${c2}Okd' .llc, %s"
- "${c1} d${c2}Od, 'lc. %s"
- "${c1} :,${c4}. ${c2}... %s"
- " %s")
- ;;
- "blackPanther OS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'yellow') # Light Yellow
- c2=$(getColor 'white') # Bold Red
- c3=$(getColor 'light red') # Light Red
- c4=$(getColor 'dark grey')
- fi
- if [ -n "${my_lcolor}" ]; then
- c1="${my_lcolor}"
- c2="${my_lcolor}"
- c3="${my_lcolor}"
- c4="${my_lcolor}"
- fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c4} oxoo %s"
- "${c4} ooooooxxxxxxxx %s"
- "${c4} oooooxxxxxxxxxx${c3}O${c1}o.${c4}xx %s"
- "${c4} oo# ###xxxxxxxxxxx###xxx %s"
- "${c4} oo .oooooxxxxxxxxx## #oxx %s"
- "${c4} o ##xxxxxxxxx###x## .o### %s"
- "${c4} .oxxxxxxxx### ox . %s"
- "${c4} ooxxxx#xxxxxx o## %s"
- "${c4}.oxx# #oxxxxx# %s"
- "${c4}ox# ooxxxxxx# o %s"
- "${c4}x# ooxxxxxxxx ox ox%s"
- "${c4}x# .oxxxxxxxxxxx o# oox%s"
- "${c4}# oxxxxx##xxxxxxooooooo# o# %s"
- "${c4} .oxxxxxooxxxxxx###### ox# %s"
- "${c4} oxxxxxo oxxxxxxxx oox## %s"
- "${c4} oxxxxxx oxxxxxxxxxo oooox## %s"
- "${c4} o#xxxxx oxxxxxxxxxxxxxxxx## %s"
- "${c4} ##xxxxx o#xxxxxxxxxxxxx## %s"
- "${c4} ##xxxx o#xxxxxxxxx## %s"
- "${c4} ###xo. o##xxx### %s"
- "${c4} %s")
- ;;
- "ArcoLinux")
- if [[ "$no_color" != "0" ]]; then
- c1=$(getColor 'arco_blue') # dark
- c2=$(getColor 'white') # light
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="1"
- logowidth="41"
- fulloutput=(
- "${c1} /- "
- "${c1} ooo: %s"
- "${c1} yoooo/ %s"
- "${c1} yooooooo %s"
- "${c1} yooooooooo %s"
- "${c1} yooooooooooo %s"
- "${c1} .yooooooooooooo %s"
- "${c1} .oooooooooooooooo %s"
- "${c1} .oooooooarcoooooooo %s"
- "${c1} .ooooooooo-oooooooooo %s"
- "${c1} .ooooooooo- oooooooooo %s"
- "${c1} :ooooooooo. :ooooooooo %s"
- "${c1} :ooooooooo. :ooooooooo %s"
- "${c1} :oooarcooo .oooarcooo %s"
- "${c1} :ooooooooy .ooooooooo %s"
- "${c1} :ooooooooo ${c2}/ooooooooooooooooooo${c1} %s"
- "${c1} :ooooooooo ${c2}.-ooooooooooooooooo.${c1} %s"
- "${c1} ooooooooo- ${c2}-ooooooooooooo.${c1} %s"
- "${c1} ooooooooo- ${c2}.-oooooooooo.${c1}%s"
- "${c1}ooooooooo. ${c2}-ooooooooo${c1}%s")
- ;;
-
- "Mint")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light green') # Bold Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c2} %s"
- "${c2} MMMMMMMMMMMMMMMMMMMMMMMMMmds+. %s"
- "${c2} MMm----::-://////////////oymNMd+\` %s"
- "${c2} MMd ${c1}/++ ${c2}-sNMd: %s"
- "${c2} MMNso/\` ${c1}dMM \`.::-. .-::.\` ${c2}.hMN: %s"
- "${c2} ddddMMh ${c1}dMM :hNMNMNhNMNMNh: ${c2}\`NMm %s"
- "${c2} NMm ${c1}dMM .NMN/-+MMM+-/NMN\` ${c2}dMM %s"
- "${c2} NMm ${c1}dMM -MMm \`MMM dMM. ${c2}dMM %s"
- "${c2} NMm ${c1}dMM -MMm \`MMM dMM. ${c2}dMM %s"
- "${c2} NMm ${c1}dMM .mmd \`mmm yMM. ${c2}dMM %s"
- "${c2} NMm ${c1}dMM\` ..\` ... ydm. ${c2}dMM %s"
- "${c2} hMM- ${c1}+MMd/-------...-:sdds ${c2}dMM %s"
- "${c2} -NMm- ${c1}:hNMNNNmdddddddddy/\` ${c2}dMM %s"
- "${c2} -dMNs-${c1}\`\`-::::-------.\`\` ${c2}dMM %s"
- "${c2} \`/dMNmy+/:-------------:/yMMM %s"
- "${c2} ./ydNMMMMMMMMMMMMMMMMMMMMM %s"
- "${c2} \.MMMMMMMMMMMMMMMMMMM %s"
- "${c2} %s")
- ;;
- "LMDE")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light green') # Bold Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="31"
- fulloutput=(
- "${c1} \`.-::---.. %s"
- "${c2} .:++++ooooosssoo:. %s"
- "${c2} .+o++::. \`.:oos+. %s"
- "${c2} :oo:.\` -+oo${c1}: %s"
- "${c2} ${c1}\`${c2}+o/\` .${c1}::::::${c2}-. .++-${c1}\` %s"
- "${c2} ${c1}\`${c2}/s/ .yyyyyyyyyyo: +o-${c1}\` %s"
- "${c2} ${c1}\`${c2}so .ss ohyo\` :s-${c1}: %s"
- "${c2} ${c1}\`${c2}s/ .ss h m myy/ /s\`${c1}\` %s"
- "${c2} \`s: \`oo s m Myy+-o:\` %s"
- "${c2} \`oo :+sdoohyoydyso/. %s"
- "${c2} :o. .:////////++: %s"
- "${c2} \`/++ ${c1}-:::::- %s"
- "${c2} ${c1}\`${c2}++- %s"
- "${c2} ${c1}\`${c2}/+- %s"
- "${c2} ${c1}.${c2}+/. %s"
- "${c2} ${c1}.${c2}:+-. %s"
- "${c2} \`--.\`\` %s"
- "${c2} %s")
- ;;
- "Ubuntu")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light red') # Light Red
- c3=$(getColor 'yellow') # Bold Yellow
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c2} ./+o+- %s"
- "${c1} yyyyy- ${c2}-yyyyyy+ %s"
- "${c1} ${c1}://+//////${c2}-yyyyyyo %s"
- "${c3} .++ ${c1}.:/++++++/-${c2}.+sss/\` %s"
- "${c3} .:++o: ${c1}/++++++++/:--:/- %s"
- "${c3} o:+o+:++.${c1}\`..\`\`\`.-/oo+++++/ %s"
- "${c3} .:+o:+o/.${c1} \`+sssoo+/ %s"
- "${c1} .++/+:${c3}+oo+o:\`${c1} /sssooo. %s"
- "${c1} /+++//+:${c3}\`oo+o${c1} /::--:. %s"
- "${c1} \+/+o+++${c3}\`o++o${c2} ++////. %s"
- "${c1} .++.o+${c3}++oo+:\`${c2} /dddhhh. %s"
- "${c3} .+.o+oo:.${c2} \`oddhhhh+ %s"
- "${c3} \+.++o+o\`${c2}\`-\`\`\`\`.:ohdhhhhh+ %s"
- "${c3} \`:o+++ ${c2}\`ohhhhhhhhyo++os: %s"
- "${c3} .o:${c2}\`.syhhhhhhh/${c3}.oo++o\` %s"
- "${c2} /osyyyyyyo${c3}++ooo+++/ %s"
- "${c2} \`\`\`\`\` ${c3}+oo+++o\: %s"
- "${c3} \`oo++. %s")
- ;;
- "KDE neon")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Bold Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="43"
- fulloutput=(
- "${c1} \`..---+/---..\` %s"
- "${c1} \`---.\`\` \`\` \`.---.\` %s"
- "${c1} .--.\` \`\` \`-:-. %s"
- "${c1} \`:/: \`.----//----.\` :/- %s"
- "${c1} .:. \`---\` \`--.\` .:\` %s"
- "${c1} .:\` \`--\` .:- \`:. %s"
- "${c1} \`/ \`:. \`.-::-.\` -:\` \`/\` %s"
- "${c1} /. /. \`:++++++++:\` .: .: %s"
- "${c1} \`/ .: \`+++++++++++/ /\` \`+\` %s"
- "${c1} /+\` -- .++++++++++++\` :. .+: %s"
- "${c1} \`/ .: \`+++++++++++/ /\` \`+\` %s"
- "${c1} /\` /. \`:++++++++:\` .: .: %s"
- "${c1} ./ \`:. \`.:::-.\` -:\` \`/\` %s"
- "${c1} .:\` \`--\` .:- \`:. %s"
- "${c1} .:. \`---\` \`--.\` .:\` %s"
- "${c1} \`:/: \`.----//----.\` :/- %s"
- "${c1} .-:.\` \`\` \`-:-. %s"
- "${c1} \`---.\`\` \`\` \`.---.\` %s"
- "${c1} \`..---+/---..\` %s")
- ;;
- "Debian")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="32"
- fulloutput=(
- "${c1} _,met\$\$\$\$\$gg. %s"
- "${c1} ,g\$\$\$\$\$\$\$\$\$\$\$\$\$\$\$P. %s"
- "${c1} ,g\$\$P\"\" \"\"\"Y\$\$.\". %s"
- "${c1} ,\$\$P' \`\$\$\$. %s"
- "${c1} ',\$\$P ,ggs. \`\$\$b: %s"
- "${c1} \`d\$\$' ,\$P\"\' ${c2}.${c1} \$\$\$ %s"
- "${c1} \$\$P d\$\' ${c2},${c1} \$\$P %s"
- "${c1} \$\$: \$\$. ${c2}-${c1} ,d\$\$' %s"
- "${c1} \$\$\; Y\$b._ _,d\$P' %s"
- "${c1} Y\$\$. ${c2}\`.${c1}\`\"Y\$\$\$\$P\"' %s"
- "${c1} \`\$\$b ${c2}\"-.__ %s"
- "${c1} \`Y\$\$ %s"
- "${c1} \`Y\$\$. %s"
- "${c1} \`\$\$b. %s"
- "${c1} \`Y\$\$b. %s"
- "${c1} \`\"Y\$b._ %s"
- "${c1} \`\"\"\"\" %s"
- "${c1} %s")
- ;;
- "Proxmox VE")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white')
- c2=$(getColor 'orange')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="48"
- fulloutput=(
- "${c1} .://:\` \`://:. %s"
- "${c1} \`hMMMMMMd/ /dMMMMMMh\` %s"
- "${c1} \`sMMMMMMMd: :mMMMMMMMs\` %s"
- "${c2} \`-/+oo+/:${c1}\`.yMMMMMMMh- -hMMMMMMMy.\`${c2}:/+oo+/-\` %s"
- "${c2} \`:oooooooo/${c1}\`-hMMMMMMMyyMMMMMMMh-\`${c2}/oooooooo:\` %s"
- "${c2} \`/oooooooo:${c1}\`:mMMMMMMMMMMMMm:\`${c2}:oooooooo/\` %s"
- "${c2} ./ooooooo+-${c1} +NMMMMMMMMN+ ${c2}-+ooooooo/. %s"
- "${c2} .+ooooooo+-${c1}\`oNMMMMNo\`${c2}-+ooooooo+. %s"
- "${c2} -+ooooooo/.${c1}\`sMMs\`${c2}./ooooooo+- %s"
- "${c2} :oooooooo/${c1}\`..\`${c2}/oooooooo: %s"
- "${c2} :oooooooo/\`${c1}..${c2}\`/oooooooo: %s"
- "${c2} -+ooooooo/.${c1}\`sMMs${c2}\`./ooooooo+- %s"
- "${c2} .+ooooooo+-\`${c1}oNMMMMNo${c2}\`-+ooooooo+. %s"
- "${c2} ./ooooooo+-${c1} +NMMMMMMMMN+ ${c2}-+ooooooo/. %s"
- "${c2} \`/oooooooo:\`${c1}:mMMMMMMMMMMMMm:${c2}\`:oooooooo/\` %s"
- "${c2} \`:oooooooo/\`${c1}-hMMMMMMMyyMMMMMMMh-${c2}\`/oooooooo:\` %s"
- "${c2} \`-/+oo+/:\`${c1}.yMMMMMMMh- -hMMMMMMMy.${c2}\`:/+oo+/-\` %s"
- "${c1} \`sMMMMMMMm: :dMMMMMMMs %s"
- "${c1} \`hMMMMMMd/ /dMMMMMMh %s"
- "${c1} \`://:\` \`://:\` %s")
- ;;
- "Siduction")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="35"
- fulloutput=(
- "${c1} _ass,, %s"
- "${c1} jmk dm. %s"
- "${c1} 3##qwm#\` %s"
- "${c1} . \"9XZ?\` _aas, %s"
- "${c1} ap!!n, _dW(--\$a %s"
- "${c1} )#hc_m# ]mmwaam#\` %s"
- "${c1} ?##WZ^ -4#####! _as,. %s"
- "${c1} _ais, - _au11a. -\"\"\" <m#\"\"\"Wc %s"
- "${c1} )m6_]m, m#c__m6 :m#m,_<m#> %s"
- "${c1} -Y#m#! 4###m#r -\$##mBm#Z\` %s"
- "${c1} - _as,. \"???~ _aawa,.!S##Z?\` %s"
- "${c1} ym= 3h. <##' -Wo %s"
- "${c1} \$#mm#D\` ]B#qww## %s"
- "${c1} \"?!\"\` _s,.-?#m##T' %s"
- "${c1} _dZ\"\"4a -- %s"
- "${c1} 3Wmaam#; %s"
- "${c1} -9###Z! %s")
- ;;
- "Devuan")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light purple') # Light purple
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="36"
- fulloutput=(
- "${c1} %s"
- "${c1} ..,,;;;::;,.. %s"
- "${c1} \`':ddd;:,. %s"
- "${c1} \`'dPPd:,. %s"
- "${c1} \`:b\$\$b\`. %s"
- "${c1} 'P\$\$\$d\` %s"
- "${c1} .\$\$\$\$\$\` %s"
- "${c1} ;\$\$\$\$\$P %s"
- "${c1} .:P\$\$\$\$\$\$\` %s"
- "${c1} .,:b\$\$\$\$\$\$\$;' %s"
- "${c1} .,:dP\$\$\$\$\$\$\$\$b:' %s"
- "${c1} .,:;db\$\$\$\$\$\$\$\$\$\$Pd'\` %s"
- "${c1} ,db\$\$\$\$\$\$\$\$\$\$\$\$\$\$b:'\` %s"
- "${c1} :\$\$\$\$\$\$\$\$\$\$\$\$b:'\` %s"
- "${c1} \`\$\$\$\$\$bd:''\` %s"
- "${c1} \`'''\` %s"
- "${c1} %s")
- ;;
- "Raspbian")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Light Green
- c2=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="32"
- fulloutput=(
- "${c1} .',;:cc;,'. .,;::c:,,. %s"
- "${c1} ,ooolcloooo: 'oooooccloo: %s"
- "${c1} .looooc;;:ol :oc;;:ooooo' %s"
- "${c1} ;oooooo: ,ooooooc. %s"
- "${c1} .,:;'. .;:;'. %s"
- "${c2} .dQ. .d0Q0Q0. '0Q. %s"
- "${c2} .0Q0' 'Q0Q0Q' 'Q0Q. %s"
- "${c2} '' .odo. .odo. '' %s"
- "${c2} . .0Q0Q0Q' .0Q0Q0Q. . %s"
- "${c2} ,0Q .0Q0Q0Q0Q 'Q0Q0Q0b. 0Q. %s"
- "${c2} :Q0 Q0Q0Q0Q 'Q0Q0Q0 Q0' %s"
- "${c2} '0 '0Q0' .0Q0. '0' 'Q' %s"
- "${c2} .oo. .0Q0Q0. .oo. %s"
- "${c2} 'Q0Q0. '0Q0Q0Q0. .Q0Q0b %s"
- "${c2} 'Q0Q0. '0Q0Q0' .d0Q0Q' %s"
- "${c2} 'Q0Q' .. '0Q.' %s"
- "${c2} .0Q0Q0Q. %s"
- "${c2} '0Q0Q' %s")
- ;;
- "CrunchBang")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c1} %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ████████████████████████████ ███ %s"
- "${c1} ████████████████████████████ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ████████████████████████████ ███ %s"
- "${c1} ████████████████████████████ ███ %s"
- "${c1} ███ ███ %s"
- "${c1} ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} ███ ███ ███ %s"
- "${c1} %s")
- ;;
- "CRUX")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light cyan')
- c2=$(getColor 'yellow')
- c3=$(getColor 'white')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="1"
- logowidth="27"
- fulloutput=(""
- "${c1} odddd "
- "${c1} oddxkkkxxdoo %s"
- "${c1} ddcoddxxxdoool %s"
- "${c1} xdclodod olol %s"
- "${c1} xoc xdd olol %s"
- "${c1} xdc ${c2}k00${c1}Okdlol %s"
- "${c1} xxd${c2}kOKKKOkd${c1}ldd %s"
- "${c1} xdco${c2}xOkdlo${c1}dldd %s"
- "${c1} ddc:cl${c2}lll${c1}oooodo %s"
- "${c1} odxxdd${c3}xkO000kx${c1}ooxdo %s"
- "${c1} oxdd${c3}x0NMMMMMMWW0od${c1}kkxo %s"
- "${c1} oooxd${c3}0WMMMMMMMMMW0o${c1}dxkx %s"
- "${c1} docldkXW${c3}MMMMMMMWWN${c1}Odolco %s"
- "${c1} xx${c2}dx${c1}kxxOKN${c3}WMMWN${c1}0xdoxo::c %s"
- "${c2} xOkkO${c1}0oo${c3}odOW${c2}WW${c1}XkdodOxc:l %s"
- "${c2} dkkkxkkk${c3}OKX${c2}NNNX0Oxx${c1}xc:cd %s"
- "${c2} odxxdx${c3}xllod${c2}ddooxx${c1}dc:ldo %s"
- "${c2} lodd${c1}dolccc${c2}ccox${c1}xoloo %s"
- "${c1} %s")
- ;;
- "Chrome OS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'green') # Green
- c2=$(getColor 'light red') # Light Red
- c3=$(getColor 'yellow') # Bold Yellow
- c4=$(getColor 'light blue') # Light Blue
- c5=$(getColor 'white') # White
- fi
- if [ -n "${my_lcolor}" ]; then
- c1="${my_lcolor}"
- c2="${my_lcolor}"
- c3="${my_lcolor}"
- c4="${my_lcolor}"
- c5="${my_lcolor}"
- fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c2} .,:loool:,. %s"
- "${c2} .,coooooooooooooc,. %s"
- "${c2} .,lllllllllllllllllllll,. %s"
- "${c2} ;ccccccccccccccccccccccccc; %s"
- "${c1} '${c2}ccccccccccccccccccccccccccccc. %s"
- "${c1} ,oo${c2}c::::::::okO${c5}000${c3}0OOkkkkkkkkkkk: %s"
- "${c1} .ooool${c2};;;;:x${c5}K0${c4}kxxxxxk${c5}0X${c3}K0000000000. %s"
- "${c1} :oooool${c2};,;O${c5}K${c4}ddddddddddd${c5}KX${c3}000000000d %s"
- "${c1} lllllool${c2};l${c5}N${c4}dllllllllllld${c5}N${c3}K000000000 %s"
- "${c1} lllllllll${c2}o${c5}M${c4}dccccccccccco${c5}W${c3}K000000000 %s"
- "${c1} ;cllllllllX${c5}X${c4}c:::::::::c${c5}0X${c3}000000000d %s"
- "${c1} .ccccllllllO${c5}Nk${c4}c;,,,;cx${c5}KK${c3}0000000000. %s"
- "${c1} .cccccclllllxOO${c5}OOO${c1}Okx${c3}O0000000000; %s"
- "${c1} .:ccccccccllllllllo${c3}O0000000OOO, %s"
- "${c1} ,:ccccccccclllcd${c3}0000OOOOOOl. %s"
- "${c1} '::ccccccccc${c3}dOOOOOOOkx:. %s"
- "${c1} ..,::cccc${c3}xOOOkkko;. %s"
- "${c1} ..,:${c3}dOkxl:. %s")
- ;;
- "DesaOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') #Hijau
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="33"
- fulloutput=(
- "${c1} ███████████████████████ %s"
- "${c1} ███████████████████████ %s"
- "${c1} ███████████████████████ %s"
- "${c1} ███████████████████████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ████████ ███████ %s"
- "${c1} ██████████████████████████████ %s"
- "${c1} ██████████████████████████████ %s"
- "${c1} ████████████████████████ %s"
- "${c1} ████████████████████████ %s"
- "${c1} ████████████████████████ %s"
- " %s")
- ;;
- "Gentoo")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light purple') # Light Purple
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c2} -/oyddmdhs+:. %s"
- "${c2} -o${c1}dNMMMMMMMMNNmhy+${c2}-\` %s"
- "${c2} -y${c1}NMMMMMMMMMMMNNNmmdhy${c2}+- %s"
- "${c2} \`o${c1}mMMMMMMMMMMMMNmdmmmmddhhy${c2}/\` %s"
- "${c2} om${c1}MMMMMMMMMMMN${c2}hhyyyo${c1}hmdddhhhd${c2}o\` %s"
- "${c2}.y${c1}dMMMMMMMMMMd${c2}hs++so/s${c1}mdddhhhhdm${c2}+\` %s"
- "${c2} oy${c1}hdmNMMMMMMMN${c2}dyooy${c1}dmddddhhhhyhN${c2}d. %s"
- "${c2} :o${c1}yhhdNNMMMMMMMNNNmmdddhhhhhyym${c2}Mh %s"
- "${c2} .:${c1}+sydNMMMMMNNNmmmdddhhhhhhmM${c2}my %s"
- "${c2} /m${c1}MMMMMMNNNmmmdddhhhhhmMNh${c2}s: %s"
- "${c2} \`o${c1}NMMMMMMMNNNmmmddddhhdmMNhs${c2}+\` %s"
- "${c2} \`s${c1}NMMMMMMMMNNNmmmdddddmNMmhs${c2}/. %s"
- "${c2} /N${c1}MMMMMMMMNNNNmmmdddmNMNdso${c2}:\` %s"
- "${c2}+M${c1}MMMMMMNNNNNmmmmdmNMNdso${c2}/- %s"
- "${c2}yM${c1}MNNNNNNNmmmmmNNMmhs+/${c2}-\` %s"
- "${c2}/h${c1}MMNNNNNNNNMNdhs++/${c2}-\` %s"
- "${c2}\`/${c1}ohdmmddhys+++/:${c2}.\` %s"
- "${c2} \`-//////:--. %s")
- ;;
- "Funtoo")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light purple') # Light Purple
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="52"
- fulloutput=(
- "${c1} %s"
- "${c1} %s"
- "${c1} %s"
- "${c1} %s"
- "${c1} _______ ____ %s"
- "${c1} /MMMMMMM/ /MMMM| _____ _____ %s"
- "${c1} __/M${c2}.MMM.${c1}M/_____________|M${c2}.M${c1}MM|/MMMMM\/MMMMM\ %s"
- "${c1}|MMMM${c2}MM'${c1}MMMMMMMMMMMMMMMMMMM${c2}MM${c1}MMMM${c2}.MMMM..MMMM.${c1}MM\ %s"
- "${c1}|MM${c2}MMMMMMM${c1}/m${c2}MMMMMMMMMMMMMMMMMMMMMM${c1}MMMM${c2}MM${c1}MMMM${c2}MM${c1}MM| %s"
- "${c1}|MMMM${c2}MM${c1}MMM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MMMMM${c2}\MMM${c1}MMM${c2}MM${c1}MMMM${c2}MM${c1}MMMM${c2}MM${c1}MM| %s"
- "${c1} |MM${c2}MM${c1}MMM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MMM${c1}MMMM${c2}'MMMM''MMMM'${c1}MM/ %s"
- "${c1} |MM${c2}MM${c1}MMM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MMM${c1}MMM\MMMMM/\MMMMM/ %s"
- "${c1} |MM${c2}MM${c1}MMM${c2}MM${c1}MMMMMM${c2}MM${c1}MM${c2}MM${c1}MM${c2}MMMMM'${c1}M| %s"
- "${c1} |MM${c2}MM${c1}MMM${c2}MMMMMMMMMMMMMMMMM MM'${c1}M/ %s"
- "${c1} |MMMMMMMMMMMMMMMMMMMMMMMMMMMM/ %s"
- "${c1} %s"
- "${c1} %s"
- "${c1} %s")
- ;;
- "Kogaion")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="41"
- fulloutput=(
- "${c1} ;; ,; %s"
- "${c1} ;;; ,;; %s"
- "${c1} ,;;;; ;;;; %s"
- "${c1} ,;;;;;;;; ;;;; %s"
- "${c1} ;;;;;;;;;;; ;;;;; %s"
- "${c1} ,;;;;;;;;;;;; ';;;;;, %s"
- "${c1} ;;;;;;;;;;;;;;, ';;;;;;; %s"
- "${c1} ;;;;;;;;;;;;;;;;;, ';;;;; %s"
- "${c1} ; ';;;;;;;;;;;;;;;;;;, ;;; %s"
- "${c1} ;;;, ';;;;;;;;;;;;;;;;;;;,;; %s"
- "${c1} ;;;;;, ';;;;;;;;;;;;;;;;;;, %s"
- "${c1} ;;;;;;;;, ';;;;;;;;;;;;;;;;, %s"
- "${c1} ;;;;;;;;;;;;, ';;;;;;;;;;;;;; %s"
- "${c1} ';;;;;;;;;;;;; ';;;;;;;;;;;;; %s"
- "${c1} ';;;;;;;;;;;;;, ';;;;;;;;;;; %s"
- "${c1} ';;;;;;;;;;;;; ;;;;;;;;;; %s"
- "${c1} ';;;;;;;;;;;; ;;;;;;;; %s"
- "${c1} ';;;;;;;; ;;;;;; %s"
- "${c1} ';;;;; ;;;; %s"
- "${c1} ';;; ;; %s")
- ;;
- "Fedora")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c2} /:-------------:\ %s"
- "${c2} :-------------------:: %s"
- "${c2} :-----------${c1}/shhOHbmp${c2}---:\\ %s"
- "${c2} /-----------${c1}omMMMNNNMMD ${c2}---: %s"
- "${c2} :-----------${c1}sMMMMNMNMP${c2}. ---: %s"
- "${c2} :-----------${c1}:MMMdP${c2}------- ---\ %s"
- "${c2} ,------------${c1}:MMMd${c2}-------- ---: %s"
- "${c2} :------------${c1}:MMMd${c2}------- .---: %s"
- "${c2} :---- ${c1}oNMMMMMMMMMNho${c2} .----: %s"
- "${c2} :-- .${c1}+shhhMMMmhhy++${c2} .------/ %s"
- "${c2} :- -------${c1}:MMMd${c2}--------------: %s"
- "${c2} :- --------${c1}/MMMd${c2}-------------; %s"
- "${c2} :- ------${c1}/hMMMy${c2}------------: %s"
- "${c2} :--${c1} :dMNdhhdNMMNo${c2}------------; %s"
- "${c2} :---${c1}:sdNMMMMNds:${c2}------------: %s"
- "${c2} :------${c1}:://:${c2}-------------:: %s"
- "${c2} :---------------------:// %s"
- "${c2} %s")
- ;;
- "Fux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- fulloutput=(
- "${c2} --/+osssso+/-- %s"
- "${c2} -/oshhhhhhhhhhhhso/- %s"
- "${c2} :oyhhhhhso+//+oshhhhhso: %s"
- "${c2} -+yhhhh+. ss+/ .+hhhhs+- %s"
- "${c2} :/hhhh/ shhhy/ /hhhh/: %s"
- "${c2} ./hhhh- .++:..dhhb..:++. -hhhh/. %s"
- "${c2} +ohhh: -hoyhohhoohhohyoh- :hhho+ %s"
- "${c2} /hhhh shhy-ohyyho-yhhs hhhh/ %s"
- "${c2} /hhhh shy\+hhhh+/yhs hhhh/ %s"
- "${c2} +ohhh: .:d. +:ys:+ .b:. :hhho+ %s"
- "${c2} ./hhhh- do / oo \ ob -hhhh/. %s"
- "${c2} :/hhhh/ - ss - /hhhh/: %s"
- "${c2} -+shhhh+. // .+hhhhs+- %s"
- "${c2} :oshhhhhso+//+oshhhhhso: %s"
- "${c2} -/oshhhhhhhhhhhhso/- %s"
- "${c2} --/+osssso+/-- %s")
- ;;
- "Chapeau")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light green') # Light Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="35"
- fulloutput=(
- "${c2} .-/-. %s"
- "${c2} ////////. %s"
- "${c2} ////////${c1}y+${c2}//. %s"
- "${c2} ////////${c1}mMN${c2}/////. %s"
- "${c2} ////////${c1}mMN+${c2}////////. %s"
- "${c2} ////////////////////////. %s"
- "${c2} /////////+${c1}shhddhyo${c2}+////////. %s"
- "${c2} ////////${c1}ymMNmdhhdmNNdo${c2}///////. %s"
- "${c2} ///////+${c1}mMms${c2}////////${c1}hNMh${c2}///////. %s"
- "${c2} ///////${c1}NMm+${c2}//////////${c1}sMMh${c2}/////// %s"
- "${c2} //////${c1}oMMNmmmmmmmmmmmmMMm${c2}/////// %s"
- "${c2} //////${c1}+MMmssssssssssssss+${c2}/////// %s"
- "${c2} \`//////${c1}yMMy${c2}//////////////////// %s"
- "${c2} \`//////${c1}smMNhso++oydNm${c2}//////// %s"
- "${c2} \`///////${c1}ohmNMMMNNdy+${c2}/////// %s"
- "${c2} \`//////////${c1}++${c2}////////// %s"
- "${c2} \`////////////////. %s"
- "${c2} -////////- %s"
- "${c2} %s")
- ;;
- "Korora")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white')
- c2=$(getColor 'light blue')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="32"
- fulloutput=(
- "${c1} ____________ %s"
- "${c1} _add55555555554${c2}: %s"
- "${c1} _w?'${c2}\`\`\`\`\`\`\`\`\`\`'${c1})k${c2}: %s"
- "${c1} _Z'${c2}\`${c1} ]k${c2}: %s"
- "${c1} m(${c2}\`${c1} )k${c2}: %s"
- "${c1} _.ss${c2}\`${c1}m[${c2}\`${c1}, ]e${c2}: %s"
- "${c1} .uY\"^\`${c2}\`${c1}Xc${c2}\`${c1}?Ss. d(${c2}\` %s"
- "${c1} jF'${c2}\`${c1} \`@. ${c2}\`${c1}Sc .jr${c2}\` %s"
- "${c1} jr${c2}\`${c1} \`?n_ ${c2}\`${c1}$; _a2\"${c2}\` %s"
- "${c1} .m${c2}:${c1} \`~M${c2}\`${c1}1k${c2}\`${c1}5?!\`${c2}\` %s"
- "${c1} :#${c2}:${c1} ${c2}\`${c1})e${c2}\`\`\` %s"
- "${c1} :m${c2}:${c1} ,#'${c2}\` %s"
- "${c1} :#${c2}:${c1} .s2'${c2}\` %s"
- "${c1} :m,________.aa7^${c2}\` %s"
- "${c1} :#baaaaaaas!J'${c2}\` %s"
- "${c2} \`\`\`\`\`\`\`\`\`\`\` %s")
- ;;
- "gNewSense")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="52"
- fulloutput=(
- "${c1} ..,,,,.. %s"
- "${c1} .oocchhhhhhhhhhccoo. %s"
- "${c1} .ochhlllllllc hhhhhh ollllllhhco. %s"
- "${c1} ochlllllllllll hhhllllllhhh lllllllllllhco %s"
- "${c1} .cllllllllllllll hlllllo +hllh llllllllllllllc. %s"
- "${c1} ollllllllllhco\'\' hlllllo +hllh \`\`ochllllllllllo %s"
- "${c1} hllllllllc\' hllllllllllllh \`cllllllllh %s"
- "${c1} ollllllh +llllllllllll+ hllllllo %s"
- "${c1} \`cllllh. ohllllllho .hllllc\' %s"
- "${c1} ochllc. ++++ .cllhco %s"
- "${c1} \`+occooo+. .+ooocco+\' %s"
- "${c1} \`+oo++++ ++++oo+\' %s"
- "${c1} %s")
- ;;
- "BLAG")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light purple')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="36"
- fulloutput=(
- "${c1} d %s"
- "${c1} ,MK: %s"
- "${c1} xMMMX: %s"
- "${c1} .NMMMMMX; %s"
- "${c1} lMMMMMMMM0clodkO0KXWW: %s"
- "${c1} KMMMMMMMMMMMMMMMMMMX' %s"
- "${c1} .;d0NMMMMMMMMMMMMMMMMMMK. %s"
- "${c1} .;dONMMMMMMMMMMMMMMMMMMMMMMx %s"
- "${c1} 'dKMMMMMMMMMMMMMMMMMMMMMMMMl %s"
- "${c1} .:xKWMMMMMMMMMMMMMMMMMMM0. %s"
- "${c1} .:xNMMMMMMMMMMMMMMMMMK. %s"
- "${c1} lMMMMMMMMMMMMMMMMMMK. %s"
- "${c1} ,MMMMMMMMWkOXWMMMMMM0 %s"
- "${c1} .NMMMMMNd. \`':ldko %s"
- "${c1} OMMMK: %s"
- "${c1} oWk, %s"
- "${c1} ;: %s")
- ;;
- "FreeBSD")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # white
- c2=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c1} %s"
- "${c1} \`\`\` ${c2}\` %s"
- "${c1} \` \`.....---...${c2}....--.\`\`\` -/ %s"
- "${c1} +o .--\` ${c2}/y:\` +. %s"
- "${c1} yo\`:. ${c2}:o \`+- %s"
- "${c1} y/ ${c2}-/\` -o/ %s"
- "${c1} .- ${c2}::/sy+:. %s"
- "${c1} / ${c2}\`-- / %s"
- "${c1} \`: ${c2}:\` %s"
- "${c1} \`: ${c2}:\` %s"
- "${c1} / ${c2}/ %s"
- "${c1} .- ${c2}-. %s"
- "${c1} -- ${c2}-. %s"
- "${c1} \`:\` ${c2}\`:\` %s"
- "${c2} .-- \`--. %s"
- "${c2} .---.....----. %s"
- "${c2} %s"
- "${c2} %s")
- ;;
- "FreeBSD - Old")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # white
- c2=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="34"
- fulloutput=(
- "${c2} , , %s"
- "${c2} /( )\` %s"
- "${c2} \ \___ / | %s"
- "${c2} /- ${c1}_${c2} \`-/ ' %s"
- "${c2} (${c1}/\/ \ ${c2}\ /\\ %s"
- "${c1} / / |${c2} \` \\ %s"
- "${c1} O O )${c2} / | %s"
- "${c1} \`-^--'\`${c2}< ' %s"
- "${c2} (_.) _ ) / %s"
- "${c2} \`.___/\` / %s"
- "${c2} \`-----' / %s"
- "${c1} <----. ${c2}__/ __ \\ %s"
- "${c1} <----|====${c2}O}}}${c1}==${c2}} \} \/${c1}==== %s"
- "${c1} <----' ${c2}\`--' \`.__,' \\ %s"
- "${c2} | | %s"
- "${c2} \ / /\\ %s"
- "${c2} ______( (_ / \______/ %s"
- "${c2} ,' ,-----' | %s"
- "${c2} \`--{__________) %s"
- "${c2} %s")
- ;;
- "OpenBSD")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'yellow') # Light Yellow
- c2=$(getColor 'brown') # Bold Yellow
- c3=$(getColor 'light cyan') # Light Cyan
- c4=$(getColor 'light red') # Light Red
- c5=$(getColor 'dark grey')
- fi
- if [ -n "${my_lcolor}" ]; then
- c1="${my_lcolor}"
- c2="${my_lcolor}"
- c3="${my_lcolor}"
- c4="${my_lcolor}"
- c5="${my_lcolor}"
- fi
- startline="3"
- logowidth="44"
- fulloutput=(
- "${c3} _ "
- "${c3} (_) "
- "${c1} | . "
- "${c1} . |L /| . ${c3} _ %s"
- "${c1} _ . |\ _| \--+._/| . ${c3}(_) %s"
- "${c1} / ||\| Y J ) / |/| ./ %s"
- "${c1} J |)'( | \` F\`.'/ ${c3} _ %s"
- "${c1} -<| F __ .-< ${c3}(_) %s"
- "${c1} | / .-'${c3}. ${c1}\`. /${c3}-. ${c1}L___ %s"
- "${c1} J \ < ${c3}\ ${c1} | | ${c5}O${c3}\\\\${c1}|.-' ${c3} _ %s"
- "${c1} _J \ .- \\\\${c3}/ ${c5}O ${c3}| ${c1}| \ |${c1}F ${c3}(_) %s"
- "${c1} '-F -<_. \ .-' \`-' L__ %s"
- "${c1}__J _ _. >-' ${c2})${c4}._. ${c1}|-' %s"
- "${c1} \`-|.' /_. ${c4}\_| ${c1} F %s"
- "${c1} /.- . _.< %s"
- "${c1} /' /.' .' \`\ %s"
- "${c1} /L /' |/ _.-'-\ %s"
- "${c1} /'J ___.---'\| %s"
- "${c1} |\ .--' V | \`. \` %s"
- "${c1} |/\`. \`-. \`._) %s"
- "${c1} / .-.\ %s"
- "${c1} \ ( \`\ %s"
- "${c1} \`.\ %s")
- ;;
- "DragonFlyBSD")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light red') # Red
- c2=$(getColor 'white') # White
- c3=$(getColor 'yellow')
- c4=$(getColor 'light red')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; c4="${my_lcolor}"; fi
- startline="0"
- logowidth="43"
- fulloutput=(
- "${c1} | %s"
- "${c1} .-. %s"
- "${c3} ()${c1}I${c3}() %s"
- "${c1} \"==.__:-:__.==\" %s"
- "${c1} \"==.__/~|~\__.==\" %s"
- "${c1} \"==._( Y )_.==\" %s"
- "${c2} .-'~~\"\"~=--...,__${c1}\/|\/${c2}__,...--=~\"\"~~'-. %s"
- "${c2} ( ..=${c1}\\\\=${c1}/${c2}=.. )%s"
- "${c2} \`'-. ,.-\"\`;${c1}/=\\\\${c2} ;\"-.,_ .-'\`%s"
- "${c2} \`~\"-=-~\` .-~\` ${c1}|=|${c2} \`~-. \`~-=-\"~\` %s"
- "${c2} .-~\` /${c1}|=|${c2}\ \`~-. %s"
- "${c2} .~\` / ${c1}|=|${c2} \ \`~. %s"
- "${c2} .-~\` .' ${c1}|=|${c2} \\\\\`. \`~-. %s"
- "${c2} (\` _,.-=\"\` ${c1}|=|${c2} \`\"=-.,_ \`) %s"
- "${c2} \`~\"~\"\` ${c1}|=|${c2} \`\"~\"~\` %s"
- "${c1} /=\ %s"
- "${c1} \=/ %s"
- "${c1} ^ %s")
- ;;
- "NetBSD")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'orange') # Orange
- c2=$(getColor 'white') # White
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="60"
- fulloutput=(
- "${c1} __,gnnnOCCCCCOObaau,_ %s"
- "${c2} _._ ${c1}__,gnnCCCCCCCCOPF\"'' %s"
- "${c2} (N\\\\\\\\${c1}XCbngg,._____.,gnnndCCCCCCCCCCCCF\"___,,,,___ %s"
- "${c2} \\\\N\\\\\\\\${c1}XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCOOOOPYvv. %s"
- "${c2} \\\\N\\\\\\\\${c1}XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPF\"'' %s"
- "${c2} \\\\N\\\\\\\\${c1}XCCCCCCCCCCCCCCCCCCCCCCCCCOF\"' %s"
- "${c2} \\\\N\\\\\\\\${c1}XCCCCCCCCCCCCCCCCCCCCOF\"' %s"
- "${c2} \\\\N\\\\\\\\${c1}XCCCCCCCCCCCCCCCPF\"' %s"
- "${c2} \\\\N\\\\\\\\${c1}\"PCOCCCOCCFP\"\" %s"
- "${c2} \\\\N\ %s"
- "${c2} \\\\N\ %s"
- "${c2} \\\\N\ %s"
- "${c2} \\\\NN\ %s"
- "${c2} \\\\NN\ %s"
- "${c2} \\\\NNA. %s"
- "${c2} \\\\NNA, %s"
- "${c2} \\\\NNN, %s"
- "${c2} \\\\NNN\ %s"
- "${c2} \\\\NNN\ %s"
- "${c2} \\\\NNNA %s")
- ;;
- "Mandriva"|"Mandrake")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- c2=$(getColor 'yellow') # Bold Yellow
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="41"
- fulloutput=(
- "${c2} %s"
- "${c2} \`\` %s"
- "${c2} \`-. %s"
- "${c1} \` ${c2}.--- %s"
- "${c1} -/ ${c2}-::--\` %s"
- "${c1} \`++ ${c2}\`----...\`\`\`-:::::. %s"
- "${c1} \`os. ${c2}.::::::::::::::-\`\`\` \` \` %s"
- "${c1} +s+ ${c2}.::::::::::::::::---...--\` %s"
- "${c1} -ss: ${c2}\`-::::::::::::::::-.\`\`.\`\` %s"
- "${c1} /ss- ${c2}.::::::::::::-.\`\` \` %s"
- "${c1} +ss: ${c2}.::::::::::::- %s"
- "${c1} /sso ${c2}.::::::-::::::- %s"
- "${c1} .sss/ ${c2}-:::-.\` .::::: %s"
- "${c1} /sss+. ${c2}..\`${c1} \`--\` ${c2}.::: %s"
- "${c1} -ossso+/:://+/-\` ${c2}.:\` %s"
- "${c1} -/+ooo+/-. ${c2}\` %s"
- "${c1} %s"
- "${c1} %s")
- ;;
- "openSUSE"|"SUSE Linux Enterprise")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Bold Green
- c2=$c0$bold
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="44"
- fulloutput=(
- "${c2} .;ldkO0000Okdl;. %s"
- "${c2} .;d00xl:^''''''^:ok00d;. %s"
- "${c2} .d00l' 'o00d. %s"
- "${c2} .d0K^'${c1} Okxoc;:,. ${c2}^O0d. %s"
- "${c2} .OVV${c1}AK0kOKKKKKKKKKKOxo:, ${c2}lKO. %s"
- "${c2} ,0VV${c1}AKKKKKKKKKKKKK0P^${c2},,,${c1}^dx:${c2} ;00, %s"
- "${c2} .OVV${c1}AKKKKKKKKKKKKKk'${c2}.oOPPb.${c1}'0k.${c2} cKO. %s"
- "${c2} :KV${c1}AKKKKKKKKKKKKKK: ${c2}kKx..dd ${c1}lKd${c2} 'OK: %s"
- "${c2} lKl${c1}KKKKKKKKKOx0KKKd ${c2}^0KKKO' ${c1}kKKc${c2} lKl %s"
- "${c2} lKl${c1}KKKKKKKKKK;.;oOKx,..${c2}^${c1}..;kKKK0.${c2} lKl %s"
- "${c2} :KA${c1}lKKKKKKKKK0o;...^cdxxOK0O/^^' ${c2}.0K: %s"
- "${c2} kKA${c1}VKKKKKKKKKKKK0x;,,......,;od ${c2}lKP %s"
- "${c2} '0KA${c1}VKKKKKKKKKKKKKKKKKK00KKOo^ ${c2}c00' %s"
- "${c2} 'kKA${c1}VOxddxkOO00000Okxoc;'' ${c2}.dKV' %s"
- "${c2} l0Ko. .c00l' %s"
- "${c2} 'l0Kk:. .;xK0l' %s"
- "${c2} 'lkK0xc;:,,,,:;odO0kl' %s"
- "${c2} '^:ldxkkkkxdl:^' %s")
- ;;
- "Slackware")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- c2=$(getColor 'white') # Bold White
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="1"
- logowidth="46"
- fulloutput=(
- "${c1} ::::::: "
- "${c1} ::::::::::::::::::: %s"
- "${c1} ::::::::::::::::::::::::: %s"
- "${c1} ::::::::${c2}cllcccccllllllll${c1}:::::: %s"
- "${c1} :::::::::${c2}lc dc${c1}::::::: %s"
- "${c1} ::::::::${c2}cl clllccllll oc${c1}::::::::: %s"
- "${c1} :::::::::${c2}o lc${c1}::::::::${c2}co oc${c1}:::::::::: %s"
- "${c1} ::::::::::${c2}o cccclc${c1}:::::${c2}clcc${c1}:::::::::::: %s"
- "${c1} :::::::::::${c2}lc cclccclc${c1}::::::::::::: %s"
- "${c1} ::::::::::::::${c2}lcclcc lc${c1}:::::::::::: %s"
- "${c1} ::::::::::${c2}cclcc${c1}:::::${c2}lccclc oc${c1}::::::::::: %s"
- "${c1} ::::::::::${c2}o l${c1}::::::::::${c2}l lc${c1}::::::::::: %s"
- "${c1} :::::${c2}cll${c1}:${c2}o clcllcccll o${c1}::::::::::: %s"
- "${c1} :::::${c2}occ${c1}:${c2}o clc${c1}::::::::::: %s"
- "${c1} ::::${c2}ocl${c1}:${c2}ccslclccclclccclclc${c1}::::::::::::: %s"
- "${c1} :::${c2}oclcccccccccccccllllllllllllll${c1}::::: %s"
- "${c1} ::${c2}lcc1lcccccccccccccccccccccccco${c1}:::: %s"
- "${c1} :::::::::::::::::::::::::::::::: %s"
- "${c1} :::::::::::::::::::::::::::: %s"
- "${c1} :::::::::::::::::::::: %s"
- "${c1} :::::::::::: %s")
- ;;
- "ROSA")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'rosa_blue') # special blue color from ROSA
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="3"
- logowidth="41"
- fulloutput=(
- "${c1} ROSAROSAROSAROSAR "
- "${c1} ROSA AROS "
- "${c1} ROS SAROSAROSAROSAR AROS "
- "${c1} RO ROSAROSAROSAROSAROSAR RO %s"
- "${c1} ARO AROSAROSAROSARO AROS ROS %s"
- "${c1} ARO ROSAROS OSAR ROSA ROS %s"
- "${c1} RO AROSA ROSAROSAROSA ROSAR RO %s"
- "${c1} RO ROSAR ROSAROSAROSAR R ROSARO RO %s"
- "${c1} RO ROSA AROSAROSAROSA AR ROSARO AR %s"
- "${c1} RO AROS ROSAROSAROSA ROS AROSARO AR %s"
- "${c1} RO AROS ROSAROSARO ROSARO ROSARO AR %s"
- "${c1} RO ROS AROSAROS ROSAROSA AROSAR AR %s"
- "${c1} RO ROSA ROS ROSAROSAR ROSARO RO %s"
- "${c1} RO ROS AROSAROSAROSA ROSARO AR %s"
- "${c1} ARO ROSA ROSAROSAROS AROSAR ARO %s"
- "${c1} ARO OROSA R ROSAROS ROS %s"
- "${c1} RO AROSAROS AROSAROSAR RO %s"
- "${c1} AROS AROSAROSAROSARO AROS %s"
- "${c1} ROSA SARO %s"
- "${c1} ROSAROSAROSAROSAR %s")
- ;;
- "Red Hat Enterprise Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="42"
- fulloutput=(
- "${c1} .MMM..:MMMMMMM %s"
- "${c1} MMMMMMMMMMMMMMMMMM %s"
- "${c1} MMMMMMMMMMMMMMMMMMMM. %s"
- "${c1} MMMMMMMMMMMMMMMMMMMMMM %s"
- "${c1} ,MMMMMMMMMMMMMMMMMMMMMM: %s"
- "${c1} MMMMMMMMMMMMMMMMMMMMMMMM %s"
- "${c1} .MMMM' MMMMMMMMMMMMMMMMMMMMMM %s"
- "${c1} MMMMMM \`MMMMMMMMMMMMMMMMMMMM. %s"
- "${c1} MMMMMMMM MMMMMMMMMMMMMMMMMM . %s"
- "${c1} MMMMMMMMM. \`MMMMMMMMMMMMM' MM. %s"
- "${c1} MMMMMMMMMMM. MMMM %s"
- "${c1} \`MMMMMMMMMMMMM. ,MMMMM. %s"
- "${c1} \`MMMMMMMMMMMMMMMMM. ,MMMMMMMM. %s"
- "${c1} MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM %s"
- "${c1} MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM: %s"
- "${c1} MMMMMMMMMMMMMMMMMMMMMMMMMMMMMM %s"
- "${c1} \`MMMMMMMMMMMMMMMMMMMMMMMM: %s"
- "${c1} \`\`MMMMMMMMMMMMMMMMM' %s")
- ;;
- "Frugalware")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="3"
- logowidth="50"
- fulloutput=(
- "${c2} \`++/::-.\` "
- "${c2} /o+++++++++/::-.\` "
- "${c2} \`o+++++++++++++++o++/::-.\` "
- "${c2} /+++++++++++++++++++++++oo++/:-.\`\` %s"
- "${c2} .o+ooooooooooooooooooosssssssso++oo++/:-\` %s"
- "${c2} ++osoooooooooooosssssssssssssyyo+++++++o: %s"
- "${c2} -o+ssoooooooooooosssssssssssssyyo+++++++s\` %s"
- "${c2} o++ssoooooo++++++++++++++sssyyyyo++++++o: %s"
- "${c2} :o++ssoooooo${c1}/-------------${c2}+syyyyyo+++++oo %s"
- "${c2} \`o+++ssoooooo${c1}/-----${c2}+++++ooosyyyyyyo++++os: %s"
- "${c2} /o+++ssoooooo${c1}/-----${c2}ooooooosyyyyyyyo+oooss %s"
- "${c2} .o++++ssooooos${c1}/------------${c2}syyyyyyhsosssy- %s"
- "${c2} ++++++ssooooss${c1}/-----${c2}+++++ooyyhhhhhdssssso %s"
- "${c2} -s+++++syssssss${c1}/-----${c2}yyhhhhhhhhhhhddssssy. %s"
- "${c2} sooooooyhyyyyyh${c1}/-----${c2}hhhhhhhhhhhddddyssy+ %s"
- "${c2} :yooooooyhyyyhhhyyyyyyhhhhhhhhhhdddddyssy\` %s"
- "${c2} yoooooooyhyyhhhhhhhhhhhhhhhhhhhddddddysy/ %s"
- "${c2}-ysooooooydhhhhhhhhhhhddddddddddddddddssy %s"
- "${c2} .-:/+osssyyyysyyyyyyyyyyyyyyyyyyyyyyssy: %s"
- "${c2} \`\`.-/+oosysssssssssssssssssssssss %s"
- "${c2} \`\`.:/+osyysssssssssssssh. %s"
- "${c2} \`-:/+osyyssssyo %s"
- "${c2} .-:+++\` %s")
- ;;
- "Peppermint")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="3"
- logowidth="40"
- fulloutput=(
- "${c2} PPPPPPPPPPPPPP "
- "${c2} PPPP${c1}MMMMMMM${c2}PPPPPPPPPPP "
- "${c2} PPPP${c1}MMMMMMMMMM${c2}PPPPPPPP${c1}MM${c2}PP "
- "${c2} PPPPPPPP${c1}MMMMMMM${c2}PPPPPPPP${c1}MMMMM${c2}PP %s"
- "${c2} PPPPPPPPPPPP${c1}MMMMMM${c2}PPPPPPP${c1}MMMMMMM${c2}PP %s"
- "${c2} PPPPPPPPPPPP${c1}MMMMMMM${c2}PPPP${c1}M${c2}P${c1}MMMMMMMMM${c2}PP %s"
- "${c2} PP${c1}MMMM${c2}PPPPPPPPPP${c1}MMM${c2}PPPPP${c1}MMMMMMM${c2}P${c1}MM${c2}PPPP %s"
- "${c2} P${c1}MMMMMMMMMM${c2}PPPPPP${c1}MM${c2}PPPPP${c1}MMMMMM${c2}PPPPPPPP %s"
- "${c2}P${c1}MMMMMMMMMMMM${c2}PPPPP${c1}MM${c2}PP${c1}M${c2}P${c1}MM${c2}P${c1}MM${c2}PPPPPPPPPPP%s"
- "${c2}P${c1}MMMMMMMMMMMMMMMM${c2}PP${c1}M${c2}P${c1}MMM${c2}PPPPPPPPPPPPPPPP%s"
- "${c2}P${c1}MMM${c2}PPPPPPPPPPPPPPPPPPPPPPPPPPPPPP${c1}MMMMM${c2}P%s"
- "${c2}PPPPPPPPPPPPPPPP${c1}MMM${c2}P${c1}M${c2}P${c1}MMMMMMMMMMMMMMMM${c2}PP%s"
- "${c2}PPPPPPPPPPP${c1}MM${c2}P${c1}MM${c2}PPPP${c1}MM${c2}PPPPP${c1}MMMMMMMMMMM${c2}PP%s"
- "${c2} PPPPPPPP${c1}MMMMMM${c2}PPPPP${c1}MM${c2}PPPPPP${c1}MMMMMMMMM${c2}PP %s"
- "${c2} PPPP${c1}MM${c2}P${c1}MMMMMMM${c2}PPPPPP${c1}MM${c2}PPPPPPPPPP${c1}MMMM${c2}PP %s"
- "${c2} PP${c1}MMMMMMMMM${c2}P${c1}M${c2}PPPP${c1}MMMMMM${c2}PPPPPPPPPPPPP %s"
- "${c2} PP${c1}MMMMMMM${c2}PPPPPPP${c1}MMMMMM${c2}PPPPPPPPPPPP %s"
- "${c2} PP${c1}MMMM${c2}PPPPPPPPP${c1}MMMMMMM${c2}PPPPPPPP %s"
- "${c2} PP${c1}MM${c2}PPPPPPPP${c1}MMMMMMMMMM${c2}PPPP %s"
- "${c2} PPPPPPPPPP${c1}MMMMMMMM${c2}PPPP %s"
- "${c2} PPPPPPPPPPPPPP %s")
- ;;
- "Grombyang"|"GrombyangOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue')
- c2=$(getColor 'light green')
- c3=$(getColor 'light red')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- fulloutput=(
- "${c1} eeeeeeeeeeee %s"
- "${c1} eeeeeeeeeeeeeeeee %s"
- "${c1} eeeeeeeeeeeeeeeeeeeeeee %s"
- "${c1} eeeee ${c2}.o+ ${c1}eeee %s"
- "${c1} eeee ${c2}\`ooo/ ${c1}eeee %s"
- "${c1} eeee ${c2}\`+oooo: ${c1}eeee %s"
- "${c1} eee ${c2}\`+oooooo: ${c1}eee %s"
- "${c1} eee ${c2}-+oooooo+: ${c1}eee %s"
- "${c1} ee ${c2}\`/:oooooooo+: ${c1}ee %s"
- "${c1} ee ${c2}\`/+ +++ +: ${c1}ee %s"
- "${c1} ee ${c2}+o+\ ${c1}ee %s"
- "${c1} eee ${c2}+o+\ ${c1}eee %s"
- "${c1} eee ${c2}// \\ooo/ \\\ ${c1}eee %s"
- "${c1} eee ${c2}//++++oooo++++\\\ ${c1}eee %s"
- "${c1} eeee ${c2}::::++oooo+::::: ${c1}eeee %s"
- "${c1} eeeee ${c3}Grombyang OS ${c1} eeee %s"
- "${c1} eeeeeeeeeeeeeeeeeeeeeee %s"
- "${c1} eeeeeeeeeeeeeeeee %s"
- " %s"
- " %s")
- ;;
- "Solus")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'blue') # Blue
- c3=$(getColor 'black') # Black
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="36"
- fulloutput=(
- "${c3} ...... %s"
- "${c3} .'${c1}D${c3}lddddddddddd'. %s"
- "${c3} .'ddd${c1}XM${c3}xdddddddddddddd. %s"
- "${c3} .dddddx${c1}MMM0${c3};dddddddddddddd. %s"
- "${c3} 'dddddl${c1}MMMMMN${c3}cddddddddddddddd. %s"
- "${c3} ddddddc${c1}WMMMMMMW${c3}lddddddddddddddd. %s"
- "${c3} ddddddc${c1}WMMMMMMMMO${c3}ddoddddddddddddd. %s"
- "${c3}.ddddd:${c1}NMMMMMMMMMK${c3}dd${c1}NX${c3}od;c${c1}lxl${c3}dddddd %s"
- "${c3}dddddc${c1}WMMMMMMMMMMNN${c3}dd${c1}MMXl${c3};d${c1}00xl;${c3}ddd.%s"
- "${c3}ddddl${c1}WMMMMMMMMMMMMM${c3}d;${c1}MMMM0${c3}:dl${c1}XMMXk:${c3}'%s"
- "${c3}dddo${c1}WMMMMMMMMMMMMMM${c3}dd${c1}MMMMMW${c3}od${c3};${c1}XMMMOd%s"
- "${c3}.dd${c1}MMMMMMMMMMMMMMMM${c3}d:${c1}MMMMMMM${c3}kd${c1}lMKll %s"
- "${c3}.;dk0${c1}KXNWWMMMMMMMMM${c3}dx${c1}MMMMMMM${c3}Xl;lxK; %s"
- "${c3} 'dddddddd;:cclodcddxddolloxO0O${c1}d' %s"
- "${c1} ckkxxxddddddddxxkOOO000Okdool. %s"
- "${c2} .lddddxxxxxxddddooooooooood %s"
- "${c2} .:oooooooooooooooooooc' %s"
- "${c2} .,:looooooooooc;. %s")
- ;;
- "Mageia")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light cyan') # Light Cyan
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="33"
- fulloutput=(
- "${c2} .°°. %s"
- "${c2} °° .°°. %s"
- "${c2} .°°°. °° %s"
- "${c2} . . %s"
- "${c2} °°° .°°°. %s"
- "${c2} .°°°. '___' %s"
- "${c1} .${c2}'___' ${c1} . %s"
- "${c1} :dkxc;'. ..,cxkd; %s"
- "${c1} .dkk. kkkkkkkkkk .kkd. %s"
- "${c1} .dkk. ';cloolc;. .kkd %s"
- "${c1} ckk. .kk; %s"
- "${c1} xO: cOd %s"
- "${c1} xO: lOd %s"
- "${c1} lOO. .OO: %s"
- "${c1} .k00. .00x %s"
- "${c1} .k00; ;00O. %s"
- "${c1} .lO0Kc;,,,,,,;c0KOc. %s"
- "${c1} ;d00KKKKKK00d; %s"
- "${c1} .,KKKK,. %s")
- ;;
- "Hyperbola GNU/Linux-libre")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light grey') # light grey
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="25"
- fulloutput=(
- "${c1} %s"
- "${c1} .. , %s"
- "${c1} a; ._# %s"
- "${c1} )## _au#? %s"
- "${c1} ]##s,.__a_w##e^ %s"
- "${c1} :###########( %s"
- "${c1} ^!#####?!^ %s"
- "${c1} ._ %s"
- "${c1} _au######a, %s"
- "${c1} sa###########, %s"
- "${c1} _a##############o %s"
- "${c1} .a#####?!^^^^^-####_ %s"
- "${c1} j####^ ~##i %s"
- "${c1} _de!^ -#i %s"
- "${c1} _#e^ ]+ %s"
- "${c1} ^ ^ %s"
- "${c1} %s")
- ;;
- "Parabola GNU/Linux-libre")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'purple') # Purple
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="33"
- fulloutput=(
- "${c1} %s"
- "${c1} _,, _ %s"
- "${c1} _, ,##' ,##; %s"
- "${c1} _, ,##' ,##' ,#####; %s"
- "${c1} _,;#',##' ,##' ,#######' %s"
- "${c1} _,#**^' \` ,######### %s"
- "${c1} .-^\` \`######### %s"
- "${c1} ######## %s"
- "${c1} ;###### %s"
- "${c1} ;####* %s"
- "${c1} ####' %s"
- "${c1} ;### %s"
- "${c1} ,##' %s"
- "${c1} ## %s"
- "${c1} #' %s"
- "${c1} / %s"
- "${c1} ' %s"
- "${c1} %s")
- ;;
- "Viperr")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'dark grey') # Dark Gray
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="31"
- fulloutput=(
- "${c1} wwzapd dlzazw %s"
- "${c1} an${c2}#${c1}zncmqzepweeirzpas${c2}#${c1}xz %s"
- "${c1} apez${c2}##${c1}qzdkawweemvmzdm${c2}##${c1}dcmv %s"
- "${c1}zwepd${c2}####${c1}qzdweewksza${c2}####${c1}ezqpa %s"
- "${c1}ezqpdkapeifjeeazezqpdkazdkwqz %s"
- "${c1} ezqpdksz${c2}##${c1}wepuizp${c2}##${c1}wzeiapdk %s"
- "${c1} zqpakdpa${c2}#${c1}azwewep${c2}#${c1}zqpdkqze %s"
- "${c1} apqxalqpewenwazqmzazq %s"
- "${c1} mn${c2}##${c1}==${c2}#######${c1}==${c2}##${c1}qp %s"
- "${c1} qw${c2}##${c1}=${c2}#######${c1}=${c2}##${c1}zl %s"
- "${c1} z0${c2}######${c1}=${c2}######${c1}0a %s"
- "${c1} qp${c2}#####${c1}=${c2}#####${c1}mq %s"
- "${c1} az${c2}####${c1}===${c2}####${c1}mn %s"
- "${c1} ap${c2}#########${c1}qz %s"
- "${c1} 9qlzskwdewz %s"
- "${c1} zqwpakaiw %s"
- "${c1} qoqpe %s"
- "${c1} %s")
- ;;
- "LinuxDeepin")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Bold Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="33"
- fulloutput=(
- "${c1} eeeeeeeeeeeeeeeeeeeeeeeeeeee %s"
- "${c1} eee eeeeeee eeeeeeee %s"
- "${c1}ee eeeeeeeee eeeeeeeee ee %s"
- "${c1}e eeeeeeeee eeeeeeeee e %s"
- "${c1}e eeeeeee eeeeeeeeee e %s"
- "${c1}e eeeeee eeeee e %s"
- "${c1}e eeeee eee eee e %s"
- "${c1}e eeeee ee eeeeee e %s"
- "${c1}e eeeee eee eee e %s"
- "${c1}e eeeeeeeeee eeee e %s"
- "${c1}e eeeee eeee e %s"
- "${c1}e eeeeee e %s"
- "${c1}e eeeeeee e %s"
- "${c1}e eee eeeeeeee e %s"
- "${c1}eeeeeeeeeeeeeeee e %s"
- "${c1}eeeeeeeeeeeee ee %s"
- "${c1} eeeeeeeeeee eee %s"
- "${c1} eeeeeeeeeeeeeeeeeeeeeeeeeeee %s"
- "${c1} %s")
- ;;
- "Deepin")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'cyan') # Bold Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="41"
- fulloutput=(
- "${c1} ............ %s"
- "${c1} .';;;;;. .,;,. %s"
- "${c1} .,;;;;;;;. ';;;;;;;. %s"
- "${c1} .;::::::::' .,::;;,''''',. %s"
- "${c1} ,'.:::::::: .;;'. '; %s"
- "${c1} ;' 'cccccc, ,' :: '.. .: %s"
- "${c1} ,, :ccccc. ;: .c, '' :. ,; %s"
- "${c1} .l. cllll' ., .lc :; .l' l. %s"
- "${c1} .c :lllc ;cl: .l' .ll. :' %s"
- "${c1} .l 'looc. . ,o: 'oo' c, %s"
- "${c1} .o. .:ool::coc' .ooo' o. %s"
- "${c1} :: ..... .;dddo ;c %s"
- "${c1} l:... .';lddddo. ,o %s"
- "${c1} lxxxxxdoolllodxxxxxxxxxc :l %s"
- "${c1} ,dxxxxxxxxxxxxxxxxxxl. 'o, %s"
- "${c1} ,dkkkkkkkkkkkkko;. .;o; %s"
- "${c1} .;okkkkkdl;. .,cl:. %s"
- "${c1} .,:cccccccc:,. %s")
- ;;
- "Uos")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'blue') # red
- c2=$(getColor 'orange') # red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="52"
- fulloutput=(
- "${c1} %s"
- "${c1} %s"
- "${c1} ############ %s"
- "${c1} ############## %s"
- "${c1} ############ ${c2}oo %s"
- "${c1} ######## ${c2}oooooo %s"
- "${c1} ## #### ${c2}oooooooo %s"
- "${c1} #### #### ${c2}oooooo %s"
- "${c1} ###### #### ${c2}oooo %s"
- "${c1} #### #### ${c2}oo %s"
- "${c1} ## ############ %s"
- "${c1} ################ %s"
- "${c1} ################ %s"
- "${c1} ######## %s"
- "${c1} %s"
- "${c1} %s")
- ;;
- "Chakra")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c1} _ _ _ \"kkkkkkkk. %s"
- "${c1} ,kkkkkkkk., \'kkkkkkkkk, %s"
- "${c1} ,kkkkkkkkkkkk., \'kkkkkkkkk. %s"
- "${c1} ,kkkkkkkkkkkkkkkk,\'kkkkkkkk, %s"
- "${c1} ,kkkkkkkkkkkkkkkkkkk\'kkkkkkk. %s"
- "${c1} \"\'\'\"\'\'\',;::,,\"\'\'kkk\'\'kkkkk; __ %s"
- "${c1} ,kkkkkkkkkk, \"k\'\'kkkkk\' ,kkkk %s"
- "${c1} ,kkkkkkk\' ., \' .: \'kkkk\',kkkkkk %s"
- "${c1} ,kkkkkkkk\'.k\' , ,kkkk;kkkkkkkkk %s"
- "${c1} ,kkkkkkkk\';kk \'k \"\'k\',kkkkkkkkkkkk %s"
- "${c1} .kkkkkkkkk.kkkk.\'kkkkkkkkkkkkkkkkkk\' %s"
- "${c1} ;kkkkkkkk\'\'kkkkkk;\'kkkkkkkkkkkkk\'\' %s"
- "${c1} \'kkkkkkk; \'kkkkkkkk.,\"\"\'\'\"\'\'\"\" %s"
- "${c1} \'\'kkkk; \'kkkkkkkkkk., %s"
- "${c1} \';\' \'kkkkkkkkkkkk., %s"
- "${c1} ';kkkkkkkkkk\' %s"
- "${c1} ';kkkkkk\' %s"
- "${c1} \"\'\'\" %s")
- ;;
- "Fuduntu")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'dark grey') # Dark Gray
- c2=$(getColor 'yellow') # Bold Yellow
- c3=$(getColor 'light red') # Light Red
- c4=$(getColor 'white') # White
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; c4="${my_lcolor}"; fi
- startline="1"
- logowidth="49"
- fulloutput=(
- "${c1} \`dwoapfjsod\`${c2} \`dwoapfjsod\` "
- "${c1} \`xdwdsfasdfjaapz\`${c2} \`dwdsfasdfjaapzx\` %s"
- "${c1} \`wadladfladlafsozmm\`${c2} \`wadladfladlafsozmm\` %s"
- "${c1} \`aodowpwafjwodisosoaas\`${c2} \`odowpwafjwodisosoaaso\` %s"
- "${c1} \`adowofaowiefawodpmmxs\`${c2} \`dowofaowiefawodpmmxso\` %s"
- "${c1} \`asdjafoweiafdoafojffw\`${c2} \`sdjafoweiafdoafojffwq\` %s"
- "${c1} \`dasdfjalsdfjasdlfjdd\`${c2} \`asdfjalsdfjasdlfjdda\` %s"
- "${c1} \`dddwdsfasdfjaapzxaw\`${c2} \`ddwdsfasdfjaapzxawo\` %s"
- "${c1} \`dddwoapfjsowzocmw\`${c2} \`ddwoapfjsowzocmwp\` %s"
- "${c1} \`ddasowjfowiejao\`${c2} \`dasowjfowiejaow\` %s"
- "${c1} %s"
- "${c3} \`ddasowjfowiejao\`${c4} \`dasowjfowiejaow\` %s"
- "${c3} \`dddwoapfjsowzocmw\`${c4} \`ddwoapfjsowzocmwp\` %s"
- "${c3} \`dddwdsfasdfjaapzxaw\`${c4} \`ddwdsfasdfjaapzxawo\` %s"
- "${c3} \`dasdfjalsdfjasdlfjdd\`${c4} \`asdfjalsdfjasdlfjdda\` %s"
- "${c3} \`asdjafoweiafdoafojffw\`${c4} \`sdjafoweiafdoafojffwq\` %s"
- "${c3} \`adowofaowiefawodpmmxs\`${c4} \`dowofaowiefawodpmmxso\` %s"
- "${c3} \`aodowpwafjwodisosoaas\`${c4} \`odowpwafjwodisosoaaso\` %s"
- "${c3} \`wadladfladlafsozmm\`${c4} \`wadladfladlafsozmm\` %s"
- "${c3} \`dwdsfasdfjaapzx\`${c4} \`dwdsfasdfjaapzx\` %s"
- "${c3} \`woapfjsod\`${c4} \`woapfjsod\` %s")
- ;;
- "Zorin OS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- fulloutput=(
- "${c1} ................... %s"
- "${c1} :ooooooooooooooooooo/ %s"
- "${c1} /ooooooooooooooooooooo+ %s"
- "${c1} '''''''''''''''''''''''' %s"
- "${c1} %s"
- "${c1} .++++++++++++++++++/. :++- %s"
- "${c1} -oooooooooooooooo/- :+ooooo: %s"
- "${c1} :oooooooooooooo/- :+ooooooooo: %s"
- "${c1} .oooooooooooo+- :+ooooooooooooo- %s"
- "${c1} -oooooooo/- -+ooooooooooooooo: %s"
- "${c1} .oooo+- -+ooooooooooooooooo- %s"
- "${c1} .-- .-------------------. %s"
- "${c1} %s"
- "${c1} .//////////////////////- %s"
- "${c1} :oooooooooooooooooooo/ %s"
- "${c1} :oooooooooooooooooo: %s"
- "${c1} '''''''''''''''''' %s")
- ;;
- "Mac OS X"|"macOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'green') # Green
- c2=$(getColor 'brown') # Yellow
- c3=$(getColor 'light red') # Orange
- c4=$(getColor 'red') # Red
- c5=$(getColor 'purple') # Purple
- c6=$(getColor 'blue') # Blue
- fi
- if [ -n "${my_lcolor}" ]; then
- c1="${my_lcolor}"
- c2="${my_lcolor}"
- c3="${my_lcolor}"
- c4="${my_lcolor}"
- c5="${my_lcolor}"
- c6="${my_lcolor}"
- fi
- startline="1"
- logowidth="31"
- fulloutput=(
- "${c1} "
- "${c1} -/+:. %s"
- "${c1} :++++. %s"
- "${c1} /+++/. %s"
- "${c1} .:-::- .+/:-\`\`.::- %s"
- "${c1} .:/++++++/::::/++++++/:\` %s"
- "${c2} .:///////////////////////:\` %s"
- "${c2} ////////////////////////\` %s"
- "${c3} -+++++++++++++++++++++++\` %s"
- "${c3} /++++++++++++++++++++++/ %s"
- "${c4} /sssssssssssssssssssssss. %s"
- "${c4} :ssssssssssssssssssssssss- %s"
- "${c5} osssssssssssssssssssssssso/\` %s"
- "${c5} \`syyyyyyyyyyyyyyyyyyyyyyyy+\` %s"
- "${c6} \`ossssssssssssssssssssss/ %s"
- "${c6} :ooooooooooooooooooo+. %s"
- "${c6} \`:+oo+/:-..-:/+o+/- %s"
- "${c6} %s")
- ;;
- "Mac OS X - Classic")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'blue') # Blue
- c2=$(getColor 'light blue') # Light blue
- c3=$(getColor 'light grey') # Gray
- c4=$(getColor 'dark grey') # Dark Ggray
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; c4="${my_lcolor}"; fi
- startline="1"
- logowidth="39"
- fulloutput=(
- "${c3} "
- "${c3} .. %s"
- "${c3} dWc %s"
- "${c3} ,X0' %s"
- "${c1} ;;;;;;;;;;;;;;;;;;${c3}0Mk${c2}::::::::::::::: %s"
- "${c1} ;;;;;;;;;;;;;;;;;${c3}KWo${c2}:::::::::::::::: %s"
- "${c1} ;;;;;;;;;${c4}NN${c1};;;;;${c3}KWo${c2}:::::${c3}NN${c2}:::::::::: %s"
- "${c1} ;;;;;;;;;${c4}NN${c1};;;;${c3}0Md${c2}::::::${c3}NN${c2}:::::::::: %s"
- "${c1} ;;;;;;;;;${c4}NN${c1};;;${c3}xW0${c2}:::::::${c3}NN${c2}:::::::::: %s"
- "${c1} ;;;;;;;;;;;;;;${c3}KMc${c2}::::::::::::::::::: %s"
- "${c1} ;;;;;;;;;;;;;${c3}lWX${c2}:::::::::::::::::::: %s"
- "${c1} ;;;;;;;;;;;;;${c3}xWWXXXXNN7${c2}::::::::::::: %s"
- "${c1} ;;;;;;;;;;;;;;;;;;;;${c3}WK${c2}:::::::::::::: %s"
- "${c1} ;;;;;${c4}TKX0ko.${c1};;;;;;;${c3}kMx${c2}:::${c3}.cOKNF${c2}::::: %s"
- "${c1} ;;;;;;;;${c4}\`kO0KKKKKKK${c3}NMNXK0OP*${c2}:::::::: %s"
- "${c1} ;;;;;;;;;;;;;;;;;;;${c3}kMx${c2}:::::::::::::: %s"
- "${c1} ;;;;;;;;;;;;;;;;;;;;${c3}WX${c2}:::::::::::::: %s"
- "${c3} lMc %s"
- "${c3} kN. %s"
- "${c3} o' %s"
- "${c3} %s")
- ;;
- "Windows"|"Cygwin"|"Msys")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light red') # Red
- c2=$(getColor 'light green') # Green
- c3=$(getColor 'light blue') # Blue
- c4=$(getColor 'yellow') # Yellow
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; c4="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c1} ,.=:!!t3Z3z., %s"
- "${c1} :tt:::tt333EE3 %s"
- "${c1} Et:::ztt33EEEL${c2} @Ee., .., %s"
- "${c1} ;tt:::tt333EE7${c2} ;EEEEEEttttt33# %s"
- "${c1} :Et:::zt333EEQ.${c2} \$EEEEEttttt33QL %s"
- "${c1} it::::tt333EEF${c2} @EEEEEEttttt33F %s"
- "${c1} ;3=*^\`\`\`\"*4EEV${c2} :EEEEEEttttt33@. %s"
- "${c3} ,.=::::!t=., ${c1}\`${c2} @EEEEEEtttz33QF %s"
- "${c3} ;::::::::zt33)${c2} \"4EEEtttji3P* %s"
- "${c3} :t::::::::tt33.${c4}:Z3z..${c2} \`\`${c4} ,..g. %s"
- "${c3} i::::::::zt33F${c4} AEEEtttt::::ztF %s"
- "${c3} ;:::::::::t33V${c4} ;EEEttttt::::t3 %s"
- "${c3} E::::::::zt33L${c4} @EEEtttt::::z3F %s"
- "${c3}{3=*^\`\`\`\"*4E3)${c4} ;EEEtttt:::::tZ\` %s"
- "${c3} \`${c4} :EEEEtttt::::z7 %s"
- "${c4} \"VEzjt:;;z>*\` %s")
- ;;
- "Windows - Modern")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c1} .., %s"
- "${c1} ....,,:;+ccllll %s"
- "${c1} ...,,+:; cllllllllllllllllll %s"
- "${c1} ,cclllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} llllllllllllll lllllllllllllllllll %s"
- "${c1} \`'ccllllllllll lllllllllllllllllll %s"
- "${c1} \`'\"\"*:: :ccllllllllllllllll %s"
- "${c1} \`\`\`\`''\"*::cll %s"
- "${c1} \`\` %s")
- ;;
- "Haiku")
- if [[ "$no_color" != "1" ]]; then
- if [ "$haikualpharelease" == "yes" ]; then
- c1=$(getColor 'black_haiku') # Black
- c2=$(getColor 'light grey') # Light Gray
- else
- c1=$(getColor 'black') # Black
- c2=${c1}
- fi
- c3=$(getColor 'green') # Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="36"
- fulloutput=(
- "${c1} :dc' %s"
- "${c1} 'l:;'${c2},${c1}'ck. .;dc:. %s"
- "${c1} co ${c2}..${c1}k. .;; ':o. %s"
- "${c1} co ${c2}..${c1}k. ol ${c2}.${c1}0. %s"
- "${c1} co ${c2}..${c1}k. oc ${c2}..${c1}0. %s"
- "${c1} co ${c2}..${c1}k. oc ${c2}..${c1}0. %s"
- "${c1}.Ol,. co ${c2}...''${c1}Oc;kkodxOdddOoc,. %s"
- "${c1} ';lxxlxOdxkxk0kd${c3}oooll${c1}dl${c3}ccc:${c1}clxd; %s"
- "${c1} ..${c3}oOolllllccccccc:::::${c1}od; %s"
- "${c1} cx:ooc${c3}:::::::;${c1}cooolcX. %s"
- "${c1} cd${c2}.${c1}''cloxdoollc' ${c2}...${c1}0. %s"
- "${c1} cd${c2}......${c1}k;${c2}.${c1}xl${c2}.... .${c1}0. %s"
- "${c1} .::c${c2};..${c1}cx;${c2}.${c1}xo${c2}..... .${c1}0. %s"
- "${c1} '::c'${c2}...${c1}do${c2}..... .${c1}K, %s"
- "${c1} cd,.${c2}....:${c1}O,${c2}...... %s"
- "${c1} ':clod:'${c2}...... %s"
- "${c1} ${c2}. %s")
- ;;
- "Trisquel")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- c2=$(getColor 'light cyan') # Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c1} ▄▄▄▄▄▄ %s"
- "${c1} ▄█████████▄ %s"
- "${c1} ▄▄▄▄▄▄ ████▀ ▀████ %s"
- "${c1} ▄██████████▄ ████▀ ▄▄ ▀███ %s"
- "${c1} ▄███▀▀ ▀▀████ ███▄ ▄█ ███ %s"
- "${c1} ▄███ ▄▄▄ ████▄ ▀██████ ▄███ %s"
- "${c1} ███ █▀▀██▄ █████▄ ▀▀ ▄████ %s"
- "${c1} ▀███ ███ ███████▄▄ ▄▄██████ %s"
- "${c1} ▀███▄ ▄███ █████████████${c2}████▀ %s"
- "${c1} ▀█████████ ███████${c2}███▀▀▀ %s"
- "${c1} ▀▀███▀▀ ██${c2}████▀▀ %s"
- "${c2} ██████▀ ▄▄▄▄ %s"
- "${c2} █████▀ ████████ %s"
- "${c2} █████ ███▀ ▀███ %s"
- "${c2} ████▄ ██▄▄▄ ███ %s"
- "${c2} █████▄ ▀▀ ▄██ %s"
- "${c2} ██████▄▄▄████ %s"
- "${c2} █████▀▀ %s")
- ;;
- "Manjaro")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="33"
- fulloutput=(""
- "${c1} ██████████████████ ████████ %s"
- "${c1} ██████████████████ ████████ %s"
- "${c1} ██████████████████ ████████ %s"
- "${c1} ██████████████████ ████████ %s"
- "${c1} ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- "${c1} ████████ ████████ ████████ %s"
- " %s")
- ;;
- "Netrunner")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="43"
- fulloutput=(
- "${c1} nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn %s"
- "${c1} nnnnnnnnnnnnnn nnnnnnnnnnnnnn %s"
- "${c1} nnnnnnnnnn nnnnnnnnnn nnnnnnnnnn %s"
- "${c1} nnnnnnn nnnnnnnnnnnnnnnnnnnn nnnnnnn %s"
- "${c1} nnnn nnnnnnnnnnnnnnnnnnnnnnnnnn nnnn %s"
- "${c1} nnn nnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nnn %s"
- "${c1} nn nnnnnnnnnnnnnnnnnnnnnn nnnnnnnn nn %s"
- "${c1} n nnnnnnnnnnnnnnnnn nnnnnnnnnn n %s"
- "${c1} n nnnnnnnnnnn nnnnnnnnnnn n %s"
- "${c1} n nnnnnn nnnnnnnnnnnn n %s"
- "${c1} n nnnnnnnnnnn nnnnnnnnnnnn n %s"
- "${c1} n nnnnnnnnnnnnn nnnnnnnnnnnn n %s"
- "${c1} n nnnnnnnnnnnnnnnn nnnnnnnnnnnnn n %s"
- "${c1} n nnnnnnnnnnnnnnnnn nnnnnnnnnnnnn n %s"
- "${c1} n nnnnnnnnnnnnnnnnnn nnnnnnnnnnnn n %s"
- "${c1} nn nnnnnnnnnnnnnnnnn nnnnnnnnnnnn nn %s"
- "${c1} nnn nnnnnnnnnnnnnnn nnnnnnnnnnn nnn %s"
- "${c1} nnnnn nnnnnnnnnnnnnn nnnnnnnnn nnnnn %s"
- "${c1} nnnnnnn nnnnnnnnnnnnnnnnnnnn nnnnnnn %s"
- "${c1} nnnnnnnnnn nnnnnnnnnn nnnnnnnnnn %s"
- "${c1} nnnnnnnnnnnnnn nnnnnnnnnnnnnn %s"
- "${c1} nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn %s"
- "${c1} %s")
- ;;
- "Logos")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'green') # Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="25"
- fulloutput=(
- "${c1} ..:.:. %s"
- "${c1} ..:.:.:.:. %s"
- "${c1} ..:.:.:.:.:.:. %s"
- "${c1} ..:.:.:.:.:.:.:.:. %s"
- "${c1} .:.::;.::::..:.:.:. %s"
- "${c1} .:.:.::.::.::.;;/ %s"
- "${c1} .:.::.:::///// %s"
- "${c1} ..;;/////// %s"
- "${c1} /////////// %s"
- "${c1} ////////////// %s"
- "${c1} ///////////////// %s"
- "${c1} /////////////////// %s"
- "${c1} ////////////////// %s"
- "${c1} ////////////// %s"
- "${c1} ////////// %s"
- "${c1} ////// %s"
- "${c1} // %s")
- ;;
- "Manjaro-tree")
- if [[ "$no_color" != "1" ]]; then
- c1="\e[1;32m" # Green
- c2="\e[1;33m" # Yellow
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="33"
- fulloutput=(
- "${c1} ### %s"
- "${c1} ### #### %s"
- "${c1} ### #### %s"
- "${c1} ##### ##### %s"
- "${c1} ################# %s"
- "${c1} ### ##### #### %s"
- "${c1} ## ${c2}OOO ${c1}### %s"
- "${c1} # ${c2}WW ${c1}## %s"
- "${c1} ${c2}WW ${c1}# %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} WW %s"
- "${c2} %s")
- ;;
- "elementary OS"|"elementary os")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="36"
- fulloutput=(
- "${c1} %s"
- "${c1} eeeeeeeeeeeeeeeee %s"
- "${c1} eeeeeeeeeeeeeeeeeeeeeee %s"
- "${c1} eeeee eeeeeeeeeeee eeeee %s"
- "${c1} eeee eeeee eee eeee %s"
- "${c1} eeee eeee eee eeee %s"
- "${c1}eee eee eee eee %s"
- "${c1}eee eee eee eee %s"
- "${c1}ee eee eeee eeee %s"
- "${c1}ee eee eeeee eeeeee %s"
- "${c1}ee eee eeeee eeeee ee %s"
- "${c1}eee eeee eeeeee eeeee eee %s"
- "${c1}eee eeeeeeeeee eeeeee eee %s"
- "${c1} eeeeeeeeeeeeeeeeeeeeeeee eeeee %s"
- "${c1} eeeeeeee eeeeeeeeeeee eeee %s"
- "${c1} eeeee eeeee %s"
- "${c1} eeeeeee eeeeeee %s"
- "${c1} eeeeeeeeeeeeeeeee %s")
- ;;
- "Android")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Bold Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="2"
- logowidth="24"
- fulloutput=(
- "${c1} ╲ ▁▂▂▂▁ ╱ "
- "${c1} ▄███████▄ "
- "${c1} ▄██ ███ ██▄ %s"
- "${c1} ▄███████████▄ %s"
- "${c1} ▄█ ▄▄▄▄▄▄▄▄▄▄▄▄▄ █▄ %s"
- "${c1} ██ █████████████ ██ %s"
- "${c1} ██ █████████████ ██ %s"
- "${c1} ██ █████████████ ██ %s"
- "${c1} ██ █████████████ ██ %s"
- "${c1} █████████████ %s"
- "${c1} ███████████ %s"
- "${c1} ██ ██ %s"
- "${c1} ██ ██ %s")
- ;;
- "Scientific Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue')
- c2=$(getColor 'light red')
- c3=$(getColor 'white')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="1"
- logowidth="44"
- fulloutput=(
- "${c1} =/;;/- "
- "${c1} +: // %s"
- "${c1} /; /; %s"
- "${c1} -X H. %s"
- "${c1} .//;;;:;;-, X= :+ .-;:=;:;#;. %s"
- "${c1} M- ,=;;;#:, ,:#;;:=, ,@ %s"
- "${c1} :# :#.=/++++/=.$= #= %s"
- "${c1} ,#; #/:+/;,,/++:+/ ;+. %s"
- "${c1} ,+/. ,;@+, ,#H;, ,/+, %s"
- "${c1} ;+;;/= @. ${c2}.H${c3}#${c2}#X ${c1}-X :///+; %s"
- "${c1} ;+=;;;.@, ${c3}.X${c2}M${c3}@$. ${c1}=X.//;=#/. %s"
- "${c1} ,;: :@#= =\$H: .+#- %s"
- "${c1} ,#= #;-///==///-// =#, %s"
- "${c1} ;+ :#-;;;:;;;;-X- +: %s"
- "${c1} @- .-;;;;M- =M/;;;-. -X %s"
- "${c1} :;;::;;-. #- :+ ,-;;-;:== %s"
- "${c1} ,X H. %s"
- "${c1} ;/ #= %s"
- "${c1} // +; %s"
- "${c1} '////' %s")
- ;;
- "BackTrack Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light red') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="1"
- logowidth="48"
- fulloutput=(
- "${c1}.............. "
- "${c1} ..,;:ccc,. %s"
- "${c1} ......''';lxO. %s"
- "${c1}.....''''..........,:ld; %s"
- "${c1} .';;;:::;,,.x, %s"
- "${c1} ..'''. 0Xxoc:,. ... %s"
- "${c1} .... ,ONkc;,;cokOdc',. %s"
- "${c1} . OMo ':${c2}dd${c1}o. %s"
- "${c1} dMc :OO; %s"
- "${c1} 0M. .:o. %s"
- "${c1} ;Wd %s"
- "${c1} ;XO, %s"
- "${c1} ,d0Odlc;,.. %s"
- "${c1} ..',;:cdOOd::,. %s"
- "${c1} .:d;.':;. %s"
- "${c1} 'd, .' %s"
- "${c1} ;l ..%s"
- "${c1} .o %s"
- "${c1} c %s"
- "${c1} .' %s"
- "${c1} . %s")
- ;;
- "Kali Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # White
- c2=$(getColor 'black') # Light Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="1"
- logowidth="48"
- fulloutput=(
- "${c1}.............. "
- "${c1} ..,;:ccc,. %s"
- "${c1} ......''';lxO. %s"
- "${c1}.....''''..........,:ld; %s"
- "${c1} .';;;:::;,,.x, %s"
- "${c1} ..'''. 0Xxoc:,. ... %s"
- "${c1} .... ,ONkc;,;cokOdc',. %s"
- "${c1} . OMo ':${c2}dd${c1}o. %s"
- "${c1} dMc :OO; %s"
- "${c1} 0M. .:o. %s"
- "${c1} ;Wd %s"
- "${c1} ;XO, %s"
- "${c1} ,d0Odlc;,.. %s"
- "${c1} ..',;:cdOOd::,. %s"
- "${c1} .:d;.':;. %s"
- "${c1} 'd, .' %s"
- "${c1} ;l ..%s"
- "${c1} .o %s"
- "${c1} c %s"
- "${c1} .' %s"
- "${c1} . %s")
- ;;
- "Sabayon")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light blue') # Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="38"
- fulloutput=(
- "${c2} ........... %s"
- "${c2} .. .. %s"
- "${c2} .. .. %s"
- "${c2} .. ${c1}o ${c2}.. %s"
- "${c2} .. ${c1}:W' ${c2}.. %s"
- "${c2} .. ${c1}.d. ${c2}.. %s"
- "${c2}:. ${c1}.KNO ${c2}.: %s"
- "${c2}:. ${c1}cNNN. ${c2}.: %s"
- "${c2}: ${c1}dXXX, ${c2}: %s"
- "${c2}: ${c1}. dXXX, .cd, ${c2}: %s"
- "${c2}: ${c1}'kc .. dKKK. ,ll;:' ${c2}: %s"
- "${c2}: ${c1}.xkkxc;..dkkkc',cxkkl ${c2}: %s"
- "${c2}:. ${c1}.,cdddddddddddddo:. ${c2}.: %s"
- "${c2} .. ${c1}:lllllll: ${c2}.. %s"
- "${c2} .. ${c1}',,,,, ${c2}.. %s"
- "${c2} .. .. %s"
- "${c2} .. .. %s"
- "${c2} ............... %s")
- ;;
- "KaOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="35"
- fulloutput=(
- "${c1} .. %s"
- "${c1} ..... ..OSSAAAAAAA.. %s"
- "${c1} .KKKKSS. .SSAAAAAAAAAAA. %s"
- "${c1}.KKKKKSO. .SAAAAAAAAAA... %s"
- "${c1}KKKKKKS. .OAAAAAAAA. %s"
- "${c1}KKKKKKS. .OAAAAAA. %s"
- "${c1}KKKKKKS. .SSAA.. %s"
- "${c1}.KKKKKS..OAAAAAAAAAAAA........ %s"
- "${c1} DKKKKO.=AA=========A===AASSSO.. %s"
- "${c1} AKKKS.==========AASSSSAAAAAASS. %s"
- "${c1} .=KKO..========ASS.....SSSSASSSS.%s"
- "${c1} .KK. .ASS..O.. =SSSSAOSS:%s"
- "${c1} .OK. .ASSSSSSSO...=A.SSA.%s"
- "${c1} .K ..SSSASSSS.. ..SSA. %s"
- "${c1} .SSS.AAKAKSSKA. %s"
- "${c1} .SSS....S.. %s")
- ;;
- "CentOS"|"CentOS Stream")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'yellow')
- c2=$(getColor 'light green')
- c3=$(getColor 'light blue')
- c4=$(getColor 'light purple')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; c4="${my_lcolor}"; fi
- startline="0"
- logowidth="40"
- fulloutput=(
- "${c1} .. %s"
- "${c1} .PLTJ. %s"
- "${c1} <><><><> %s"
- "${c2} KKSSV' 4KKK ${c1}LJ${c4} KKKL.'VSSKK %s"
- "${c2} KKV' 4KKKKK ${c1}LJ${c4} KKKKAL 'VKK %s"
- "${c2} V' ' 'VKKKK ${c1}LJ${c4} KKKKV' ' 'V %s"
- "${c2} .4MA.' 'VKK ${c1}LJ${c4} KKV' '.4Mb. %s"
- "${c4} . ${c2}KKKKKA.' 'V ${c1}LJ${c4} V' '.4KKKKK ${c3}. %s"
- "${c4} .4D ${c2}KKKKKKKA.'' ${c1}LJ${c4} ''.4KKKKKKK ${c3}FA. %s"
- "${c4} <QDD ++++++++++++ ${c3}++++++++++++ GFD> %s"
- "${c4} 'VD ${c3}KKKKKKKK'.. ${c2}LJ ${c1}..'KKKKKKKK ${c3}FV %s"
- "${c4} ' ${c3}VKKKKK'. .4 ${c2}LJ ${c1}K. .'KKKKKV ${c3}' %s"
- "${c3} 'VK'. .4KK ${c2}LJ ${c1}KKA. .'KV' %s"
- "${c3} A. . .4KKKK ${c2}LJ ${c1}KKKKA. . .4 %s"
- "${c3} KKA. 'KKKKK ${c2}LJ ${c1}KKKKK' .4KK %s"
- "${c3} KKSSA. VKKK ${c2}LJ ${c1}KKKV .4SSKK %s"
- "${c2} <><><><> %s"
- "${c2} 'MKKM' %s"
- "${c2} '' %s")
- ;;
- "Jiyuu Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="31"
- fulloutput=(
- "${c1}+++++++++++++++++++++++. %s"
- "${c1}ss:-......-+so/:----.os- %s"
- "${c1}ss +s/ os- %s"
- "${c1}ss :s+ os- %s"
- "${c1}ss os. os- %s"
- "${c1}ss .so os- %s"
- "${c1}ss :s+ os- %s"
- "${c1}ss /s/ os- %s"
- "${c1}ss /s: os- %s"
- "${c1}ss +s- os- %s"
- "${c1}ss-.....os:..........os- %s"
- "${c1}++++++++os+++++++++oooo. %s"
- "${c1} os. ./oo/. %s"
- "${c1} os. ./oo: %s"
- "${c1} os. ./oo: %s"
- "${c1} os oo+- %s"
- "${c1} os+- %s"
- "${c1} /. %s")
- ;;
- "Antergos")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'blue') # Light Blue
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="1"
- logowidth="41"
- fulloutput=(
- "${c1} \`.-/::/-\`\` "
- "${c1} .-/osssssssso/. %s"
- "${c1} :osyysssssssyyys+- %s"
- "${c1} \`.+yyyysssssssssyyyyy+. %s"
- "${c1} \`/syyyyyssssssssssyyyyys-\` %s"
- "${c1} \`/yhyyyyysss${c2}++${c1}ssosyyyyhhy/\` %s"
- "${c1} .ohhhyyyys${c2}o++/+o${c1}so${c2}+${c1}syy${c2}+${c1}shhhho. %s"
- "${c1} .shhhhys${c2}oo++//+${c1}sss${c2}+++${c1}yyy${c2}+s${c1}hhhhs. %s"
- "${c1} -yhhhhs${c2}+++++++o${c1}ssso${c2}+++${c1}yyy${c2}s+o${c1}hhddy: %s"
- "${c1} -yddhhy${c2}o+++++o${c1}syyss${c2}++++${c1}yyy${c2}yooy${c1}hdddy- %s"
- "${c1} .yddddhs${c2}o++o${c1}syyyyys${c2}+++++${c1}yyhh${c2}sos${c1}hddddy\` %s"
- "${c1}\`odddddhyosyhyyyyyy${c2}++++++${c1}yhhhyosddddddo %s"
- "${c1}.dmdddddhhhhhhhyyyo${c2}+++++${c1}shhhhhohddddmmh. %s"
- "${c1}ddmmdddddhhhhhhhso${c2}++++++${c1}yhhhhhhdddddmmdy %s"
- "${c1}dmmmdddddddhhhyso${c2}++++++${c1}shhhhhddddddmmmmh %s"
- "${c1}-dmmmdddddddhhys${c2}o++++o${c1}shhhhdddddddmmmmd- %s"
- "${c1} .smmmmddddddddhhhhhhhhhdddddddddmmmms. %s"
- "${c1} \`+ydmmmdddddddddddddddddddmmmmdy/. %s"
- "${c1} \`.:+ooyyddddddddddddyyso+:.\` %s")
- ;;
- "Void Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'green') # Dark Green
- c2=$(getColor 'light green') # Light Green
- c3=$(getColor 'dark grey') # Black
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="47"
- fulloutput=(
- "${c2} __.;=====;.__ %s"
- "${c2} _.=+==++=++=+=+===;. %s"
- "${c2} -=+++=+===+=+=+++++=_ %s"
- "${c1} . ${c2}-=:\`\` \`--==+=++==. %s"
- "${c1} _vi, ${c2}\` --+=++++: %s"
- "${c1} .uvnvi. ${c2}_._ -==+==+. %s"
- "${c1} .vvnvnI\` ${c2}.;==|==;. :|=||=|. %s"
- "${c3} +QmQQm${c1}pvvnv; ${c3}_yYsyQQWUUQQQm #QmQ#${c2}:${c3}QQQWUV\$QQmL %s"
- "${c3} -QQWQW${c1}pvvo${c3}wZ?.wQQQE${c2}==<${c3}QWWQ/QWQW.QQWW${c2}(: ${c3}jQWQE %s"
- "${c3} -\$QQQQmmU' jQQQ@${c2}+=<${c3}QWQQ)mQQQ.mQQQC${c2}+;${c3}jWQQ@' %s"
- "${c3} -\$WQ8Y${c1}nI: ${c3}QWQQwgQQWV${c2}\`${c3}mWQQ.jQWQQgyyWW@! %s"
- "${c1} -1vvnvv. ${c2}\`~+++\` ++|+++ %s"
- "${c1} +vnvnnv, ${c2}\`-|=== %s"
- "${c1} +vnvnvns. . ${c2}:=- %s"
- "${c1} -Invnvvnsi..___..=sv=. ${c2}\` %s"
- "${c1} +Invnvnvnnnnnnnnvvnn;. %s"
- "${c1} ~|Invnvnvvnvvvnnv}+\` %s"
- "${c1} -~\"|{*l}*|\"\"~ %s")
- ;;
- "NixOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'blue')
- c2=$(getColor 'light blue')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="45"
- fulloutput=(
- "${c1} ::::. ${c2}'::::: ::::' %s"
- "${c1} '::::: ${c2}':::::. ::::' %s"
- "${c1} ::::: ${c2}'::::.::::: %s"
- "${c1} .......:::::..... ${c2}:::::::: %s"
- "${c1} ::::::::::::::::::. ${c2}:::::: ${c1}::::. %s"
- "${c1} ::::::::::::::::::::: ${c2}:::::. ${c1}.::::' %s"
- "${c2} ..... ::::' ${c1}:::::' %s"
- "${c2} ::::: '::' ${c1}:::::' %s"
- "${c2} ........::::: ' ${c1}:::::::::::. %s"
- "${c2}::::::::::::: ${c1}::::::::::::: %s"
- "${c2} ::::::::::: ${c1}.. ::::: %s"
- "${c2} .::::: ${c1}.::: ::::: %s"
- "${c2} .::::: ${c1}::::: ''''' ${c2}..... %s"
- "${c2} ::::: ${c1}':::::. ${c2}......:::::::::::::' %s"
- "${c2} ::: ${c1}::::::. ${c2}':::::::::::::::::' %s"
- "${c1} .:::::::: ${c2}':::::::::: %s"
- "${c1} .::::''::::. ${c2}'::::. %s"
- "${c1} .::::' ::::. ${c2}'::::. %s"
- "${c1} .:::: :::: ${c2}'::::. %s")
- ;;
- "Guix System")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'orange')
- c2=$(getColor 'light orange')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="40"
- fulloutput=(
- "${c1} + ? %s"
- "${c1} ?? ?I %s"
- "${c1} ??I? I??N ${c2}??? ${c1}???? %s"
- "${c1} ?III7${c2}??????? ??????${c1}7III?Z %s"
- "${c1} OI77\$${c2}????? ?????${c1}$77IIII %s"
- "${c1} ????? ${c2}???? %s"
- "${c1} ???ID ${c2}???? %s"
- "${c1} IIII ${c2}+???? %s"
- "${c1} IIIII ${c2}???? %s"
- "${c1} IIII ${c2}????? %s"
- "${c1} IIIII ${c2}???? %s"
- "${c1} II77 ${c2}????$ %s"
- "${c1} 7777+${c2}???? %s"
- "${c1} 77++?${c2}??$ %s"
- "${c1} N?+???${c2}? %s")
- ;;
- "BunsenLabs")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'blue')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="5"
- logowidth="25"
- fulloutput=(
- "${c1} HC] "
- "${c1} H]]]] "
- "${c1} H]]]]]]4 "
- "${c1} @C]]]]]]]]* "
- "${c1} @]]]]]]]]]]xd "
- "${c1} @]]]]]]]]]]]]]d %s"
- "${c1} 0]]]]]]]]]]]]]]]] %s"
- "${c1} kx]]]]]]x]]x]]]]]%% %s"
- "${c1} #x]]]]]]]]]]]]]x]]]d %s"
- "${c1} #]]]]]]qW x]]x]]]]]4 %s"
- "${c1} k]x]]xg %%x]]]]]]%% %s"
- "${c1} Wx]]]W x]]]]]]] %s"
- "${c1} #]]]4 xx]]x]] %s"
- "${c1} px] ]]]]]x %s"
- "${c1} Wx] x]]x]] %s"
- "${c1} &x x]]]] %s"
- "${c1} m x]]]] %s"
- "${c1} x]x] %s"
- "${c1} x]]] %s"
- "${c1} ]]]] %s"
- "${c1} x]x %s"
- "${c1} x]q %s"
- "${c1} ]g %s"
- "${c1} q %s")
- ;;
- "SteamOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'grey') # Gray
- c2=$(getColor 'purple') # Dark Purple
- c3=$(getColor 'light purple') # Light Purple
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c2} .,,,,. %s"
- "${c2} .,'onNMMMMMNNnn',. %s"
- "${c2} .'oNM${c3}ANK${c2}MMMMMMMMMMMNNn'. %s"
- "${c3} .'ANMMMMMMMXK${c2}NNWWWPFFWNNMNn. %s"
- "${c3} ;NNMMMMMMMMMMNWW'' ${c2},.., 'WMMM, %s"
- "${c3} ;NMMMMV+##+VNWWW' ${c3}.+;'':+, 'WM${c2}W, %s"
- "${c3} ,VNNWP+${c1}######${c3}+WW, ${c1}+: ${c3}:+, +MMM, %s"
- "${c3} '${c1}+#############, +. ,+' ${c3}+NMMM %s"
- "${c1} '*#########*' '*,,*' ${c3}.+NMMMM. %s"
- "${c1} \`'*###*' ,.,;###${c3}+WNM, %s"
- "${c1} .,;;, .;##########${c3}+W %s"
- "${c1} ,',. '; ,+##############' %s"
- "${c1} '###+. :,. .,; ,###############' %s"
- "${c1} '####.. \`'' .,###############' %s"
- "${c1} '#####+++################' %s"
- "${c1} '*##################*' %s"
- "${c1} ''*##########*'' %s"
- "${c1} '''''' %s")
- ;;
- "SailfishOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'dark grey') # Grey
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="32"
- fulloutput=(
- "${c1} _a@b %s"
- "${c1} _#b (b %s"
- "${c1} _@@ @_ _, %s"
- "${c1} _#^@ _#*^^*gg,aa@^^ %s"
- "${c1} #- @@^ _a@^^ %s"
- "${c1} @_ *g#b %s"
- "${c1} ^@_ ^@_ %s"
- "${c1} ^@_ @ %s"
- "${c1} @(b (b %s"
- "${c1} #b(b#^ %s"
- "${c1} _@_#@^ %s"
- "${c1} _a@a*^ %s"
- "${c1} ,a@*^ %s")
- ;;
- "Qubes OS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'cyan')
- c2=$(getColor 'blue')
- c3=$(getColor 'light blue')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="47"
- fulloutput=(
- "${c3} #### %s"
- "${c3} ######## %s"
- "${c3} ############ %s"
- "${c3} ####### ####### %s"
- "${c1} #${c3}###### ######${c2}# %s"
- "${c1} ####${c3}### ###${c2}#### %s"
- "${c1} ###### ${c2} ###### %s"
- "${c1} ###### ${c2} ###### %s"
- "${c1} ###### ${c2} ###### %s"
- "${c1} ###### ${c2} ###### %s"
- "${c1} ###### ${c2} ###### %s"
- "${c1} ####### ${c2} ####### %s"
- "${c1} ####### ${c2} ######### %s"
- "${c1} ####### ${c2} ############## %s"
- "${c1} ######${c2}###### ###### %s"
- "${c1} ####${c2}#### ### %s"
- "${c1} ##${c2}## %s"
- "${c1} %s")
- ;;
- "PCLinuxOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'blue') # Blue
- c2=$(getColor 'light grey') # White
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; fi
- startline="0"
- logowidth="50"
- fulloutput=(
- "${c1} %s"
- "${c1} <NNN>%s"
- "${c1} <NNY %s"
- "${c1} <ooooo>--. (( %s"
- "${c1} Aoooooooooooo>--. \\\\\\ %s"
- "${c1} AooodNNNNNNNNNNNNNNNN>--. )) %s"
- "${c2} (${c1} AoodNNNNNNNNNNNNNNNNNNNNNNN>-///' %s"
- "${c2} \\\\\\\\${c1}AodNNNNNNNNNNNNNNNNNNNNNNNNNNNY/ %s"
- "${c1} AodNNNNNNNNNNNNNNNNNNNNNNNNNNNNN %s"
- "${c1} AdNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNA %s"
- "${c1} (${c2}/)${c1}NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNA %s"
- "${c2} //${c1}<NNNNNNNNNNNNNNNNNY' YNNY YNNNN %s"
- "${c2} ,====#Y//${c1} \`<NNNNNNNNNNNY ANY YNA %s"
- "${c1} ANY<NNNNYYN .NY YN. %s"
- "${c1} (NNY NN (NND (NND %s"
- "${c1} (NNU %s"
- "${c1} %s")
- ;;
- "Exherbo")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'dark grey') # Black
- c2=$(getColor 'light blue') # Blue
- c3=$(getColor 'light red') # Beige
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="46"
- fulloutput=(
- "${c1} , %s"
- "${c1} OXo. %s"
- "${c1} NXdX0: .cok0KXNNXXK0ko:. %s"
- "${c1} KX '0XdKMMK;.xMMMk, .0MMMMMXx; ... %s"
- "${c1} 'NO..xWkMMx kMMM cMMMMMX,NMWOxOXd. %s"
- "${c1} cNMk NK .oXM. OMMMMO. 0MMNo kW. %s"
- "${c1} lMc o: ., .oKNk; ;NMMWlxW' %s"
- "${c1} ;Mc .. .,,' .0M${c2}g;${c1}WMN'dWMMMMMMO %s"
- "${c1} XX ,WMMMMW. cM${c2}cfli${c1}WMKlo. .kMk %s"
- "${c1} .Mo .WM${c2}GD${c1}MW. XM${c2}WO0${c1}MMk oMl %s"
- "${c1} ,M: ,XMMWx::,''oOK0x; NM. %s"
- "${c1} 'Ml ,kNKOxxxxxkkO0XXKOd:. oMk %s"
- "${c1} NK .0Nxc${c3}:::::::::::::::${c1}fkKNk, .MW %s"
- "${c1} ,Mo .NXc${c3}::${c1}qXWXb${c3}::::::::::${c1}oo${c3}::${c1}lNK. .MW %s"
- "${c1} ;Wo oMd${c3}:::${c1}oNMNP${c3}::::::::${c1}oWMMMx${c3}:${c1}c0M; lMO %s"
- "${c1} 'NO;W0c${c3}:::::::::::::::${c1}dMMMMO${c3}::${c1}lMk .WM' %s"
- "${c1} xWONXdc${c3}::::::::::::::${c1}oOOo${c3}::${c1}lXN. ,WMd %s"
- "${c1} 'KWWNXXK0Okxxo,${c3}:::::::${c1},lkKNo xMMO %s"
- "${c1} :XMNxl,';:lodxkOO000Oxc. .oWMMo %s"
- "${c1} 'dXMMXkl;,. .,o0MMNo' %s"
- "${c1} ':d0XWMMMMWNNNNMMMNOl' %s"
- "${c1} ':okKXWNKkl' %s")
- ;;
- "Red Star OS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light red') # Red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="45"
- fulloutput=(
- "${c1} .. %s"
- "${c1} .oK0l %s"
- "${c1} :0KKKKd. %s"
- "${c1} .xKO0KKKKd %s"
- "${c1} ,Od' .d0000l %s"
- "${c1} .c;. .'''... ..'. %s"
- "${c1} .,:cloddxxxkkkkOOOOkkkkkkkkxxxxxxxxxkkkx: %s"
- "${c1} ;kOOOOOOOkxOkc'...',;;;;,,,'',;;:cllc:,. %s"
- "${c1} .okkkkd,.lko .......',;:cllc:;,,'''''. %s"
- "${c1} .cdo. :xd' cd:. ..';'',,,'',,;;;,'. %s"
- "${c1} . .ddl.;doooc'..;oc;'..';::;,'. %s"
- "${c1} coo;.oooolllllllcccc:'. . %s"
- "${c1} .ool''lllllccccccc:::::;. %s"
- "${c1} ;lll. .':cccc:::::::;;;;' %s"
- "${c1} :lcc:'',..';::::;;;;;;;,,. %s"
- "${c1} :cccc::::;...';;;;;,,,,,,. %s"
- "${c1} ,::::::;;;,'. ..',,,,'''. %s"
- "${c1} ........ ...... %s"
- "${c1} %s")
- ;;
- "SparkyLinux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light gray') # Gray
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="48"
- fulloutput=(
- "${c1} . \`-:-\` %s"
- "${c1} .o\` .-///-\` %s"
- "${c1} \`oo\` .:/++:. %s"
- "${c1} os+\` -/+++:\` \`\`.........\`\`\` %s"
- "${c1} /ys+\`./+++/-.-::::::----......\`\` %s"
- "${c1} \`syyo\`++o+--::::-::/+++/-\`\` %s"
- "${c1} -yyy+.+o+\`:/:-:sdmmmmmmmmdy+-\` %s"
- "${c1} ::-\` :yyy/-oo.-+/\`ymho++++++oyhdmdy/\` %s"
- "${c1} \`/yy+-\`.syyo\`+o..o--h..osyhhddhs+//osyy/\` %s"
- "${c1} -ydhs+-oyy/.+o.-: \` \` :/::+ydhy+\`\`\`-os- %s"
- "${c1} .sdddy::syo--/:. \`.:dy+-ohhho ./: %s"
- "${c1} :yddds/:+oo+//:-\`- /+ +hy+.shhy: \`\` %s"
- "${c1} \`:ydmmdysooooooo-.ss\`/yss--oyyo %s"
- "${c1} \`./ossyyyyo+:-/oo:.osso- .oys %s"
- "${c1} \`\`..-------::////.-oooo/ :so %s"
- "${c1} \`...----::::::::--.\`/oooo: .o: %s"
- "${c1} \`\`\`\`\`\`\` ++o+:\` \`:\` %s"
- "${c1} ./+/-\` \` %s"
- "${c1} \`-:-. %s"
- "${c1} \`\` %s")
- ;;
- "Pardus")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'yellow') # Light Yellow
- c2=$(getColor 'light gray') # Light Gray
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="45"
- fulloutput=(
- ""
- "${c1} .smNdy+- \`.:/osyyso+:.\` -+ydmNs. %s"
- "${c1} /Md- -/ymMdmNNdhso/::/oshdNNmdMmy/. :dM/ %s"
- "${c1} mN. oMdyy- -y \`-dMo .Nm %s"
- "${c1} .mN+\` sMy hN+ -: yMs \`+Nm. %s"
- "${c1} \`yMMddMs.dy \`+\` sMddMMy\` %s"
- "${c1} +MMMo .\` . oMMM+ %s"
- "${c1} \`NM/ \`\`\`\`\`.\` \`.\`\`\`\`\` +MN\` %s"
- "${c1} yM+ \`.-:yhomy ymohy:-.\` +My %s"
- "${c1} yM: yo oy :My %s"
- "${c1} +Ms .N\` \`N. +h sM+ %s"
- "${c1} \`MN - -::::::- : :o:+\`NM\` %s"
- "${c1} yM/ sh -dMMMMd- ho +y+My %s"
- "${c1} .dNhsohMh-//: /mm/ ://-yMyoshNd\` %s"
- "${c1} \`-ommNMm+:/. oo ./:+mMNmmo:\` %s"
- "${c1} \`/o+.-somNh- :yy: -hNmos-.+o/\` %s"
- "${c1} ./\` .s/\`s+sMdd+\`\`+ddMs+s\`/s. \`/. %s"
- "${c1} : -y. -hNmddmNy. .y- : %s"
- "${c1} -+ \`..\` +- %s"
- "%s")
- ;;
- "Sulin")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light gray') # Light Yellow
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="45"
- fulloutput=(
- ""
- "${c1} ++ +++ %s"
- "${c1} ++::+ ++:+: %s"
- "${c1} +:~:~: +:~:~:+ %s"
- "${c1} +:~::~:+ +~::::: %s"
- "${c1} +:~:::~~+:~. ..~::.::+:~+ %s"
- "${c1} +~:::. .::~:+ %s"
- "${c1} +::. . .~:+ %s"
- "${c1} :~:~+~..~ ~: ~++~++~+ %s"
- "${c1} :++++++++:++:+++++++: %s"
- "${c1} ++++ +:+++.+++++++++++.+++: %s"
- "${c1} :. ~ :+++.+++++++++++~+++: %s"
- "${c1} +~ .++++++++++ ++ ++++:+ %s"
- "${c1} +: ~ :~+ +~+ ~+ +~+ %s"
- "${c1} ++:+++++ +++ %s"
- "${c1} +::~:++++++++++++++ %s"
- "${c1} +++++++++++++++: %s"
- "${c1} +:++++++++++++:: %s"
- "${c1} :.~+++:++:++++..+ %s"
- "${c1} +~::++::+~::+:.+ %s"
- "${c1} :~~~~~:+~:~~~:+ %s")
- ;;
- "SwagArch")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="48"
- fulloutput=(
- "${c1} %s"
- "${c1} .;ldkOKXXNNNNXXK0Oxoc,. %s"
- "${c1} ,lkXMMNK0OkkxkkOKWMMMMMMMMMM; %s"
- "${c1} 'K0xo ..,;:c:. \`'lKMMMMM0 %s"
- "${c1} .lONMMMMMM' \`lNMk' %s"
- "${c1} ;WMMMMMMMMMO. ${c2}....::... %s"
- "${c1} OMMMMMMMMMMMMKl. ${c2}.,;;;;;ccccccc, %s"
- "${c1} \`0MMMMMMMMMMMMMM0: ${c2}.. .ccccccc. %s"
- "${c1} 'kWMMMMMMMMMMMMMNo. ${c2}.,:' .ccccccc. %s"
- "${c1} \`c0MMMMMMMMMMMMMN,${c2},:c; :cccccc: %s"
- "${c1} ckl. \`lXMMMMMMMMMX${c2}occcc:.. ;ccccccc. %s"
- "${c1} dMMMMXd, \`OMMMMMMWk${c2}ccc;:''\` ,ccccccc: %s"
- "${c1} XMMMMMMMWKkxxOWMMMMMNo${c2}ccc; .cccccccc. %s"
- "${c1} \`':ldxO0KXXXXXK0Okdo${c2}cccc. :cccccccc. %s"
- "${c2} :ccc:' \`cccccccc:, %s"
- "${c2} '' %s"
- "${c2} %s")
- ;;
- "EuroLinux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}";fi;
- startline="0"
- logowidth="39"
- fulloutput=(
- "${c1} %s"
- "${c1} DZZZZZZZZZZZZZ %s"
- "${c1} ZZZZZZZZZZZZZZZZZZZ %s"
- "${c1} ZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1} OZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1} Z ZZZ 8ZZZZZZZZZZZZ %s"
- "${c1} ZZZ ZZZZZZZZZZ %s"
- "${c1} ZZZZZN ZZZZZZZZZ %s"
- "${c1} ZZZZZZZ ZZZZZZZZ %s"
- "${c1}ZZZZZZZZ OZZZZZZZ %s"
- "${c1}ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1}ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1}ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1}ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1}ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ %s"
- "${c1}ZZZZZZZZ %s"
- "${c1} ZZZZZZZZ %s"
- "${c1} OZZZZZZZZO %s"
- "${c1} ZZZZZZZZZZZ %s"
- "${c1} OZZZZZZZZZZZZZZZN %s"
- "${c1} ZZZZZZZZZZZZZZZZ %s"
- "${c1} DZZZZZZZZZZZZZZZ %s"
- "${c1} ZZZZZZZZZZZZZ %s"
- "${c1} NZZZZZZZZ %s"
- "${c1} %s")
- ;;
- "OBRevenge")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'red') # White
- c2=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="48"
- fulloutput=(
- "${c1} _@@@@ @@@g_ %s"
- "${c1} _@@@@@@ @@@@@@ %s"
- "${c1} _@@@@@@M W@@@@@@_ %s"
- "${c1} j@@@@P ^W@@@@ %s"
- "${c1} @@@@L____ _____Q@@@@ %s"
- "${c1} Q@@@@@@@@@@j@@@@@@@@@@ %s"
- "${c1} @@@@@ T@j@ T@@@@@ %s"
- "${c1} @@@@@ ___Q@J@ _@@@@@ %s"
- "${c1} @@@@@fMMM@@j@jggg@@@@@@ %s"
- "${c1} @@@@@ j@j@^MW@P @@@@ %s"
- "${c1} Q@@@@@ggg@@f@ @@@@@@L %s"
- "${c1} ^@@@@WWMMP @ Q@@@@ %s"
- "${c1} @@@@@_ _@@@@l %s"
- "${c1} W@@@@@g_____g@@@@@P %s"
- "${c1} @@@@@@@@@@@@@@@@l %s"
- "${c1} ^W@@@@@@@@@@@P %s"
- "${c1} ^TMMMMTll %s"
- "${c1} %s")
- ;;
- "Parrot Security")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Light Blue
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="43"
- fulloutput=(
- "${c1} ,:oho/-. %s"
- "${c1} mMMMMMMMMMMMNmmdhy- %s"
- "${c1} dMMMMMMMMMMMMMMMMMMs. %s"
- "${c1} +MMsohNMMMMMMMMMMMMMm/ %s"
- "${c1} .My .+dMMMMMMMMMMMMMh. %s"
- "${c1} + :NMMMMMMMMMMMMNo %s"
- "${c1} \`yMMMMMMMMMMMMMm: %s"
- "${c1} /NMMMMMMMMMMMMMy. %s"
- "${c1} .hMMMMMMMMMMMMMN+ %s"
- "${c1} \`\`-NMMMMMMMMMd- %s"
- "${c1} /MMMMMMMMMMMs. %s"
- "${c1} mMMMMMMMsyNMN/ %s"
- "${c1} +MMMMMMMo :sNh. %s"
- "${c1} \`NMMMMMMm -o/ %s"
- "${c1} oMMMMMMM. %s"
- "${c1} \`NMMMMMM+ %s"
- "${c1} +MMd/NMh %s"
- "${c1} mMm -mN\` %s"
- "${c1} /MM \`h: %s"
- "${c1} dM\` . %s"
- "${c1} :M- %s"
- "${c1} d: %s"
- "${c1} -+ %s"
- "${c1} - %s")
- ;;
- "Amazon Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light orange') # Orange
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="40"
- fulloutput=(
- "${c1} .,:cc:,. %s"
- "${c1} .:okXWMMMMMMWXko:. %s"
- "${c1} .:kNMMMMMMMMMMMMMMMMMMNkc. %s"
- "${c1} cc,. \`':ox0XWWXOxo:'\` .,c; %s"
- "${c1} KMMMMXOdc,. '' .,cdOXWMMMO %s"
- "${c1} KMMMMMMMMMMWXO. .OXWMMMMMMMMMMO %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMO %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMO %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMO %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMO %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMO %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMk %s"
- "${c1} KMMMMMMMMMMMMM, ,MMMMMMMMMMMMMd %s"
- "${c1} \`:lx0WMMMMMMMM, ,MMMMMMMMW0xl:\` %s"
- "${c1} \`'lx0NMM, ,MMN0xc'\` %s"
- "${c1} \`'' ''\` %s")
- ;;
- "Source Mage GNU/Linux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'dark gray')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="40"
- fulloutput=(
- "${c1} "
- "${c1} -sdNMNds: %s"
- "${c1} .shmNMMMMMMNNNNh. %s"
- "${c1} \` \':sNNNNNNNNNNm- %s"
- "${c1} .NNNNNNmmmmmdo. %s"
- "${c1} -mNmmmmmmmmmmddd: %s"
- "${c1} +mmmmmmmddddddddh- %s"
- "${c1} :mmdddddddddhhhhhy. %s"
- "${c1} -ddddddhhhhhhhhyyyo %s"
- "${c1} .hyhhhhhhhyyyyyyyys: %s"
- "${c1} .\`shyyyyyyyyyssssso %s"
- "${c1} \`/yyyysssssssoooo. %s"
- "${c1} .osssssooooo+++/ %s"
- "${c1} \`:+oooo+++++///. %s"
- "${c1} \`://++//////::- %s"
- "${c1} ..-/// .//::::::--. %s"
- "${c1} \`\`\`\` \`\`\` :::--------\` %s"
- "${c1} \`------....\` %s"
- "${c1} \`.........\` %s"
- "${c1} \`......\` %s")
- ;;
- "OS Elbrus")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light blue') # Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="33"
- fulloutput=(""
- "${c1} ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ %s"
- "${c1} ██▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀██ %s"
- "${c1} ██ ██ %s"
- "${c1} ██ ███████ ███████ ██ %s"
- "${c1} ██ ██ ██ ██ ██ ██ %s"
- "${c1} ██ ██ ██ ██ ██ ██ %s"
- "${c1} ██ ██ ██ ██ ██ ██ %s"
- "${c1} ██ ██ ██ ██ ██ ██ %s"
- "${c1} ██ ██ ███████ ███████ %s"
- "${c1} ██ ██ ██ %s"
- "${c1} ██ ██▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄██ %s"
- "${c1} ██ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀██ %s"
- "${c1} ██ ██ %s"
- "${c1} ███████████████████████████ %s"
- " %s")
- ;;
- "PureOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'dark grey') # "Black"
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="44"
- fulloutput=(""
- " %s"
- "${c1} dmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmd %s"
- "${c1} dNm//////////////////////////////////mNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNd dNd %s"
- "${c1} dNm//////////////////////////////////mNd %s"
- "${c1} dmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmd %s"
- " %s")
- ;;
- "DraugerOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'red') # red
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="52"
- fulloutput=(
- "${c1} %s"
- "${c1} & & %s"
- "${c1} %( (# %s"
- "${c1} ((( ((( %s"
- "${c1} (((( (((( %s"
- "${c1} (((( (((( %s"
- "${c1} (((( (((( %s"
- "${c1} (((( (((( %s"
- "${c1} %(((( ((((% %s"
- "${c1} (((( (((( %s"
- "${c1} (((( (((( %s"
- "${c1} (((( (((( %s"
- "${c1} &(((( ((((& %s"
- "${c1} #(((( ((((# %s"
- "${c1} ((((( ((((( %s"
- "${c1} ((((# #(((( %s"
- "${c1} (# ((((((((((((((((((((((((((((((( #( %s"
- "${c1} ((((((((((((((((((((((((((((((((((( %s"
- " %s")
- ;;
- "januslinux")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # white
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="1"
- logowidth="25"
- fulloutput=(""
- " %s"
- "${c1} ________________ %s"
- "${c1} |\ \ %s"
- "${c1} | \ \ %s"
- "${c1} | \ \ %s"
- "${c1} | \ ______________\ %s"
- "${c1} | | | %s"
- "${c1} | | | %s"
- "${c1} | | | %s"
- "${c1} \ | januslinux | %s"
- "${c1} \ | | %s"
- "${c1} \ | | %s"
- "${c1} \|______________| %s"
- " %s")
- ;;
- "EndeavourOS")
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'yellow')
- c3=$(getColor 'purple')
- c5=$(getColor 'cyan')
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c3="${my_lcolor}"; c5="${my_lcolor}"; fi
- startline="1"
- logowidth="44"
- fulloutput=(""
- "${c1} +${c3}I${c5}+ %s"
- "${c1} +${c3}777${c5}+ %s"
- "${c1} +${c3}77777${c5}++ %s"
- "${c1} +${c3}7777777${c5}++ %s"
- "${c1} +${c3}7777777777${c5}++ %s"
- "${c1} ++${c3}7777777777777${c5}++ %s"
- "${c1} ++${c3}777777777777777${c5}+++ %s"
- "${c1} ++${c3}77777777777777777${c5}++++ %s"
- "${c1} ++${c3}7777777777777777777${c5}++++ %s"
- "${c1} +++${c3}777777777777777777777${c5}++++ %s"
- "${c1} ++++${c3}7777777777777777777777${c5}+++++ %s"
- "${c1} ++++${c3}77777777777777777777777${c5}+++++ %s"
- "${c1} +++++${c3}777777777777777777777777${c5}+++++ %s"
- "${c5} +++++++${c3}7777777777777777${c5}++++++ %s"
- "${c5} +++++++++++++++++++++++++++++ %s"
- "${c5} +++++++++++++++++++++++++++ %s"
- " %s"
- );;
- *)
- if [[ "${kernel}" =~ "Linux" ]]; then
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'white') # White
- c2=$(getColor 'dark grey') # Light Gray
- c3=$(getColor 'yellow') # Light Yellow
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; c2="${my_lcolor}"; c3="${my_lcolor}"; fi
- startline="0"
- logowidth="28"
- fulloutput=(
- "${c2} %s"
- "${c2} %s"
- "${c2} %s"
- "${c2} ##### %s"
- "${c2} ####### %s"
- "${c2} ##${c1}O${c2}#${c1}O${c2}## %s"
- "${c2} #${c3}#####${c2}# %s"
- "${c2} ##${c1}##${c3}###${c1}##${c2}## %s"
- "${c2} #${c1}##########${c2}## %s"
- "${c2} #${c1}############${c2}## %s"
- "${c2} #${c1}############${c2}### %s"
- "${c3} ##${c2}#${c1}###########${c2}##${c3}# %s"
- "${c3} ######${c2}#${c1}#######${c2}#${c3}###### %s"
- "${c3} #######${c2}#${c1}#####${c2}#${c3}####### %s"
- "${c3} #####${c2}#######${c3}##### %s"
- "${c2} %s"
- "${c2} %s"
- "${c2} %s")
- elif [[ "${kernel}" =~ "Hurd" || "${kernel}" =~ "GNU" || "${OSTYPE}" == "gnu" ]]; then
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'dark grey') # Light Gray
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="37"
- fulloutput=(
- "${c1} _-\`\`\`\`\`-, ,- '- . %s"
- "${c1} .' .- - | | - -. \`. %s"
- "${c1} /.' / \`. \\ %s"
- "${c1} :/ : _... ..._ \`\` : %s"
- "${c1} :: : /._ .\`:'_.._\\. || : %s"
- "${c1} :: \`._ ./ ,\` : \\ . _.'' . %s"
- "${c1} \`:. / | -. \\-. \\\\\_ / %s"
- "${c1} \\:._ _/ .' .@) \\@) \` \`\\ ,.' %s"
- "${c1} _/,--' .- .\\,-.\`--\`. %s"
- "${c1} ,'/'' (( \\ \` ) %s"
- "${c1} /'/' \\ \`-' ( %s"
- "${c1} '/'' \`._,-----' %s"
- "${c1} ''/' .,---' %s"
- "${c1} ''/' ;: %s"
- "${c1} ''/'' ''/ %s"
- "${c1} ''/''/'' %s"
- "${c1} '/'/' %s"
- "${c1} \`; %s")
- # Source: https://www.gnu.org/graphics/alternative-ascii.en.html
- # Copyright (C) 2003, Vijay Kumar
- # Permission is granted to copy, distribute and/or modify this image under the
- # terms of the GNU General Public License as published by the Free Software
- # Foundation; either version 2 of the License, or (at your option) any later
- # version.
- else
- if [[ "$no_color" != "1" ]]; then
- c1=$(getColor 'light green') # Light Green
- fi
- if [ -n "${my_lcolor}" ]; then c1="${my_lcolor}"; fi
- startline="0"
- logowidth="44"
- fulloutput=(
- "${c1} %s"
- "${c1} %s"
- "${c1} UUU UUU NNN NNN IIIII XXX XXXX%s"
- "${c1} UUU UUU NNNN NNN III XX xXX %s"
- "${c1} UUU UUU NNNNN NNN III XX xXX %s"
- "${c1} UUU UUU NNN NN NNN III XXXX %s"
- "${c1} UUU UUU NNN NN NNN III xXX %s"
- "${c1} UUU UUU NNN NN NNN III xXXXX %s"
- "${c1} UUU UUU NNN NNNNN III xXX XX %s"
- "${c1} UUUuuuUUU NNN NNNN III xXX XX %s"
- "${c1} UUUUU NNN NNN IIIII xXXx xXXx%s"
- "${c1} %s"
- "${c1} %s"
- "${c1} %s"
- "${c1} %s")
- fi
- ;;
- esac
- # Truncate lines based on terminal width.
- if [ "$truncateSet" == "Yes" ]; then
- missinglines=$((${#out_array[*]} + startline - ${#fulloutput[*]}))
- for ((i=0; i<missinglines; i++)); do
- fulloutput+=("${c1}$(printf '%*s' "$logowidth")%s")
- done
- for ((i=0; i<${#fulloutput[@]}; i++)); do
- my_out=$(printf "${fulloutput[i]}$c0\n" "${out_array}")
- my_out_full=$(echo "$my_out" | cat -v)
- termWidth=$(tput cols)
- SHOPT_EXTGLOB_STATE=$(shopt -p extglob)
- read SHOPT_CMD SHOPT_STATE SHOPT_OPT <<< "${SHOPT_EXTGLOB_STATE}"
- if [[ ${SHOPT_STATE} == "-u" ]]; then
- shopt -s extglob
- fi
- stringReal="${my_out_full//\^\[\[@([0-9]|[0-9];[0-9][0-9])m}"
- if [[ ${SHOPT_STATE} == "-u" ]]; then
- shopt -u extglob
- fi
- if [[ "${#stringReal}" -le "${termWidth}" ]]; then
- echo -e "${my_out}"$c0
- elif [[ "${#stringReal}" -gt "${termWidth}" ]]; then
- ((NORMAL_CHAR_COUNT=0))
- for ((j=0; j<=${#my_out_full}; j++)); do
- if [[ "${my_out_full:${j}:3}" == '^[[' ]]; then
- if [[ "${my_out_full:${j}:5}" =~ ^\^\[\[[[:digit:]]m$ ]]; then
- if [[ ${j} -eq 0 ]]; then
- j=$((j + 5))
- else
- j=$((j + 4))
- fi
- elif [[ "${my_out_full:${j}:8}" =~ ^\^\[\[[[:digit:]]\;[[:digit:]][[:digit:]]m ]]; then
- if [[ ${j} -eq 0 ]]; then
- j=$((j + 8))
- else
- j=$((j + 7))
- fi
- fi
- else
- ((NORMAL_CHAR_COUNT++))
- if [[ ${NORMAL_CHAR_COUNT} -ge ${termWidth} ]]; then
- echo -e "${my_out:0:$((j - 5))}"$c0
- break 1
- fi
- fi
- done
- fi
- if [[ "$i" -ge "$startline" ]]; then
- unset 'out_array[0]'
- out_array=( "${out_array[@]}" )
- fi
- done
- elif [[ "$portraitSet" = "Yes" ]]; then
- for i in "${!fulloutput[@]}"; do
- printf "${fulloutput[$i]}$c0\n"
- done
- printf "\n"
- for ((i=0; i<${#fulloutput[*]}; i++)); do
- [[ -z "$out_array[0]" ]] && continue
- printf "%s\n" "${out_array[0]}"
- unset 'out_array[0]'
- out_array=( "${out_array[@]}" )
- done
- elif [[ "$display_logo" == "Yes" ]]; then
- for i in "${!fulloutput[@]}"; do
- printf "${fulloutput[i]}$c0\n"
- done
- else
- if [[ "$lineWrap" = "Yes" ]]; then
- availablespace=$(($(tput cols) - logowidth + 16)) #I dont know why 16 but it works
- new_out_array=("${out_array[0]}")
- for ((i=1; i<${#out_array[@]}; i++)); do
- lines=$(echo "${out_array[i]}" | fmt -w $availablespace)
- IFS=$'\n' read -rd '' -a splitlines <<<"$lines"
- new_out_array+=("${splitlines[0]}")
- for ((j=1; j<${#splitlines[*]}; j++)); do
- line=$(echo -e "$labelcolor $textcolor ${splitlines[j]}")
- new_out_array=( "${new_out_array[@]}" "$line" );
- done
- done
- out_array=("${new_out_array[@]}")
- fi
- missinglines=$((${#out_array[*]} + startline - ${#fulloutput[*]}))
- for ((i=0; i<missinglines; i++)); do
- fulloutput+=("${c1}$(printf '%*s' "$logowidth")%s")
- done
- #n=${#fulloutput[*]}
- for ((i=0; i<${#fulloutput[*]}; i++)); do
- # echo "${out_array[@]}"
- case $(awk 'BEGIN{srand();print int(rand()*(1000-1))+1 }') in
- 411|188|15|166|609)
- f_size=${#fulloutput[*]}
- o_size=${#out_array[*]}
- f_max=$(( 32768 / f_size * f_size ))
- #o_max=$(( 32768 / o_size * o_size ))
- for ((a=f_size-1; a>0; a--)); do
- while (( (rand=RANDOM) >= f_max )); do :; done
- rand=$(( rand % (a+1) ))
- tmp=${fulloutput[a]} fulloutput[a]=${fulloutput[rand]} fulloutput[rand]=$tmp
- done
- for ((b=o_size-1; b>0; b--)); do
- rand=$(( rand % (b+1) ))
- tmp=${out_array[b]} out_array[b]=${out_array[rand]} out_array[rand]=$tmp
- done
- ;;
- esac
- printf "${fulloutput[i]}$c0\n" "${out_array[0]}"
- if [[ "$i" -ge "$startline" ]]; then
- unset 'out_array[0]'
- out_array=( "${out_array[@]}" )
- fi
- done
- fi
- # Done with ASCII output
- }
- infoDisplay () {
- textcolor="\033[0m"
- [[ "$my_hcolor" ]] && textcolor="${my_hcolor}"
- #TODO: Centralize colors and use them across the board so we only change them one place.
- myascii="${distro}"
- [[ "${asc_distro}" ]] && myascii="${asc_distro}"
- case ${myascii} in
- "Alpine Linux"|"Arch Linux - Old"|"ArcoLinux"|"blackPanther OS"|"Fedora"|"Korora"|"Chapeau"|"Mandriva"|"Mandrake"| \
- "Chakra"|"ChromeOS"|"Sabayon"|"Slackware"|"Mac OS X"|"macOS"|"Trisquel"|"Kali Linux"|"Jiyuu Linux"|"Antergos"| \
- "KaOS"|"Logos"|"gNewSense"|"Netrunner"|"NixOS"|"SailfishOS"|"Qubes OS"|"Kogaion"|"PCLinuxOS"| \
- "Obarun"|"Siduction"|"Solus"|"SwagArch"|"Parrot Security"|"Zorin OS"|"Uos")
- labelcolor=$(getColor 'light blue')
- ;;
- "Arch Linux"|"Arch Linux 32"|"Artix Linux"|"Frugalware"|"Mageia"|"Deepin"|"CRUX"|"OS Elbrus"|"EndeavourOS")
- labelcolor=$(getColor 'light cyan')
- ;;
- "Mint"|"LMDE"|"KDE neon"|"openSUSE"|"SUSE Linux Enterprise"|"LinuxDeepin"|"DragonflyBSD"|"Manjaro"| \
- "Manjaro-tree"|"Android"|"Void Linux"|"DesaOS")
- labelcolor=$(getColor 'light green')
- ;;
- "Ubuntu"|"FreeBSD"|"FreeBSD - Old"|"Debian"|"Raspbian"|"BSD"|"Red Hat Enterprise Linux"|"Oracle Linux"| \
- "Peppermint"|"Cygwin"|"Msys"|"Fuduntu"|"Scientific Linux"|"DragonFlyBSD"|"BackTrack Linux"|"Red Star OS"| \
- "SparkyLinux"|"OBRevenge"|"Source Mage GNU/Linux")
- labelcolor=$(getColor 'light red')
- ;;
- "ROSA"|"januslinux")
- labelcolor=$(getColor 'white')
- ;;
- "CrunchBang"|"Viperr"|"elementary"*)
- labelcolor=$(getColor 'dark grey')
- ;;
- "Gentoo"|"Parabola GNU/Linux-libre"|"Funtoo"|"Funtoo-text"|"BLAG"|"SteamOS"|"Devuan")
- labelcolor=$(getColor 'light purple')
- ;;
- "Haiku")
- labelcolor=$(getColor 'green')
- ;;
- "NetBSD"|"Amazon Linux"|"Proxmox VE")
- labelcolor=$(getColor 'orange')
- ;;
- "CentOS"|"CentOS Stream")
- labelcolor=$(getColor 'yellow')
- ;;
- "Hyperbola GNU/Linux-libre"|"PureOS"|*)
- labelcolor=$(getColor 'light grey')
- ;;
- esac
- [[ "$my_lcolor" ]] && labelcolor="${my_lcolor}"
- if [[ "$art" ]]; then
- source "$art"
- fi
- if [[ "$no_color" == "1" ]]; then
- labelcolor=""
- bold=""
- c0=""
- textcolor=""
- fi
- # Some verbosity stuff
- [[ "$screenshot" == "1" ]] && verboseOut "Screenshot will be taken after info is displayed."
- [[ "$upload" == "1" ]] && verboseOut "Screenshot will be transferred/uploaded to specified location."
- #########################
- # Info Variable Setting #
- #########################
- if [[ "${distro}" == "Android" ]]; then
- myhostname=$(echo -e "${labelcolor} ${hostname}"); out_array=( "${out_array[@]}" "$myhostname" )
- mydistro=$(echo -e "$labelcolor OS:$textcolor $distro $distro_ver"); out_array=( "${out_array[@]}" "$mydistro" )
- mydevice=$(echo -e "$labelcolor Device:$textcolor $device"); out_array=( "${out_array[@]}" "$mydevice" )
- myrom=$(echo -e "$labelcolor ROM:$textcolor $rom"); out_array=( "${out_array[@]}" "$myrom" )
- mybaseband=$(echo -e "$labelcolor Baseband:$textcolor $baseband"); out_array=( "${out_array[@]}" "$mybaseband" )
- mykernel=$(echo -e "$labelcolor Kernel:$textcolor $kernel"); out_array=( "${out_array[@]}" "$mykernel" )
- myuptime=$(echo -e "$labelcolor Uptime:$textcolor $uptime"); out_array=( "${out_array[@]}" "$myuptime" )
- mycpu=$(echo -e "$labelcolor CPU:$textcolor $cpu"); out_array=( "${out_array[@]}" "$mycpu" )
- mygpu=$(echo -e "$labelcolor GPU:$textcolor $cpu"); out_array=( "${out_array[@]}" "$mygpu" )
- mymem=$(echo -e "$labelcolor RAM:$textcolor $mem"); out_array=( "${out_array[@]}" "$mymem" )
- else
- if [[ "${display[@]}" =~ "host" ]]; then
- myinfo=$(echo -e "${labelcolor} ${myUser}$textcolor${bold}@${c0}${labelcolor}${myHost}")
- out_array=( "${out_array[@]}" "$myinfo" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "distro" ]]; then
- if [[ "$distro" == "Mac OS X" || "$distro" == "macOS" ]]; then
- sysArch="$(getconf LONG_BIT)bit"
- prodVers=$(sw_vers | grep 'ProductVersion')
- prodVers=${prodVers:16}
- buildVers=$(sw_vers |grep 'BuildVersion')
- buildVers=${buildVers:14}
- if [ -n "$distro_more" ]; then
- mydistro=$(echo -e "$labelcolor OS:$textcolor $distro_more $sysArch")
- else
- mydistro=$(echo -e "$labelcolor OS:$textcolor $sysArch $distro $prodVers $buildVers")
- fi
- elif [[ "$distro" == "Cygwin" || "$distro" == "Msys" ]]; then
- distro="$(wmic os get caption | sed 's/\r//g; s/[ \t]*$//g; 2!d')"
- if [[ "$(wmic os get version | grep -o '^10\.')" == "10." ]]; then
- distro="$distro (v$(wmic os get version | grep '^10\.' | tr -d ' '))"
- fi
- sysArch=$(wmic os get OSArchitecture | sed 's/\r//g; s/[ \t]*$//g; 2!d')
- mydistro=$(echo -e "$labelcolor OS:$textcolor $distro $sysArch")
- else
- if [ -n "$distro_more" ]; then
- mydistro=$(echo -e "$labelcolor OS:$textcolor $distro_more")
- else
- mydistro=$(echo -e "$labelcolor OS:$textcolor $distro $sysArch")
- fi
- fi
- out_array=( "${out_array[@]}" "$mydistro$wsl" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "kernel" ]]; then
- mykernel=$(echo -e "$labelcolor Kernel:$textcolor $kernel")
- out_array=( "${out_array[@]}" "$mykernel" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "uptime" ]]; then
- myuptime=$(echo -e "$labelcolor Uptime:$textcolor $uptime")
- out_array=( "${out_array[@]}" "$myuptime" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "pkgs" ]]; then
- mypkgs=$(echo -e "$labelcolor Packages:$textcolor $pkgs")
- out_array=( "${out_array[@]}" "$mypkgs" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "shell" ]]; then
- myshell=$(echo -e "$labelcolor Shell:$textcolor $myShell")
- out_array=( "${out_array[@]}" "$myshell" )
- ((display_index++))
- fi
- if [[ -n "$DISPLAY" || "$distro" == "Mac OS X" || "$distro" == "macOS" ]]; then
- if [ -n "${xResolution}" ]; then
- if [[ "${display[@]}" =~ "res" ]]; then
- myres=$(echo -e "$labelcolor Resolution:${textcolor} $xResolution")
- out_array=( "${out_array[@]}" "$myres" )
- ((display_index++))
- fi
- fi
- if [[ "${display[@]}" =~ "de" ]]; then
- if [[ "${DE}" != "Not Present" ]]; then
- myde=$(echo -e "$labelcolor DE:$textcolor $DE")
- out_array=( "${out_array[@]}" "$myde" )
- ((display_index++))
- fi
- fi
- if [[ "${display[@]}" =~ "wm" ]]; then
- mywm=$(echo -e "$labelcolor WM:$textcolor $WM")
- out_array=( "${out_array[@]}" "$mywm" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "wmtheme" ]]; then
- if [[ "${Win_theme}" != "Not Applicable" && "${Win_theme}" != "Not Found" ]]; then
- mywmtheme=$(echo -e "$labelcolor WM Theme:$textcolor $Win_theme")
- out_array=( "${out_array[@]}" "$mywmtheme" )
- ((display_index++))
- fi
- fi
- if [[ "${display[@]}" =~ "gtk" ]]; then
- if [[ "$distro" == "Mac OS X" || "$distro" == "macOS" ]]; then
- if [[ "$gtkFont" != "Not Applicable" && "$gtkFont" != "Not Found" ]]; then
- if [ -n "$gtkFont" ]; then
- myfont=$(echo -e "$labelcolor Font:$textcolor $gtkFont")
- out_array=( "${out_array[@]}" "$myfont" )
- ((display_index++))
- fi
- fi
- else
- if [[ "$gtk2Theme" != "Not Applicable" && "$gtk2Theme" != "Not Found" ]]; then
- if [ -n "$gtk2Theme" ]; then
- mygtk2="${gtk2Theme} [GTK2]"
- fi
- fi
- if [[ "$gtk3Theme" != "Not Applicable" && "$gtk3Theme" != "Not Found" ]]; then
- if [ -n "$mygtk2" ]; then
- mygtk3=", ${gtk3Theme} [GTK3]"
- else
- mygtk3="${gtk3Theme} [GTK3]"
- fi
- fi
- if [[ "$gtk_2line" == "yes" ]]; then
- mygtk2=$(echo -e "$labelcolor GTK2 Theme:$textcolor $gtk2Theme")
- out_array=( "${out_array[@]}" "$mygtk2" )
- ((display_index++))
- mygtk3=$(echo -e "$labelcolor GTK3 Theme:$textcolor $gtk3Theme")
- out_array=( "${out_array[@]}" "$mygtk3" )
- ((display_index++))
- else
- if [[ "$gtk2Theme" == "$gtk3Theme" ]]; then
- if [[ "$gtk2Theme" != "Not Applicable" && "$gtk2Theme" != "Not Found" ]]; then
- mygtk=$(echo -e "$labelcolor GTK Theme:$textcolor ${gtk2Theme} [GTK2/3]")
- out_array=( "${out_array[@]}" "$mygtk" )
- ((display_index++))
- fi
- else
- mygtk=$(echo -e "$labelcolor GTK Theme:$textcolor ${mygtk2}${mygtk3}")
- out_array=( "${out_array[@]}" "$mygtk" )
- ((display_index++))
- fi
- fi
- if [[ "$gtkIcons" != "Not Applicable" && "$gtkIcons" != "Not Found" ]]; then
- if [ -n "$gtkIcons" ]; then
- myicons=$(echo -e "$labelcolor Icon Theme:$textcolor $gtkIcons")
- out_array=( "${out_array[@]}" "$myicons" )
- ((display_index++))
- fi
- fi
- if [[ "$gtkFont" != "Not Applicable" && "$gtkFont" != "Not Found" ]]; then
- if [ -n "$gtkFont" ]; then
- myfont=$(echo -e "$labelcolor Font:$textcolor $gtkFont")
- out_array=( "${out_array[@]}" "$myfont" )
- ((display_index++))
- fi
- fi
- fi
- fi
- elif [[ "$fake_distro" == "Cygwin" || "$fake_distro" == "Msys" || "$fake_distro" == "Windows - Modern" ]]; then
- if [[ "${display[@]}" =~ "res" && -n "$xResolution" ]]; then
- myres=$(echo -e "$labelcolor Resolution:${textcolor} $xResolution")
- out_array=( "${out_array[@]}" "$myres" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "de" ]]; then
- if [[ "${DE}" != "Not Present" ]]; then
- myde=$(echo -e "$labelcolor DE:$textcolor $DE")
- out_array=( "${out_array[@]}" "$myde" )
- ((display_index++))
- fi
- fi
- if [[ "${display[@]}" =~ "wm" ]]; then
- mywm=$(echo -e "$labelcolor WM:$textcolor $WM")
- out_array=( "${out_array[@]}" "$mywm" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "wmtheme" ]]; then
- if [[ "${Win_theme}" != "Not Applicable" && "${Win_theme}" != "Not Found" ]]; then
- mywmtheme=$(echo -e "$labelcolor WM Theme:$textcolor $Win_theme")
- out_array=( "${out_array[@]}" "$mywmtheme" )
- ((display_index++))
- fi
- fi
- elif [[ "$distro" == "Haiku" && -n "${xResolution}" && "${display[@]}" =~ "res" ]]; then
- myres=$(echo -e "$labelcolor Resolution:${textcolor} $xResolution")
- out_array=( "${out_array[@]}" "$myres" )
- ((display_index++))
- fi
- if [[ "${fake_distro}" != "Cygwin" && "${fake_distro}" != "Msys" && "${fake_distro}" != "Windows - Modern" && "${display[@]}" =~ "disk" ]]; then
- mydisk=$(echo -e "$labelcolor Disk:$textcolor $diskusage")
- out_array=( "${out_array[@]}" "$mydisk" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "cpu" ]]; then
- mycpu=$(echo -e "$labelcolor CPU:$textcolor $cpu")
- out_array=( "${out_array[@]}" "$mycpu" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "gpu" ]] && [[ "$gpu" != "Not Found" ]]; then
- mygpu=$(echo -e "$labelcolor GPU:$textcolor $gpu")
- out_array=( "${out_array[@]}" "$mygpu" )
- ((display_index++))
- fi
- if [[ "${display[@]}" =~ "mem" ]]; then
- mymem=$(echo -e "$labelcolor RAM:$textcolor $mem")
- out_array=( "${out_array[@]}" "$mymem" )
- ((display_index++))
- fi
- if [[ -n "$custom_lines_string" ]]; then
- customlines
- fi
- fi
- if [[ "$display_type" == "ASCII" ]]; then
- asciiText
- else
- if [[ "${display[@]}" =~ "host" ]]; then echo -e "$myinfo"; fi
- if [[ "${display[@]}" =~ "distro" ]]; then echo -e "$mydistro"; fi
- if [[ "${display[@]}" =~ "kernel" ]]; then echo -e "$mykernel"; fi
- if [[ "${distro}" == "Android" ]]; then
- echo -e "$mydevice"
- echo -e "$myrom"
- echo -e "$mybaseband"
- echo -e "$mykernel"
- echo -e "$myuptime"
- echo -e "$mycpu"
- echo -e "$mymem"
- else
- if [[ "${display[@]}" =~ "uptime" ]]; then echo -e "$myuptime"; fi
- if [[ "${display[@]}" =~ "pkgs" && "$mypkgs" != "Unknown" ]]; then echo -e "$mypkgs"; fi
- if [[ "${display[@]}" =~ "shell" ]]; then echo -e "$myshell"; fi
- if [[ "${display[@]}" =~ "res" ]]; then
- test -z "$myres" || echo -e "$myres"
- fi
- if [[ "${display[@]}" =~ "de" ]]; then
- if [[ "${DE}" != "Not Present" ]]; then echo -e "$myde"; fi
- fi
- if [[ "${display[@]}" =~ "wm" ]]; then
- test -z "$mywm" || echo -e "$mywm"
- if [[ "${Win_theme}" != "Not Applicable" && "${Win_theme}" != "Not Found" ]]; then
- test -z "$mywmtheme" || echo -e "$mywmtheme"
- fi
- fi
- if [[ "${display[@]}" =~ "gtk" ]]; then
- if [[ "$gtk_2line" == "yes" ]]; then
- test -z "$mygtk2" || echo -e "$mygtk2"
- test -z "$mygtk3" || echo -e "$mygtk3"
- else
- test -z "$mygtk" || echo -e "$mygtk"
- fi
- test -z "$myicons" || echo -e "$myicons"
- test -z "$myfont" || echo -e "$myfont"
- fi
- if [[ "${display[@]}" =~ "disk" ]]; then echo -e "$mydisk"; fi
- if [[ "${display[@]}" =~ "cpu" ]]; then echo -e "$mycpu"; fi
- if [[ "${display[@]}" =~ "gpu" ]]; then echo -e "$mygpu"; fi
- if [[ "${display[@]}" =~ "mem" ]]; then echo -e "$mymem"; fi
- fi
- fi
- }
- ##################
- # Let's Do This!
- ##################
- if [[ -f "$HOME/.screenfetchOR" ]]; then
- source "$HOME/.screenfetchOR"
- fi
- if [[ "$overrideDisplay" ]]; then
- verboseOut "Found 'd' flag in syntax. Overriding display..."
- OLDIFS=$IFS
- IFS=';'
- for i in ${overrideDisplay}; do
- modchar="${i:0:1}"
- if [[ "${modchar}" == "-" ]]; then
- i=${i/${modchar}}
- _OLDIFS=IFS
- IFS=,
- for n in $i; do
- if [[ ! "${display[@]}" =~ "$n" ]]; then
- echo "The var $n is not currently being displayed."
- else
- for e in "${!display[@]}"; do
- if [[ ${display[e]} = "$n" ]]; then
- unset 'display[e]'
- fi
- done
- fi
- done
- IFS=$_OLDIFS
- elif [[ "${modchar}" == "+" ]]; then
- i=${i/${modchar}}
- _OLDIFS=IFS
- IFS=,
- for n in $i; do
- if [[ "${valid_display[@]}" =~ "$n" ]]; then
- if [[ "${display[@]}" =~ "$n" ]]; then
- echo "The $n var is already being displayed."
- else
- display+=("$n")
- fi
- else
- echo "The var $n is not a valid display var."
- fi
- done
- IFS=$_OLDIFS
- else
- IFS=$OLDIFS
- i="${i//,/ }"
- display=( "$i" )
- fi
- done
- IFS=$OLDIFS
- fi
- for i in "${display[@]}"; do
- if [[ -n "$i" ]]; then
- if [[ $i =~ wm ]]; then
- test -z "$WM" && detectwm
- test -z "$Win_theme" && detectwmtheme
- else
- if [[ "${display[*]}" =~ "$i" ]]; then
- if [[ "$errorSuppress" == "1" ]]; then
- detect"${i}" 2>/dev/null
- else
- detect"${i}"
- fi
- fi
- fi
- fi
- done
- # Check for android
- if [[ -f /system/build.prop && "${distro}" != "SailfishOS" ]]; then
- distro="Android"
- detectmem
- detectuptime
- detectkernel
- detectdroid
- infoDisplay
- exit 0
- fi
- if [ "$gpu" = 'Not Found' ] ; then
- DetectIntelGPU
- fi
- infoDisplay
- [ "$screenshot" == "1" ] && takeShot
- exit 0
|