diff --git a/qg-run-playbook b/qg-run-playbook new file mode 100755 index 0000000..118c8fb --- /dev/null +++ b/qg-run-playbook @@ -0,0 +1,12 @@ +#!/bin/bash + +filter=$1 + +if [ x$filter == "x" ]; then + echo "Filter angeben für -l" + exit 1 +fi + +ansible-playbook qgm_create_inventory.yml + +ansible-playbook --vault-password-file vault.pwdclear -i devices.ini -l $filter lmn-client.yml diff --git a/qgm-vars.yml b/qgm-vars.yml index 586efaa..c3be4e4 100644 --- a/qgm-vars.yml +++ b/qgm-vars.yml @@ -1,115 +1,118 @@ $ANSIBLE_VAULT;1.1;AES256 -38636431386432326666623931333535616263613164393361643336353837643134353234396632 -3131393965616666326137306462373531303133393233340a313039383837396133336130356231 -36306263646638383434343935333437363463366264333135386331636366633635653633646633 -6164346561666233340a336163363561313638663536316634633266366466343362346464376264 -34386539636537333836663135346265383635313363306164346230663638613232396333376233 -36393736343664386465303735306536316566633361396163326635666238626662613661663036 -65643430343861306438363831356337656663383066323435656165613064313633343937386139 -35336136336539363835626436663964646532366130623064396134643062363436633138353132 -36646532383463666562363139366365386231336233633661633466633030653238316638636563 -33313731393964386638393630663965626639316433663936373031623132363338666665623030 -34393237303633626138636466383962323634396265336430626162363238616361363561646438 -62636239343739376664646234333462643564626537313730383566636431366464616533363038 -30666230313465386333313639663632366562303037383539613231626637643739363237373263 -66666138353863343462373335303463323135393064316461376435303565333130346638336564 -36636638383235643339356662306535623163656663616235316364653964623235633266323762 -65656163346663383866663464396134343262323363663364306537376433633633643234336434 -31633635353733373461333231643462646462333230343738343934336437623732623162656533 -31646664623534396337366238396262653434626233616334666463616465343436306166343935 -35363437613362373632353566333534336237616366336330653331386437613966393432663436 -33663538666236316132623635623563636133366361383665653562383261396264653362643133 -63626565656465623334313261303366323733333735616339396132343630323861643734383933 -36306566393433376530396138303339316437373363386632366236366362323339386635386665 -35366333373636616133343334643363636132613961663961303463663231373332376464336438 -66636433373665616439643861366230623133643634343661613165356466396465656435613131 -62383463363534616330363837633539623837333736346636313238313838343535393264383561 -62616531313666636465376166356462366538643561343966643337626436356232656161663335 -63303936343861636461616630663439373535633566626266663036393736396431623363623736 -35396261303433663832666664333064376164613261623363663762653666663936643532373634 -37363365326139366139663439623161363862363638383761353039643563313438373062343434 -38353333363239393962613231663262316330333764633461663461613561393666386337386434 -64386265383034376534316364326262353563626539333138313435336234393963323137373830 -33303764336635373762316530633436313034666263366162643033336536666432663564326237 -34653431306139666430366365343664636263343335376565326462643331333537633339396262 -62383538633062666634386437633033613566313935386136323231633965313038616335323838 -35313535333730356433346332623763393266363166346131386262353231633139373562373938 -32346534346530376231333232663263616564313863616430376635393537356162306464623965 -64336231383136646261316630316161633135303634343032376666373763663038353564363561 -37313664366561396537653331383039666338376366366332363836643533383561643765376134 -61616337356330333738346530623036386262653966383539613130653830306135333434613031 -62636336363837386139623966613434636433396533363537353738633433333234393230323465 -63306364653332373462663531653637363362663233346139313731613736643731363939633031 -32393232613935646639373630613336626132336435626262323936353465626531316462666164 -34386463333334313935336231653430656437623034646464336233316336626639303834376561 -64666539336433333630326361336638303534393634646632643461373765373230353337343061 -62373135633333393135306436633663306433653030636162643130313335316166323564316466 -35306164323561386331323264633263643866643532366430316565346535653037646238646337 -66316238303339653335626264616164393139396262653239313562623230383463623262356363 -30643764643463373332363637356339393565343265636237626664343937383435356130333338 -32653135333433363633616636613331656431373639653934363761373062613338666366663031 -62356166373733326538386263313062656166376265653835393739656238633330343330386638 -34376130336236653762306134366130653439343764323731626563303536646531386365346239 -66396234373764643565383134396565663061646330383931333330393261643436656137383036 -34613362366434616134623037616566613832393236396331653533333965643063643133616461 -38306334306132306666376439393936653237346666353563356562303730323962333836333065 -34653630373838393339393862376136663435356266626462343361396663636531353762643832 -63306334336139333530333633313066636462663262643931356632656230663239663365663833 -61663238336664383131313932333136613636636165313732383363376436653638663638303364 -37653335316165653937343161613431336261663766303537343033393033396238333830383162 -63343739316435343838396436383762313263306236643431623735313264343533643533653230 -37306539646162633739386264343537343030663837353230373264643337633938616434306330 -31316137356562666539393033396365356630313262633836333763663037333937333262626335 -31326537653635393530316530656164386633356438313664386530643065643631323666303464 -31393664373334643962313236656133313336326536666565653237333338396136393635346538 -30376130376638656536666637326131343033326631393765623930353634356364366362396535 -35383965306463383364623565656436373164303265383063643963333237636366333037346131 -62656664316630313132303861633364363336363661333036376439613039393730623261366435 -39316262333863303461623863656338376634336637326164353565306661393132393231363437 -34376635333936633234316135313363326637616135376165376234616235396335633536646364 -35306432343531323363353366386539346335343434663331613733336265363730613839616261 -31633134653937396138633430626137336535343738656636613762313264393833376330346562 -32306463646631643533656164353266353261363132303066306231366136386434326131363761 -30373563396638343261643734616234346661383133336161323062376234366334656438336464 -31393533383630303632393539653331396235646636393233333763643438646436306464646536 -38613138346664666131353461383762626431313863636563303838613863303764303966643930 -36636339383936393730323063623362313332626233303038343136663565323263373239366162 -30323766633139323636626630306633633366616437336438663138653234636239386538353136 -31636232363061626161653938373733363865623637663037373837633165663431383932626230 -34313439616537323162666634633632393735393464323931656262376431616634333239303965 -65333334343264333437316439653035323434373533373261383031303034363539623865326634 -61616130643230306361366666613231613434313264643465616537613366336164653339643439 -39376264663164643537656339363262656634373265663761386439333636643364323335316235 -61303562303534616637376266363238666365343536383061333735333830616337373732656535 -37326164643636316432323331376333623733383434316139336365323266313935613565653838 -63316431383366313563366631383764323234313033656361393333646135633836373831643662 -38306636343865326637356537323834383435346536626637633961663561316165343963666235 -30376331623738336637366337313732663438626538633761643432636133376236636461336630 -36633964313130626136343432386137646335613937363462346262333638623765376439346336 -31353565343638623039323533346430303532313336636135643437653032356634643930616438 -34303464323638393133616164623937343837663666393139323330636134663430353933316365 -62646236323539323636363436623535343565396662356161376462313837303061373564613466 -66636663373431333663356133333961613235313963613935623934656333376434323164613635 -34353831656261643139323461356366613636373065316335343632366635633161306262316233 -64313539343461663530356533343737373434613635373732303037643839326565633236666463 -34653764346635636463623835663939663439326435356534363732323731333038643039303535 -36373233366432633637363338386235636466393333616234643261343438343866653836633333 -35613439643561323936616137643763363533623963343561663034323261356133656639633466 -36633838616664383936353663613461656364383739366639666161316462346536613938383437 -34323531623034623138313830623563373338373764666230343263393435323539633336623038 -30313033643234323133663861616134333235656165613933353630336238333861646534333737 -66323065326436333530363664323863633739616536383536636339663730646665336431353832 -35393262623736306365376330333039366435313235356235666365636131653966336337643035 -65383365656437323239353566326634303061616562663661353166363832313634643431333638 -38346264396435656465643632383864376163373830386166353937313163343366396463363665 -39316465333133663935396232326536633765356239623730393935306136303439646638303437 -63393836383063386630366262383264633533373937636632613331386163343561333964396333 -38383635376536386136613436613064383163633032613163316134303063373239343834313337 -31383539346539633038626231633230666439363638333462383266346364653435663839356366 -39313963643961353936313034616534313635643166313233633236383035626233656432376230 -33613334626534626630656231666335623636633434326265343163343731313331316636666434 -63663935333537313262303636353333326137643439316235353137396166333634313738333765 -66383035646138633435623331613234633762326536323162353564666562643433643732333331 -31363138626430353465663862383964636163366139646139323132353266623639313637386464 -39646566373538383166613266336663643539663966666332663135623132643139636666653733 -3338316136383231313530373737356530396366326236393532 +39656234333035313639336163636338323832643461643064333034623861663166376661656463 +6533356535653935316431313137373938393336656364350a336532613131393831393538656436 +66616637316139623462656133366130646533373163623362386133626135396365303564326638 +6635353366343332630a316539366361393434626662636237333863346361653436313634313331 +33653465396333393832663764343434653161353365363261343166313330613663303165613433 +64303262643635303766626436646234303730383736646139613838623836353362346534343633 +33653963333362303038353231643637346333366466366231373135373438303336393333333132 +39616562613336353331653434633139303230323830663738666163376132343064343035656138 +31343238303236303435363432336562653931616465623563386635373635613165343331316137 +66363431316165363664663934333264383766353137653738623461376430383463303863643831 +33633836333232663161626237356263633032343936626265636534666533623833306661646266 +38663163373435333934393432653739653765383164646530366463313664643138646262373866 +34616533616438623434646130376366326566343834383638386338643066313962303566353064 +31633534663932323531373462336262633138623132303530326233383661343731316130663031 +66343838623230633364653733313565303165623336343831633836386634643838663132393338 +34323964376437663162613561313434383365303238366639633763636331626232616164636564 +61353136623737633232346231363333353536306538653631323737623734666531343539653464 +64373638653433623064633535636338353835373664383566393834353865663363623333643132 +61396563623765666239343066386266383730623038366266633336396430626132633032633535 +61306637613339363536303932393730623665393935373065303664306530343263396165653566 +66663836653465656232356136333665646161646264626332616333333438346664666265616163 +62366631623132653131336163383437373961356363393233313837316362373461666665346366 +63633363666633343439613034306337393434643831633334623932323338396139393661626365 +39373035396134306538343563346434363963356234323866636532656439386537643637356131 +38376661383262353637316438353463333033386635393333666138646135316439313236353031 +33656336373730636333316538346335356134323962393862363365346365643163663436386635 +65303836343666623539383539626632353432313137336636353733366163643564376233333761 +39623139313936346333646631343932366264653061346531323639643233303933336433626537 +66646362333932393034623239343837303964373034306265303961313234366465616163616531 +66366333623932383635663937303964356336653238316666626630343435616137346162313138 +34646538346539326233303938663265326131636165333130363233343637323538646261323338 +39373063613336303534383332326565653935633165653439313964613330353466396562653931 +62323032346237663065383937373637383065373465636438366635366333373835316137633262 +33313061306439663537326637363538306566386261366162643036303231343436623866373333 +63373463366230363562363663313533343863393465376133313465346262383863613134373562 +63353064326334393434386630346633333431396137353634666330656233366162666161646366 +34316235366431373332393433356436326262306633666337343037643438326362643332323964 +63373530636637363366363336633834323834333637616236666632653130626334393465656362 +37306334393638646633663731623731623539316537346363656339333133613263323639396232 +32386539666162353561333661393266313362333338653232383437336631393962366135656161 +39383030346532643138616463646338343537653363376332393963643731646536323966666138 +35623336306430313764383732363566663232636432633438613730383139363566336639326365 +30383033656233386332343630643231326437343730306237356336376232353438396239616533 +65326565323435623663363432633235366565396261383864336562383938616439323334373261 +33393662316238353233313334363463643362373735323631613561323966333363646536353735 +64303436633962316631306436613131303631643836656131373836666235303335373537646635 +37613039313431626262323764373831313431363363363462646435663532643431633434386464 +39343765626665636663393631386565323330376137356632393238326434356363366231383237 +37623161343939353836623835643037626361353439326161613933313538666262386662623434 +62643665346563366233623663303437356636333131316365396234366363623137356264633763 +37356638613031633237383935663031633531616235616339613965303837623535386537653539 +37626131366538383262653639633139616534333734306335393731353662396561396163616135 +31313165316464656362376266616336363665396466366161326661303034633933646662326135 +39376634613966313037376133666464343134373239353131623664616534636330343263303737 +64633061396130616632323666306230623930636636653961333862393763663237353931326432 +34616235333231363330633732353732386437383338353563323935306437366334353038393532 +31633635653734366432313730333463393231366266656236646136303464643666393363656331 +30666135376263343036333533633261663832366630656233643061316665363732666439343337 +35323438363061643935333065366136656537333264353862623064633263636534393430376235 +35356238376539313732356630336337323136373634333535346131303837663039336464373362 +38643734623638633130376431323066666538616439323264366230633733323137326662316638 +34633530653936303664396563323530333863343639303834353437623161303637663130646262 +35656332356462356332393639386233383163303261353238666139326339396239306139393261 +66303136346162366330613935613861653433313133623632666665303662656265306262666239 +37396562613230316439383961646238373833393932376164366636323832663131323263363266 +66626230373530373336333439326430316531333863636161383032386634356330323832363532 +38303963333135616139323838636232633061626436313361363237386666373561353639306365 +66353763316334383537393131326631383234663063316562653665653130383135323633303964 +38326230343435636130306161653039396334643232623436383937326163363935633463663038 +66663966346532326462643937373063353934623565643832353636393830616466373233623533 +34383864346638656161653762303934656233306436643834373762666265643533366566373563 +35636332333535396439396463393630326534393965366438333436616665623838313661393333 +66623437646363626436633334613263333265336434623536343766633464306338653630336165 +37616163353335663130323261616664303736363831623830363036613065316136633662303961 +39633765353466323663373938326339363166653833363436376664653734643366373462366164 +33336261613439393830396238663266666438366334326461316363633066643136343365616538 +62663632393036663634336233653935303661653333393237343031626563333832653666353366 +62666432376664343930396235636539393962313231346234303664666438383963346234636438 +39333332656238333638333535336364396433396161356634373431396239356133303766363363 +64636539336137363834636363663831663838386161333935663139666332343062613732373637 +33363033333431663331613439646662326238313265353830386135626362393731333539303737 +34623539356330383031393033346633333732326266326634323465643836353462346162353534 +35343430336265343130613237346338306364653138376561633065653065653737316463393535 +34303838366464656662306261393030383962356466643735653132353135623962643535353934 +32653938396363316435646131623130383632623734356432303262356434613666323633656462 +62393939666364646364353934383361366264386635646130656166623134366531373134653561 +66326431636264623866633233653538363234636661323932633834313137316635633339666635 +32316634323637396565313265386333653735326536653038643638623035366261326564323437 +34316432306332396535653236323439353763356466623766303132643037383632653532376562 +61306264393230356637663964393332383563313733366132666665333535383730323566643037 +31303138313236353338303663303830653763663363626339663834303262626634323431346432 +30356338303230303134373034616639363566613331356230303038313362373331343635313534 +38653131623433663630333234386661623435313036306136666133626236646537353666363537 +32616366383661363563333538656137623735626462363862613066366132363165316265366436 +31323839313135323861346638396635383730336364626634376232326631396333623362376331 +64363136646233663538343234366239313738663238363732663761333938366464356466623034 +39316665636237633465356563333366353639646363643739306435343536643839333739313333 +34363637626538316532376331356430666232353762323134373065386537326239383464313264 +34663938313432323962353863386631653662653066383364653639353461626137373262336461 +38323030303964616435386562653338303163303964353863663733333232326336323732326563 +66353866323932616231613439643133626135653265653835353362656664656237613734366263 +61336533323865663330636464383962326638626530333661363632383031663230336532313263 +61373664386564653238313437663332363537363139666634313939333730663966383732343637 +64353339313439616562323333336263646530366631363165306365376365626137613532313533 +38656531663935376538633431366134393033343061633138373235616635386437653237643237 +33626431613338653761393465306466626661303435363030313165636166386664313439346266 +38356132353263646166353466346439663166396163323939333863663238336466636433383763 +61616339656366346636343034326433323463363237643861313330636134383139313364303332 +33653139633430663865323036376233613031643739306236393134343162363833626266643161 +35613236343730373266626632616633333035326633373562353062363034636263353361336464 +33326136616262333465656438613932336335623837653666613930663363376432633434326635 +38653636373130663035363530613931653964386366323731363738346632616335346137303437 +38613437653731663461343736303361363235333431306635313430643139636331633438663839 +39373832366363353936633263643038393761393332306434386165393938343363633731376431 +39363036626331353839356561303264396430323238643031646638653662366266326530613938 +63633931393935613832343361383834396461316538386637613065316537323562626438396564 +6431 diff --git a/qgm_create_inventory.yml b/qgm_create_inventory.yml new file mode 100644 index 0000000..a4b8625 --- /dev/null +++ b/qgm_create_inventory.yml @@ -0,0 +1,25 @@ +--- +# Dieses Playbook holt die devices.csv vom Schulserver +# und baut daraus ein ansible inventory +# Damit das geht, muss der ansible Benutzer des netboot-Servers +# die devices.csv per scp vom Server holen können +# - Frank Schiebel, 09/2023 +- hosts: localhost + gather_facts: false + become: false + vars: + csv_hosts: "{{ out.stdout_lines|map('split', ';')|groupby('0') }}" + ini_hosts: | + {% for group in csv_hosts %} + [{{ group.0 }}] + {% for line in group.1 %} + {{ line[1] }} mac={{ line[3] }} ip={{ line[4] }} type={{ line[8] }} pxe={{ line[10] }} + {% endfor %} + {% endfor %} + tasks: + - shell: scp linuxadmin@server:/etc/linuxmuster/sophomorix/default-school/devices.csv . + - shell: cat devices.csv | grep -v ^# | grep -v ^$ + register: out + - copy: + dest: devices.ini + content: "{{ ini_hosts }}" diff --git a/roles/custom/qg-software/files/qg.appimage.ArduinoIDE2.desktop b/roles/custom/qg-arduino2/files/qg.appimage.ArduinoIDE2.desktop similarity index 100% rename from roles/custom/qg-software/files/qg.appimage.ArduinoIDE2.desktop rename to roles/custom/qg-arduino2/files/qg.appimage.ArduinoIDE2.desktop diff --git a/roles/custom/qg-software/files/start-arduino2-appimage b/roles/custom/qg-arduino2/files/start-arduino2-appimage similarity index 100% rename from roles/custom/qg-software/files/start-arduino2-appimage rename to roles/custom/qg-arduino2/files/start-arduino2-appimage diff --git a/roles/custom/qg-arduino2/tasks/main.yml b/roles/custom/qg-arduino2/tasks/main.yml new file mode 100644 index 0000000..ec2bcc9 --- /dev/null +++ b/roles/custom/qg-arduino2/tasks/main.yml @@ -0,0 +1,58 @@ +--- +######## +# Arduino2 AppImage +# +- name: Make sure target dir exists + ansible.builtin.file: + path: /opt/appimages/arduino2/ + state: directory + recurse: yes + owner: root + group: root + mode: '0755' + +- name: Make sure lib dir for template exists + ansible.builtin.file: + path: /var/lib/arduino2 + state: directory + recurse: yes + owner: root + group: root + mode: '0755' + +- name: Download Arduino2 AppImage from Cache + ansible.builtin.get_url: + url: "{{ mirror_appimage }}/ArduinoIDE2.AppImage" + dest: /opt/appimages/arduino2/ArduinoIDE2.AppImage + mode: '0755' + environment: + http_proxy: '' + +- name: Copy desktop arduino2 starter file to target + copy: + src: files/qg.appimage.ArduinoIDE2.desktop + dest: /usr/share/applications/qg.appimage.ArduinoIDE2.desktop + mode: '0644' + owner: root + group: root + +- name: Copy arduino Appimage start Script to target + copy: + src: files/start-arduino2-appimage + dest: /opt/appimages/arduino2/start-arduino2-appimage + mode: '0755' + owner: root + group: root + +- name: Delete arduino15 template + ansible.builtin.file: + state: absent + path: /var/lib/arduino2/template + +- name: Extract up to date arduino15 template to target + ansible.builtin.unarchive: + src: "{{ mirror_appimage }}/ArduinoIDE2-template.zip" + dest: /var/lib/arduino2/ + remote_src: yes + environment: + http_proxy: '' diff --git a/roles/custom/qg-base/tasks/base.yml b/roles/custom/qg-base/tasks/base.yml index 931d6f0..3e5ddeb 100644 --- a/roles/custom/qg-base/tasks/base.yml +++ b/roles/custom/qg-base/tasks/base.yml @@ -91,6 +91,21 @@ state: absent +####### +# Uninstall KDE-Connect +- name: Uninstall KDE Connect + apt: + name: kdeconnect + state: absent + + +####### +# Uninstall FreeCAD debian package +- name: Uninstall FreeCAD debian package + apt: + name: freecad + state: absent + ######### # Das Skript, das beim Userlogin ausgeführt wird # Setzt derzeit nur den Hintergrund zurück - nicht bei der diff --git a/roles/custom/qg-software/files/qg.appimage.FreeCAD.desktop b/roles/custom/qg-flatpaks/files/qg.appimage.FreeCAD.desktop similarity index 100% rename from roles/custom/qg-software/files/qg.appimage.FreeCAD.desktop rename to roles/custom/qg-flatpaks/files/qg.appimage.FreeCAD.desktop diff --git a/roles/custom/qg-flatpaks/files/start-arduino2-appimage b/roles/custom/qg-flatpaks/files/start-arduino2-appimage new file mode 100755 index 0000000..8613c89 --- /dev/null +++ b/roles/custom/qg-flatpaks/files/start-arduino2-appimage @@ -0,0 +1,16 @@ +echo "---------------------" +cachedir=/var/cache/user/${KDE_SESSION_UID}/arduino15 +echo "Cachedir: $cachedir" +echo "---------------------" +template=/var/lib/arduino2/template +arduinoAppimage=/opt/appimages/arduino2/ArduinoIDE2.AppImage + +mkdir -p $cachedir + +rsync -avr --delete $template/ $cachedir/ > /dev/null 2>&1 +rm -rf ${HOME}/.arduino15 +ln -s $cachedir ${HOME}/.arduino15 + +$arduinoAppimage $1 & + + diff --git a/roles/custom/qg-flatpaks/tasks/main.yml b/roles/custom/qg-flatpaks/tasks/main.yml new file mode 100644 index 0000000..c496aa7 --- /dev/null +++ b/roles/custom/qg-flatpaks/tasks/main.yml @@ -0,0 +1,47 @@ +--- +######## +# Install flatpack debvian package +- name: Install flatpack debian package + apt: + name: flatpak + state: latest + environment: + http_proxy: '' + +######## +# Flathub repo hinzufügen +- name: Add the flathub flatpak repository remote to the user installation + community.general.flatpak_remote: + name: flathub + state: present + flatpakrepo_url: https://dl.flathub.org/repo/flathub.flatpakrepo + method: system + + +###### +# Qrca +- name: Install Qrca + community.general.flatpak: + name: org.kde.qrca + remote: flathub + method: system + state: present + +###### +# PrusaSlicer +- name: Install Prusa Slicer + community.general.flatpak: + name: com.prusa3d.PrusaSlicer + remote: flathub + method: system + state: present + +###### +# Cryptomator Flatpak +- name: Install Cryptomator + community.general.flatpak: + name: org.cryptomator.Cryptomator + remote: flathub + method: system + state: present + diff --git a/roles/custom/qg-freecad/files/qg.appimage.FreeCAD.desktop b/roles/custom/qg-freecad/files/qg.appimage.FreeCAD.desktop new file mode 100644 index 0000000..dfb3dc0 --- /dev/null +++ b/roles/custom/qg-freecad/files/qg.appimage.FreeCAD.desktop @@ -0,0 +1,19 @@ +[Desktop Entry] +Name=FreeCAD Appimage +Name[de]=FreeCAD Appimage +Name[pl]=FreeCAD Appimage +Name[ru]=FreeCAD Appimage +Comment=Feature based Parametric Modeler Appimage +Comment[de]=Feature-basierter parametrischer Modellierer Appimage +Comment[ru]=Система автоматизированного проектирования Appimage +GenericName=CAD Application Appimage +GenericName[de]=CAD-Anwendung Appimage +GenericName[pl]=Aplikacja CAD Appimage +GenericName[ru]=Система автоматизированного проектирования Appimage +Exec=/opt/appimages/freecad/FreeCAD.AppImage - --single-instance %F +Terminal=false +Type=Application +Icon=org.freecadweb.FreeCAD +Categories=Graphics;Science;Education;Engineering; +StartupNotify=true +MimeType=application/x-extension-fcstd;model/obj;model/iges;image/vnd.dwg;image/vnd.dxf;model/vnd.collada+xml;application/iges;model/iges;model/step;model/step+zip;model/stl;application/vnd.shp;model/vrml; diff --git a/roles/custom/qg-freecad/files/start-arduino2-appimage b/roles/custom/qg-freecad/files/start-arduino2-appimage new file mode 100755 index 0000000..8613c89 --- /dev/null +++ b/roles/custom/qg-freecad/files/start-arduino2-appimage @@ -0,0 +1,16 @@ +echo "---------------------" +cachedir=/var/cache/user/${KDE_SESSION_UID}/arduino15 +echo "Cachedir: $cachedir" +echo "---------------------" +template=/var/lib/arduino2/template +arduinoAppimage=/opt/appimages/arduino2/ArduinoIDE2.AppImage + +mkdir -p $cachedir + +rsync -avr --delete $template/ $cachedir/ > /dev/null 2>&1 +rm -rf ${HOME}/.arduino15 +ln -s $cachedir ${HOME}/.arduino15 + +$arduinoAppimage $1 & + + diff --git a/roles/custom/qg-freecad/tasks/main.yml b/roles/custom/qg-freecad/tasks/main.yml new file mode 100644 index 0000000..6b486ab --- /dev/null +++ b/roles/custom/qg-freecad/tasks/main.yml @@ -0,0 +1,28 @@ +--- +######## +# FreeCAD AppImage +# +- name: Make sure target dir exists + ansible.builtin.file: + path: /opt/appimages/freecad/ + state: directory + recurse: yes + owner: root + group: root + mode: '0755' + +- name: Download FreeCAD AppImage from Cache + ansible.builtin.get_url: + url: "{{ mirror_appimage }}/FreeCAD.AppImage" + dest: /opt/appimages/freecad/FreeCAD.AppImage + mode: '0755' + environment: + http_proxy: '' + +- name: Copy desktop freecad starter file to target + copy: + src: files/qg.appimage.FreeCAD.desktop + dest: /usr/share/applications/qg.appimage.FreeCAD.desktop + mode: '0644' + owner: root + group: root diff --git a/roles/custom/qg-javadev/tasks/main.yml b/roles/custom/qg-javadev/tasks/main.yml new file mode 100644 index 0000000..d971f65 --- /dev/null +++ b/roles/custom/qg-javadev/tasks/main.yml @@ -0,0 +1,29 @@ +--- +######### +# Greenfoot und BlueJ. + +- name: Determine installed bluej version + shell: "dpkg -l bluej 2> /dev/null | grep ii | awk '{print $3}'" + register: command_output +- set_fact: + bluej_installed_version: "{{ command_output.stdout }}" + +- name: Determine installed greenfoot version + shell: "dpkg -l greenfoot 2> /dev/null | grep ii | awk '{print $3}'" + register: command_output +- set_fact: + greenfoot_installed_version: "{{ command_output.stdout }}" + +- name: Install bluej if necessary + ansible.builtin.apt: + deb: "{{ mirror_javadev }}/bluej-{{ bluej_target_version }}.deb" + when: (mirror_javadev is defined and mirror_javadev | length > 0) and + (bluej_target_version is defined and bluej_target_version | length > 0 ) and + (bluej_installed_version != bluej_target_version ) + +- name: Install greenfoot if necessary + ansible.builtin.apt: + deb: "{{ mirror_javadev }}/greenfoot-{{ greenfoot_target_version }}.deb" + when: (mirror_javadev is defined and mirror_javadev | length > 0) and + (greenfoot_target_version is defined and greenfoot_target_version | length > 0 ) and + (greenfoot_installed_version != greenfoot_target_version ) diff --git a/roles/custom/qg-software/files/logseq.png b/roles/custom/qg-software/files/logseq.png deleted file mode 100644 index 7b12837..0000000 Binary files a/roles/custom/qg-software/files/logseq.png and /dev/null differ diff --git a/roles/custom/qg-software/files/prusaslicer.png b/roles/custom/qg-software/files/prusaslicer.png deleted file mode 100644 index a667be3..0000000 Binary files a/roles/custom/qg-software/files/prusaslicer.png and /dev/null differ diff --git a/roles/custom/qg-software/files/qg.appimage.Logseq.desktop b/roles/custom/qg-software/files/qg.appimage.Logseq.desktop deleted file mode 100644 index ac85aa7..0000000 --- a/roles/custom/qg-software/files/qg.appimage.Logseq.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Name=Logseq -Comment=Logseq for Desktop -Exec=/opt/appimages/logseq/Logseq.AppImage $SANDBOXPARAM %u -Icon=logseq -StartupWMClass=undefined -Type=Application -Categories=Office; -MimeType=x-scheme-handler/logseq;text/html; diff --git a/roles/custom/qg-software/files/qg.appimage.PrusaSlicer.desktop b/roles/custom/qg-software/files/qg.appimage.PrusaSlicer.desktop deleted file mode 100644 index 3530f51..0000000 --- a/roles/custom/qg-software/files/qg.appimage.PrusaSlicer.desktop +++ /dev/null @@ -1,13 +0,0 @@ -[Desktop Entry] -Name=Prusa Slicer Appimage -Name[de]=Prusa Slicer Appimage -Name[pl]=Prusa Slicer Appimage -Comment=Slicer for 3d Printing -GenericName=Slicing App Image -Exec=/opt/appimages/prusaslicer/PrusaSlicer.AppImage -Terminal=false -Type=Application -Icon=prusaslicer -Categories=Graphics;Science;Education;Engineering; -StartupNotify=true -MimeType=application/x-extension-fcstd;model/obj;model/iges;image/vnd.dwg;image/vnd.dxf;model/vnd.collada+xml;application/iges;model/iges;model/step;model/step+zip;model/stl;application/vnd.shp;model/vrml; diff --git a/roles/custom/qg-software/tasks/install.yml b/roles/custom/qg-software/tasks/install.yml deleted file mode 100644 index 22645c6..0000000 --- a/roles/custom/qg-software/tasks/install.yml +++ /dev/null @@ -1,210 +0,0 @@ ---- -######### -# Greenfoot und BlueJ. - -- name: Determine installed bluej version - shell: "dpkg -l bluej 2> /dev/null | grep ii | awk '{print $3}'" - register: command_output -- set_fact: - bluej_installed_version: "{{ command_output.stdout }}" - -- name: Determine installed greenfoot version - shell: "dpkg -l greenfoot 2> /dev/null | grep ii | awk '{print $3}'" - register: command_output -- set_fact: - greenfoot_installed_version: "{{ command_output.stdout }}" - -- name: Install bluej if necessary - ansible.builtin.apt: - deb: "{{ mirror_javadev }}/bluej-{{ bluej_target_version }}.deb" - when: (mirror_javadev is defined and mirror_javadev | length > 0) and - (bluej_target_version is defined and bluej_target_version | length > 0 ) and - (bluej_installed_version != bluej_target_version ) - -- name: Install greenfoot if necessary - ansible.builtin.apt: - deb: "{{ mirror_javadev }}/greenfoot-{{ greenfoot_target_version }}.deb" - when: (mirror_javadev is defined and mirror_javadev | length > 0) and - (greenfoot_target_version is defined and greenfoot_target_version | length > 0 ) and - (greenfoot_installed_version != greenfoot_target_version ) - -######## -# FreeCAD AppImage -# -- name: Make sure target dir exists - ansible.builtin.file: - path: /opt/appimages/freecad/ - state: directory - recurse: yes - owner: root - group: root - mode: '0755' - -- name: Download FreeCAD AppImage from Cache - ansible.builtin.get_url: - url: "{{ mirror_appimage }}/FreeCAD.AppImage" - dest: /opt/appimages/freecad/FreeCAD.AppImage - mode: '0755' - environment: - http_proxy: '' - -- name: Copy desktop freecad starter file to target - copy: - src: files/qg.appimage.FreeCAD.desktop - dest: /usr/share/applications/qg.appimage.FreeCAD.desktop - mode: '0644' - owner: root - group: root - -######## -# Arduino2 AppImage -# -- name: Make sure target dir exists - ansible.builtin.file: - path: /opt/appimages/arduino2/ - state: directory - recurse: yes - owner: root - group: root - mode: '0755' - -- name: Make sure lib dir for template exists - ansible.builtin.file: - path: /var/lib/arduino2 - state: directory - recurse: yes - owner: root - group: root - mode: '0755' - -- name: Download Arduino2 AppImage from Cache - ansible.builtin.get_url: - url: "{{ mirror_appimage }}/ArduinoIDE2.AppImage" - dest: /opt/appimages/arduino2/ArduinoIDE2.AppImage - mode: '0755' - environment: - http_proxy: '' - -- name: Copy desktop arduino2 starter file to target - copy: - src: files/qg.appimage.ArduinoIDE2.desktop - dest: /usr/share/applications/qg.appimage.ArduinoIDE2.desktop - mode: '0644' - owner: root - group: root - -- name: Copy arduino Appimage start Script to target - copy: - src: files/start-arduino2-appimage - dest: /opt/appimages/arduino2/start-arduino2-appimage - mode: '0755' - owner: root - group: root - -- name: Delete arduino15 template - ansible.builtin.file: - state: absent - path: /var/lib/arduino2/template - -- name: Extract up to date arduino15 template to target - ansible.builtin.unarchive: - src: "{{ mirror_appimage }}/ArduinoIDE2-template.zip" - dest: /var/lib/arduino2/ - remote_src: yes - environment: - http_proxy: '' - -######## -# Prusa Slicer AppImage -# -- name: Make sure target dir exists - ansible.builtin.file: - path: /opt/appimages/prusaslicer/ - state: directory - recurse: yes - owner: root - group: root - mode: '0755' - -- name: Download PrusaSlicer AppImage from Cache - ansible.builtin.get_url: - url: "{{ mirror_appimage }}/PrusaSlicer.AppImage" - dest: /opt/appimages/prusaslicer/PrusaSlicer.AppImage - mode: '0755' - environment: - http_proxy: '' - -- name: Copy desktop PrusaSlicer starter file to target - copy: - src: files/qg.appimage.PrusaSlicer.desktop - dest: /usr/share/applications/qg.appimage.PrusaSlicer.desktop - mode: '0644' - owner: root - -- name: Copy desktop Prusaslicer icon file to target - copy: - src: files/prusaslicer.png - dest: /usr/share/icons/prusaslicer.png - mode: '0644' - owner: root - group: root - group: root - - -######## -# Logseq AppImage -# -- name: Make sure target dir for logseq exists - ansible.builtin.file: - path: /opt/appimages/logseq/ - state: directory - recurse: yes - owner: root - group: root - mode: '0755' - -- name: Download logseq AppImage from Cache - ansible.builtin.get_url: - url: "{{ mirror_appimage }}/Logseq.AppImage" - dest: /opt/appimages/logseq/Logseq.AppImage - mode: '0755' - environment: - http_proxy: '' - -- name: Copy desktop logseq starter file to target - copy: - src: files/qg.appimage.Logseq.desktop - dest: /usr/share/applications/qg.appimage.Logseq.desktop - mode: '0644' - owner: root - group: root - -- name: Copy desktop logseq icon file to target - copy: - src: files/logseq.png - dest: /usr/share/icons/logseq.png - mode: '0644' - owner: root - group: root - -######## -# Digital als tarpack -# -- name: Unpack digital.zip to target - ansible.builtin.unarchive: - src: "{{ tarpack_digital }}" - dest: / - remote_src: yes - when: tarpack_digital is defined and tarpack_digital | length > 0 - environment: - http_proxy: '' - - -####### -# Scratch -- name: Install scratch - ansible.builtin.apt: - deb: "{{ mirror_debs }}/{{ scratch_install_name }}" - environment: - http_proxy: '' - diff --git a/roles/custom/qg-software/tasks/main.yml b/roles/custom/qg-software/tasks/main.yml deleted file mode 100644 index ad5591a..0000000 --- a/roles/custom/qg-software/tasks/main.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -- name: Install additional software - import_tasks: - file: install.yml - -- name: Remove unwanted software - import_tasks: - file: remove.yml diff --git a/roles/custom/qg-software/tasks/remove.yml b/roles/custom/qg-software/tasks/remove.yml deleted file mode 100644 index cb3f726..0000000 --- a/roles/custom/qg-software/tasks/remove.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -####### -# Uninstall KDE-Connect -- name: Uninstall KDe Connect - apt: - name: kdeconnect - state: absent - diff --git a/roles/lmn_tmpfixes/tasks/main.yml b/roles/lmn_tmpfixes/tasks/main.yml index 4adf52c..0c37985 100644 --- a/roles/lmn_tmpfixes/tasks/main.yml +++ b/roles/lmn_tmpfixes/tasks/main.yml @@ -56,5 +56,5 @@ install rxrpc /bin/false mode: '0644' -- name: Set VM permissions - ansible.builtin.command: chmod -R o+r /lmn/vm +#- name: Set VM permissions +## ansible.builtin.command: chmod -R o+r /lmn/vm