From da1addc08cc97fb121d1902d6640e29c3f40c130 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 13:17:55 +0100 Subject: [PATCH 01/25] Init puppet setup --- manifests/main.pp | 3 +++ modules/yaourt/manifests/init.pp | 7 +++++++ 2 files changed, 10 insertions(+) create mode 100644 manifests/main.pp create mode 100644 modules/yaourt/manifests/init.pp diff --git a/manifests/main.pp b/manifests/main.pp new file mode 100644 index 0000000..fa64d55 --- /dev/null +++ b/manifests/main.pp @@ -0,0 +1,3 @@ +node default { + include yaourt +} diff --git a/modules/yaourt/manifests/init.pp b/modules/yaourt/manifests/init.pp new file mode 100644 index 0000000..7f1b32d --- /dev/null +++ b/modules/yaourt/manifests/init.pp @@ -0,0 +1,7 @@ +class yaourt { + package {[ + "firefox-beta" + ]: + ensure => latest + } +} From 4a75580212c38dc269c4983a6379b4543a252807 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 13:20:06 +0100 Subject: [PATCH 02/25] Add deploy script --- deploy.sh | 3 +++ 1 file changed, 3 insertions(+) create mode 100755 deploy.sh diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 0000000..cb3563c --- /dev/null +++ b/deploy.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +sudo puppet apply manifests/main.pp --modulepath=modules/ From 2617c557ba759bfe6b34803cbb54e0739bfbe506 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:01:40 +0100 Subject: [PATCH 03/25] Split packages --- modules/yaourt/manifests/init.pp | 8 +++----- modules/yaourt/manifests/keys.pp | 15 +++++++++++++++ modules/yaourt/manifests/packages.pp | 7 +++++++ 3 files changed, 25 insertions(+), 5 deletions(-) create mode 100644 modules/yaourt/manifests/keys.pp create mode 100644 modules/yaourt/manifests/packages.pp diff --git a/modules/yaourt/manifests/init.pp b/modules/yaourt/manifests/init.pp index 7f1b32d..47b70d7 100644 --- a/modules/yaourt/manifests/init.pp +++ b/modules/yaourt/manifests/init.pp @@ -1,7 +1,5 @@ class yaourt { - package {[ - "firefox-beta" - ]: - ensure => latest - } + include 'yaourt::packages' + + include 'yaourt::keys' } diff --git a/modules/yaourt/manifests/keys.pp b/modules/yaourt/manifests/keys.pp new file mode 100644 index 0000000..e30903f --- /dev/null +++ b/modules/yaourt/manifests/keys.pp @@ -0,0 +1,15 @@ +class yaourt::keys () { + exec { '/usr/bin/gpg --recv-keys F7E48EDB': + user => 'jake' + } + + exec { '/usr/bin/pacman-key -r 962DDE58': + } + + exec { '/usr/bin/pacman-key --lsign-key 962DDE58': + } + + exec { '/usr/bin/gpg --keyserver pool.sks-keyservers.net --recv-keys 2E1AC68ED40814E0': + user => 'jake' + } +} diff --git a/modules/yaourt/manifests/packages.pp b/modules/yaourt/manifests/packages.pp new file mode 100644 index 0000000..741a9c1 --- /dev/null +++ b/modules/yaourt/manifests/packages.pp @@ -0,0 +1,7 @@ +class yaourt::packages () { + package {[ + 'firefox' + ]: + ensure => latest + } +} From b296c4244bb52753e52802ea5536bc745308a1a5 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:09:26 +0100 Subject: [PATCH 04/25] Add pacman conf --- {yaourt => modules/yaourt/files}/pacman.conf | 0 modules/yaourt/manifests/init.pp | 5 +++++ 2 files changed, 5 insertions(+) rename {yaourt => modules/yaourt/files}/pacman.conf (100%) diff --git a/yaourt/pacman.conf b/modules/yaourt/files/pacman.conf similarity index 100% rename from yaourt/pacman.conf rename to modules/yaourt/files/pacman.conf diff --git a/modules/yaourt/manifests/init.pp b/modules/yaourt/manifests/init.pp index 47b70d7..f52ee41 100644 --- a/modules/yaourt/manifests/init.pp +++ b/modules/yaourt/manifests/init.pp @@ -2,4 +2,9 @@ class yaourt { include 'yaourt::packages' include 'yaourt::keys' + + file { '/etc/pacman.conf': + ensure => file, + source => 'puppet:///modules/yaourt/pacman.conf' + } } From 557a0a8b4b128181d681b7001f6acc362c00c9a1 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:19:55 +0100 Subject: [PATCH 05/25] Add package management config files --- {yaourt => modules/yaourt/files}/.yaourtrc | 0 modules/yaourt/manifests/files.pp | 14 ++++++++++++++ modules/yaourt/manifests/init.pp | 5 +---- 3 files changed, 15 insertions(+), 4 deletions(-) rename {yaourt => modules/yaourt/files}/.yaourtrc (100%) create mode 100644 modules/yaourt/manifests/files.pp diff --git a/yaourt/.yaourtrc b/modules/yaourt/files/.yaourtrc similarity index 100% rename from yaourt/.yaourtrc rename to modules/yaourt/files/.yaourtrc diff --git a/modules/yaourt/manifests/files.pp b/modules/yaourt/manifests/files.pp new file mode 100644 index 0000000..97700d6 --- /dev/null +++ b/modules/yaourt/manifests/files.pp @@ -0,0 +1,14 @@ +class yaourt::files () { + file { '/etc/pacman.conf': + ensure => file, + source => 'puppet:///modules/yaourt/pacman.conf' + } + + file { '/home/jake/.yaourtrc': + ensure => file, + mode => "0644", + owner => "jake", + group => "users", + source => 'puppet:///modules/yaourt/.yaourtrc' + } +} diff --git a/modules/yaourt/manifests/init.pp b/modules/yaourt/manifests/init.pp index f52ee41..ca158a4 100644 --- a/modules/yaourt/manifests/init.pp +++ b/modules/yaourt/manifests/init.pp @@ -3,8 +3,5 @@ class yaourt { include 'yaourt::keys' - file { '/etc/pacman.conf': - ensure => file, - source => 'puppet:///modules/yaourt/pacman.conf' - } + include 'yaourt::files' } From d724d34b62bc4e1078cccb96963917ff9e011eb4 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:36:10 +0100 Subject: [PATCH 06/25] Add config for nautilus tempalates --- .../gnome/files}/Templates/Empty HTML File | 0 .../gnome/files}/Templates/Empty Node Script | 0 .../gnome/files}/Templates/Empty Python File | 0 .../gnome/files}/Templates/Empty Shell Script | 0 .../gnome/files}/Templates/Empty Text File | 0 modules/gnome/manifests/init.pp | 10 ++++++++++ 6 files changed, 10 insertions(+) rename {gnome => modules/gnome/files}/Templates/Empty HTML File (100%) rename {gnome => modules/gnome/files}/Templates/Empty Node Script (100%) rename {gnome => modules/gnome/files}/Templates/Empty Python File (100%) rename {gnome => modules/gnome/files}/Templates/Empty Shell Script (100%) rename {gnome => modules/gnome/files}/Templates/Empty Text File (100%) create mode 100644 modules/gnome/manifests/init.pp diff --git a/gnome/Templates/Empty HTML File b/modules/gnome/files/Templates/Empty HTML File similarity index 100% rename from gnome/Templates/Empty HTML File rename to modules/gnome/files/Templates/Empty HTML File diff --git a/gnome/Templates/Empty Node Script b/modules/gnome/files/Templates/Empty Node Script similarity index 100% rename from gnome/Templates/Empty Node Script rename to modules/gnome/files/Templates/Empty Node Script diff --git a/gnome/Templates/Empty Python File b/modules/gnome/files/Templates/Empty Python File similarity index 100% rename from gnome/Templates/Empty Python File rename to modules/gnome/files/Templates/Empty Python File diff --git a/gnome/Templates/Empty Shell Script b/modules/gnome/files/Templates/Empty Shell Script similarity index 100% rename from gnome/Templates/Empty Shell Script rename to modules/gnome/files/Templates/Empty Shell Script diff --git a/gnome/Templates/Empty Text File b/modules/gnome/files/Templates/Empty Text File similarity index 100% rename from gnome/Templates/Empty Text File rename to modules/gnome/files/Templates/Empty Text File diff --git a/modules/gnome/manifests/init.pp b/modules/gnome/manifests/init.pp new file mode 100644 index 0000000..4afe9f9 --- /dev/null +++ b/modules/gnome/manifests/init.pp @@ -0,0 +1,10 @@ +class gnome { + file { '/home/jake/Templates': + ensure => directory, + source => 'puppet:///modules/gnome/Templates', + owner => "jake", + group => "users", + mode => "0755", + recurse => remote + } +} From d377e310df8a37d1a3d51f813cba1e3c2ca858b1 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:40:09 +0100 Subject: [PATCH 07/25] Show battery percentage in gnome --- modules/gnome/manifests/init.pp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/gnome/manifests/init.pp b/modules/gnome/manifests/init.pp index 4afe9f9..d9820ce 100644 --- a/modules/gnome/manifests/init.pp +++ b/modules/gnome/manifests/init.pp @@ -7,4 +7,9 @@ class gnome { mode => "0755", recurse => remote } + + exec { 'show battery percentage': + user => "jake", + command => '/usr/bin/gsettings set org.gnome.desktop.interface show-battery-percentage true' + } } From 2269db06866dd46274ada8e8101eaef57009f674 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:43:35 +0100 Subject: [PATCH 08/25] Add basic path --- manifests/main.pp | 5 +++++ modules/gnome/manifests/init.pp | 2 +- modules/yaourt/manifests/keys.pp | 8 ++++---- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/manifests/main.pp b/manifests/main.pp index fa64d55..ea4e52d 100644 --- a/manifests/main.pp +++ b/manifests/main.pp @@ -1,3 +1,8 @@ node default { + Exec { + path => ['/usr/bin', '/usr/sbin', '/usr/local/bin', '/usr/local/sbin'] + } + include yaourt + include gnome } diff --git a/modules/gnome/manifests/init.pp b/modules/gnome/manifests/init.pp index d9820ce..4247f0e 100644 --- a/modules/gnome/manifests/init.pp +++ b/modules/gnome/manifests/init.pp @@ -10,6 +10,6 @@ class gnome { exec { 'show battery percentage': user => "jake", - command => '/usr/bin/gsettings set org.gnome.desktop.interface show-battery-percentage true' + command => 'gsettings set org.gnome.desktop.interface show-battery-percentage true' } } diff --git a/modules/yaourt/manifests/keys.pp b/modules/yaourt/manifests/keys.pp index e30903f..18fdab4 100644 --- a/modules/yaourt/manifests/keys.pp +++ b/modules/yaourt/manifests/keys.pp @@ -1,15 +1,15 @@ class yaourt::keys () { - exec { '/usr/bin/gpg --recv-keys F7E48EDB': + exec { 'gpg --recv-keys F7E48EDB': user => 'jake' } - exec { '/usr/bin/pacman-key -r 962DDE58': + exec { 'pacman-key -r 962DDE58': } - exec { '/usr/bin/pacman-key --lsign-key 962DDE58': + exec { 'pacman-key --lsign-key 962DDE58': } - exec { '/usr/bin/gpg --keyserver pool.sks-keyservers.net --recv-keys 2E1AC68ED40814E0': + exec { 'gpg --keyserver pool.sks-keyservers.net --recv-keys 2E1AC68ED40814E0': user => 'jake' } } From f53a98dcaff45f1d15e898122e6450ae2b573b64 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:56:05 +0100 Subject: [PATCH 09/25] Remove volume noise --- gnome/sound-fix.sh | 9 --------- modules/gnome/manifests/init.pp | 5 +++++ 2 files changed, 5 insertions(+), 9 deletions(-) delete mode 100644 gnome/sound-fix.sh diff --git a/gnome/sound-fix.sh b/gnome/sound-fix.sh deleted file mode 100644 index 57390bf..0000000 --- a/gnome/sound-fix.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env bash - -set -e - -echo "Removing volume change sound..." -gsettings set org.gnome.desktop.sound event-sounds false - -echo "Decreasing volume increment..." -gsettings set org.gnome.settings-daemon.plugins.sound volume-step 1 diff --git a/modules/gnome/manifests/init.pp b/modules/gnome/manifests/init.pp index 4247f0e..a589453 100644 --- a/modules/gnome/manifests/init.pp +++ b/modules/gnome/manifests/init.pp @@ -12,4 +12,9 @@ class gnome { user => "jake", command => 'gsettings set org.gnome.desktop.interface show-battery-percentage true' } + + exec { 'Remove volume change sound': + user => "jake", + command => 'gsettings set org.gnome.desktop.sound event-sounds false' + } } From ba6db0e9b397288beff41b6372d3469bab606a92 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 14:57:57 +0100 Subject: [PATCH 10/25] Remove old gnome setup --- gnome/activities.png | Bin 31458 -> 0 bytes gnome/appearance.yml | 18 ------------------ gnome/extensions.md | 8 -------- gnome/favourites.md | 4 ---- 4 files changed, 30 deletions(-) delete mode 100644 gnome/activities.png delete mode 100644 gnome/appearance.yml delete mode 100644 gnome/extensions.md delete mode 100644 gnome/favourites.md diff --git a/gnome/activities.png b/gnome/activities.png deleted file mode 100644 index bdf0a7825b00050051b32c6697c6295c8603fad9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31458 zcmYhj2|SeF`#%0)Vu*}VlrTgjA^Xly)=>6+MnbZNkZl-SrI4&yOA@lno?Sw+?|atl z`)=lUruX;rfBk#CsCk|fX|f9Dn_mlboM;)hoooR?*u%&?^|yg4f?A zwDPWp3Rnoh z74ra#DjI@szG&+DY9E#gSS<**>5qsbdenOtfAMoHe(GFe?-Ws zQ!x9e#0|Z;L++HFoBQ1tbM1_KxB#g9^G~cn?OfQv?fugy^%Bi~6NygWb7@8Gb$?Fo z&dA98G@xOz@8Zs-3*+ifQM+_n*f8{h`qko)WyJc{ZFW*?BsB!d*XA1U{_1fSKjF_> zmO82M*!8}4_1w+#lsw5R$5rd*-D5r4J2NtO?|AcMy}hRN_m4V%GCv*7kVFG$-z_K8 z zMxrkF4-70#x-<84UV)Q)u!FBTXN?J_of!F>!gOI}6wvxfI#;u(+5*m^@5Pgc^>^W9 z5M-JrK+2Id-F(FC$3h3C(~~RmT?*0HTasEpM~-=~e`hH6s5c@Oy!zQ$&RLVwrtWVl~C64tP{Vx*~sG; z4X>0SxdjCI*TYHbObU=_u`tC_`yvP$%DxJ+llvKplx~DN)z^`;D`P~a|!_}Lv+MPEU|Esi3g07-$Gfk zx4AU8>^Ts?b97q1L_q8Tz-T?`)q^0nmYlcppmk}>)sdsBRIFpiFN#ZeC02){AWj9y zy-oe!Thm(%WQXlRFG!%%={*&q_2jv2ceoaH%I*8a$&m40AjQy&DUpI!o!>k>CI{uL zZ@vy9J12doIKN^(WMpJyG?&E$O>AHJ<|Q)Ti=>zsL+PwL?0G*Ud6-=`0wlc~U|=p^ zU;EcH@!#2coxElOSbUS%q*o#%gfZ#3bt~%Ami+w%-vw#kg%d1xhbc2Z=MFXGoH)jdGZW>#0D3p-x%Kj5&brA#;yZo0?P!i0g4_+-Y*3zoedE^a9P5}E zudBq$w3{8TS-V6226LV4eJoy&RpYMEfp4ozA2z+}uf^};-ldp*Gd^ET21W7{9D}qS z46lPZ<7`}kpdB;b6kXv<238zjo!+EkM$BQL|Cma>oD?I;^*kvqK`G$pd;6}6tlqgs zeDl5`T`7SXf-LDL!Z1zNR>WuA;aAT1_q5&;l1#If>qrujGBPnaZp8Bm5p6BxG9g!} zNGpH#%L9m87GB&&H6RWj(QU|(6NAWwZqRs}Q}(Fz!?^JVb2M*I5iFhc$` z!XnDYZnjszLJClWUwgfyZ`x|KX+gD+{9j!fmapB7JiD99Owam%4NK1E9NTbdy^l64 za~$72l%oexCor@we@-L2LB-*#3!&`QFiTUJQpG%r`sl&&d)9ME>tfgSC}fPPtfR&@Z(Sb2bP%t~{KV7!Hl)9Z*h`eelfc zj-?W<9&fBJPoo-WRVsBd^A#%QM-a*np{vwzMab(5UFszWQ}hr89Oh?|U{oPeg-dA6 zg%T1iebO(a&hRT$ZnL9oVt|54)SaAUvX-Q7^ynfvj06(zBpP?J$6)e>RA3}g^q21- zAgFX%hYg<=a!yIX0r#RH6G8%7`>hCyAEiJ3uQ;d> zgRBht|6aVFdMAmSx_LbKDF3~L2`jeb0dX80S2^J1Q}vu-WmlgyeHf#L)d{!9@#o8J zzZNQ*lw9q5*_mgYyOgc=5x60z0IpQS!lUej;siDU6-C9y+->ab{U2N@C+UA)1`Xt+ z<-UFXY+cwtLpsGGHYv?j^{AWO;lBxg2yF9(e42E*)=z$GIJNWOSjBLnW4R_6qjtut zR|RdS_)pD^q*Lb)QIXgimmx@rv8$tHabqf~*~D+_UFz!tOrz2pmRRqFaJ@Uw>uxgy z;tT{`qa!DaG!ZS?%F5(;>9GzmE)gw*)wsxz=%tVl6dx|In0aEQSh4&4#EPa4{tHad zS9!*r2b)%kkbv{Qk9Qb%&bNm^@xh?{5Q#qG;g0)sU)(fm(7eXy`RPXr7IF7oA!d&x1kB%+TFyncJHqCVt)8z{ zJo&mwuA52aC(EOUzUjtdcjnF>hv7Y!L-^?@uP*NmUO312!Y>rX9;2-z{MmQ^O3sX? zv=M{G_oh7*vd|vx{BCU`V{(j9e=S4xyS z3FFp(GTxA?W`E6E+iaOhExj>Z?z?Wy$HCFcum>86lnq5W66)ewRb@wOO_Z9ni0s9PdxN_a`a`2ch;V7a~W^)`T8Md(Q4#%5+@e5 zJW90M*HiRAkDC)t*X*V1v(s>T^}n(F)GyZ>>KXQKUeL<<`whFgA@TCe?2aULQYjW0 zYNhD>F%>_nJj@x!(iO_;&?8c8V=QxZw7?RvaSC%zDWM5WE2C;LJ6M+qRs@x|mktNJ zsaMH*Tj)d-Q^NxHSA_pnG&yp#ur9H8aN)B7%=d)z+^C5O;Y7xDz1s3fYI$&ZoL2Np zr69X%Hg~u2b19Qz>yG^O_fq?Uz$m;*i=7#zOJ|NV`Bw~fEv|7oq+0!KR?wVYA^kAr zcek-F>zIPdw{osmQuT`H*QnYi3zG`uL2qhGEJtu7vye$tAN{Id@)ri+l`vmTxo0U9 z3wXY4e4$cZdL4W+96aXosZ{Hsne`?3nf<@#$%FT4#jPstdnnZ3Pj50O9n!Htfa7B9 z(9)bBWM_pK!*81uZ(|SDage{wqYA4W!PPB)rN$*4Zm-|Bw2VeVm4za`n=b_V2Dh0Z=b974pCvYu zHkVwEiCv*w*>kEQ{28@L@f)==xaTqJ!d7>~@8}(?RqAu=Z}^2>gBX=2i3!2Z_ab(F zGW+4FXzS4SdUD!qeco6O_|%P;_Yy{4`BZ=W*-|4@Ig`F?QvJQJJB-TaU)_BJ0~0lW zTID7jcjc#U5yQ39u&TABij#e~Lt?jR88OB`BWAYMgHES-tkYOL|4`!G=oY z+WfJeWcrUgfBEsa(~D<=F?#o7MEXZ|cS=S?%bqOfq|#A}Dlw*UxS%$6beL&zZ`t%N zMf{W=KST1M>r|r|I^rsukVEr9Ta&v4=>+|bsjWO(!Wmk;M(c#kO6cLvfCcn^#ZK>Vgn`RYI#J^TpYf4{gRN}$gCXV3oXWnASKqcM2h;nr>aPta> z>yHqq$j-LJS0tG?lW2Z+z^FHmg>CmyS6FtIb1Ik|DIxKDczXq4ol^#(7br#L8SCzs zO}MDDhMhGBoIXG!>XwG3%PvJffcD9Jzu4q z{4a7y>Rs*Ailc(JX0cZs{N~qxu`>n<2&e+T->)bzHu7!PqxR&Fx)1|?UMz)%w9Ge| z>?tuuFB@~YDa0+GvKC9hT%}&F4p;dFhfZUTKAQEEp6x%!l$D)-ZoT^2G`iF8lc#G7 z*5r=DBpo@q`X}vIEi*?y#56&uH#kwYU;b1*m!((!Vu}F$xlpsiwCYm)q4z+|LC+3_ z-}X&h8igFbo3=QN)l(iE%XiX4>0t7F0eut4UElVQ%HbGRW zIRCq*+=-l=`$?*F{sgM-ZF=)uCqf{MG`}q(;FKb6*-o$iqxTsA-i!~6;fl0lcT-QE zrhg-IVQj!a?@f&RVt*}G+Sx3JORclRud*}1ut&YUQ9}Zw%s9wAt`?1yBd;9e<$VYh zO5jx)`;;px|+|Ram7TUPlkQO&q5>Xcx z7gce%e3ctC-#4BTaFRfx0QnCh$fc$~`@+m?qklP|7vu{=A@k@_u`V-e0U@Za9Uka7 z%g627C`+0TtN(;0Xzs-r;74~sK|0vRdsAv%mG{!th}#e}j-;mI(7w@ZY$>^0(#y;Y ztGEy{fln>lS)*W*-h>WD?DCgbv6G8O`Ng${f-wHph=7Ot)Ce-D;93JFaqPz*nObS3 zK{M<-$M-@lZ`(ttBCg(|g~@C~jORixQU#k4p6y*kLHR0=+WL~-X8VkzC6%Zl`F%K< zY9dqm(N??}b8VsLk_VR!!F5<$)pX#D?cvtku8_?=Irm6HYJvzugZgx`X7r=4xEkYJkvA!T=zgRIGAajkxtfB>>d65))_ne&?SdD3M1O$!o zV%^h*lF6Eg<@+rV5iQDB^$apoPj)i%hLs`6QP<5Kv$0qE5k&a{sX2{P)!Y2yi{Mv* z7eHg|;zn?2rMce%kN~xAJm~}TN{w<(eDHI5vya%If(s3R;s`X9zM(2P^VNxIPhvan z?5SG>+plwwe+K}4{+flJ+TDhxL?FDJUyCnZ*G!OfL8kI!EACHQKeVQR>dXNQmbXD% zJ&CzuCg||q+Em0&zD1Ht`-VtP(wqV`g$yErJmb4jUD4b+#ckgvF|lV!{Ch#&Qz#`0 z)bA$#yKZX*RK$m50RK+i2Ek*0A0rbiD%!MSXWYa?JxlQXUr(@4psT?G5ESwFNw`{+ zW36kR_3z3b1<0SRqK+(a8cqH5*#bv8WRO~&%`OB%^G}|H^So8F-3n${$}qrt1zvuD zRNab8+_EKsGU{KGK;^nRuDW2gG-@^!%x=#tF+H)fb1L(?2T&Y9z;#w&Hs!Gha_$Nc zdK=o^`*43~=>wD(Rh1hLV)7jd3;!t9Pufpj{czhbc;dFfhVIRXLm#^4w7|+yYm418 z;gZ^}>v&FpwH6r~pwD)Wwhv4M(}|HP>&cXNCH_a^ui*o@=W8Pmy4imrmzMNqQ~Miy zHE92aD&wcY{Hh6bqm-dJk%<7D#pJ<{tn3`AS4fCj`xWvZ!{AhP8vbs=@A#I8r~@bH zG8w=LO^w^dtu0tif*)FEHdCFFEaI`F?OTrIX9J!cNxrL{%S%g+MV>1DH{+RMOrk!X zzuWn1eU?ES&ba^Z)HUi8_PB>dsRjns{Qy{kSlMb0HgiW#%&l5wS4GI2Tr>*c|A-bn z7WjFXf4v$VY@e@up^#u&X_zSLq$f_V{Y)?8d{*>Zez2D%6dRFp@HPdDGdbBY_Kt#E zoEV`Bn&#s*5&ho0_`F_Cxzj)I-@k9xk7(Bz`SUa<6gunR_c?vy@;yt1X*(_+ zbobtiKcKy3W*kKX)M{KpN;ULQ9g3Wuycvf~iRl?$m1_~}qHEB9|2~~6xIuFH>*jme znd~zyS3ORsb6RGv1EXKf`qV~-N_L%iUO8XMB<|H?`KvnVHF51fp)I-+k^bJZXcbZX z3grr`0Lqc(c}I;mU=)PhdRiwRsm8W|h!@J)y#b)NQ|si0q4(m4%7dPEO47hNiuwq? z?+Sya-nZ0?sH2>JPEZ5W#xO|H1nwL?8_b;Wnk(JQjH83GboX72;aDwfG3=-aI@|h7 z9udz~CYEkZI3?Kb8hV`%^RQ=TgF}#ex5Gbkkv%*~@i39;9`KS@clm+Z__f(}hTpGG`i8b!C|;dyRlBy&w>Ny@clVru zW-9jA?G`hK-S{ya5(&mL4=)ju-Zk9HqL>?f#*4y4HuY2tAM{jls3t^A%1xFXPed3> zf8t|^I-R1h=N1J4UU^`h=YNeF$m6#H^(2zG1?0CP)J3`Q+iMRJe%#uk$zC}~>x?UM zxo4`Pe+3rsJgF#DK1x(f>6v_oU**ZGcH%tDP%q9~y8XPxr1rfVsY<1<=iwtAQ~F36 z7{kjuNi@xzU}UDRW^ndWnF| zKYfT`^kt}T%S`cF30@dX+8&*hl?SYXS_oho8mts=)S`p2W)wXcG(kGG&nvH^#nr?* z5*qO&7n=U4e#?xa3Z*0!Lcn^6tgnpIgc;ZO68Bs{CcXeR7)=Zh3RyMV=J}akjn4Xo zR;{IIA>xsQbGVzCon5M2*mv)esAr=!nxmdu-lE1WWw-riy#^*XLxFJz_3-bQy~~_p zTPo*NkJ$bnZ9!Lw8}NslpEwd^6(d=J;YMEpb z*IYDmgTnWS{fYq~AjhY_y|0~;1+y^qB&c4~%}7-Eq1Y%d6K)eu>MFqr_aRCBvswQB z1qSS}9KaXWA8FC=5B515fOy$J+}duK77uw-y%5XFIo*mqCKZ<1V74 zw&=-Ar-Ls9zFp(Phbz*Gk!MMZ>A*sZEk9!vcOb~u4AF8~jSkA>7s*FjDe~>56OMa3 zYox4}RB~D@g7%(ujwkx8Ox)DAOVxe+=Np63Wpd4UHtyFxsrC7)V8N;}nHEz`r(_aD zn{lkN8@Lxs^E{C0Bbdt4RqTT~=NnfGAMt8Zlcp0J<^L;6om7rZyDvH+dA<1Xnl&ZH zd-HDDqu%8doue6Ajx1NBd!I#&w+cOF;G*^i8%f>_W7|W;IfPGTlRoO_!7^=x{1$-6 zsb=++f=opkDMkMc&pqK5UWO(80vxx$Lo>s8lmmJ@Uhs{H?j@=mkhR(BvfGJ@PXQIW z{FXTW+G6fKb4yRDfk>L^kW#_4)d26qd*}g{{hF5E;pR*-E6o4R90lqIt5+Bsyzm^%JFU~S_x4RgUXhVVEV zt02T7RDmlndx$$kfV<%qQ`k(HW9#QZnarIQRuvZl8D=!Mx2TnYz}U&Bg`q7va+l5@ ze`a4D*Q!XDVhTnhuC8htaog`A>^ZkLj~B|uPftU2oCv{4h)H^e;(uBI2$GsR1TgBy zLsd0km(HJ`hT-)3P4Aq^7?8nYmpX6$3kZlN*;Wj2)0^hQHugX;tryNLBC-!Mc|s$u zfti(e^5mnI46K`G3IpSWt^p|3V5RLn#>_=S{A}%vW#kx*wvRpGBcdm;67~HSks3|P z2ieLuJn?$O$$`4a3_?+0E4G}`ipT5<5Q~j&8_5v&7XY=d${fBCvDNvfy8uX}t%IZU z{LAth7w6o(3hO;@{Rj%^U;a0(cmBs004qdXf9(9vo037?%ncBf1~O3WirK;rBf{ez zlfG96Ac&=jg$&v#058rb2%5RI3V-k0*lNB5z!QTI5iC_)#)a`Ed^Re!HZ#@HDIQw7 zO#*$r3%U^sVom=wBA_Axp$Z;D3=rJHK&KhPn%}+p@kes=z|yVr`#$i!{*FY5rEus$ z=e)xWrHKLP=1hkJ<3)2y_`(o0r^;_>upnC$T~ znqaI%4{}EhB?2nnjj`V($7u3Y+Ae0BcxA$ICzXbp9&>ZnZN1ywMOF4z<7x~7&XPDdqcIYMCpwe zrT9HQ_=%<6Y<`yBVb(i1X&qEi1^=v(cs<>T$8YCt=w$qUm=vwOr&ThCZGNFQunr9oW~^ZPPxeE-2lN$aip%}J(*yYY~iz_v@#2@)Qva7E^;_DkKi zFIu#avp+~g5T_yABBO^ehO})#`tKin)ZjS_n;YG2hml~?v?;(rlX!HM{AGq~acd0i zjo$LRVE43V7IlvF9V=g6@dtE>7El+I+uILztMuFgV7V%cKG zH~z)b{fP%g{$PD~*r>Mx>%_hkxrRU!vsxw3@U9X}uR7k@zx#7LM>*g;Sotjq#m{Hz z(`&u&XqY7GU8c;b1mF>JTf9yE&zYMO1`}W;E|n{+;&yGB^+KOtmwMfE?5lX{oliEG zljU2#w3#LhEc;_&xu!Ipaoly?_wyOl|K&6#TmNW5b?$c?(}qGG;_60yx<7{#tP~5g zDoK2BN1zB~K5!AXxmOq-; zfb#;UDhIBPcQya3v9{mA4V|wn%ILY+LN`ZlYl6S6WZ=~7I=AOuN!Y378!3k$Il#teEWG>gBq5u&U0#v0Af#O+O+FfdWTkvHbNBagBPajB9~kS;B5MfjB}#+CBeM zctTte=I5S)oGY8rUj*#Oc8f8mDvF6BfCB*5?9zcDq#-e#6}H>SS~Xiw0b;W{f0_dT zCRFmu31I`F3pBrF4kSnzqGHaWFx4lQ^R`^`eb_u3f@Z$5=-mF#I6oh+RptMB(V2j~ zk-!1ABnIAq@powt>2W&M^HZJE>ra-8Rm;d_GNhGc)vk#ArJF2t8y4`P5>}s}GkG>e z)E1r7qWk)C+`C;j_1j=DjNAg58@LGopQrs+_ab6n&B50oQ_6-ptg zE2pEa6c5R789MxY@Phj{u%rVtuI|1$4Q?#s5r3{PYQ1(pyp0ri?mFWj6kWKXXi(H& z>4{xnY;s@1kpeFU1Cbu;Pk~xuiHA6|-+O{k*Y%>}E^{m2V#56`kN$O4lM?rj=lNBF z{8<|fqzY03BGjaRO9Z<+JA5b=#h(r%ekmg2)B8}7hX<$IzE$g|Dp)@UkbG=YG2CAN z&M)CGQqm>=qg&@+x>@QrC$;3@!-(7mhfi&?PF~+&NCZh(%rL?QK!|8b_y|*q7jNO> zfGg><%o{$NNq)igoH~4cw2sx!wi9d{FlXD1VpfM{at>&o{+mg5WGa zSw^f*hen+GeLF1MgdHu0BbA@Y zmaMr(o*c7$-0Hm!U|XRg!q9?9zw!^rVOOFkSUJFM4Iju9fD^4qiMiO6JJWgiJ|EQ- zvu1TPZ}Hzo*AcYeQDM=m7r8CV{lw+qosDA;Bo3f>mxo%CHT%cFm+E=mnA9ESQGSLt z&}f;22s}zldc*M8wLRwWQJ}))cZ=wLOP&zq&}QsIu;f#ZWI_V?M?MwF->-RVsSBb( z)0G72tk&&K{ z!KK0a&subFLu!_bczcL6N8*c{2`}2$(~yy$4!*k<9fD)%QEjNEI&P}_%)+M$-(+Cq zX)wvgy4Ln!DC-*4N!1&@jg@r?cDT!Wkd3I*$`}G&PH487K5&U=BO>GpMC8uLCGi(_Rx{+Iyz1Sv%& zKDf4%uu2rL&QWRjdo~coF1?A1KAgR#$__7WJ%jQ-WsSCd!&BVuXkBv^@SvQ42j!v0 zo%FhcjiuKps4@LEop=f=Sm5NP$We~PB3uMAqELe59)JgV5~!!pT$j#p)d>; z>SuvFhPnXJP4=fBS#Zn@i~4kD)bW*Ho;~u*D_c27%5cI2LI@oWX68S5G8kA#Nn2gR zzgo;KKK&};!}e!1X8vsxvFbH>#xyNB>4NkId5!y6e?UI7$2X(YRN`07;AHO(E;zIq z%fQK=-+(8%Q3PBBHv12S7~)&`r-wZ{Hr@>Pc8eYVV8C-H8XMF$k`*O_wmcAqAF90J z2dBV)F~iBo4nJyat=2@~GBref(=&(voW(|W$nKX%b!g;a<@u;dK{61Wc;#>8RtzvI z75$9@cdk!7HF|t~yu-xZ(T9unGaEJaRG6r0RKw(V)Q7Xyu}0EKB(1chWpYp{ky$%R z9{g>KK19$~-z|6q_czIyvGqOrrL0fehzQ)z)o)%zjT2z0^o%7kIPKikQS9r-@+1uy z2!v;<+J`SM{9{rG6BK*}o+_vF-;h5YxMOFJ^2_o;j&{oZ@4TqP$*Q+Ltz}(NYYC5% zew$pM!A?u>W=RN(uxZROjZRUaM!m(wD@EAdz0^nsnu-Jp5Vq-1o8M*JQJj_~#noM| zl(Kl?gk=V^XRd8Ny-0~acabFH!tD&XnDYsL&{`)65#J6IB7pL=i-q}S^4WAY>^xi9 zuUCc}EDdS2E~u#xUl=Sv3g9SAE5bjSazVyb|Da8nw`rfEit?~h;%p((zvkf6x9wEd z?nt@qDOw8Ql>)k`J_lX|a&Y6?owU`=^NPT3hhY6!=J78r&KV z%?6#Fu+Q6wQN^#e>x_())w+(wwmund$yMWeF7Eb`kK}DwNHrMR$bqI#{zIVfxIo3H z$hZ>3Ke7oii$BHjNE--&T4~wF&_0TLmt(a>Q_RTJ0>(9djtbCcYF45idfPejH z(nm*d{BS$P>E2@QMiyvE$(P+B(HCsQawpg<85!^X{2{T9t z-;O&Gw%1ttma7_kYITzHeI!c!PGs8%ihl_h{s* zeUhr7yi~J{KG^6ClzZLh!2KG|Q*M_L!Yul+{b^PJ+uX0~LkJ7x{>n9#llc~g3_?YK zr8t|aTCO)9-&9nwwJI5lgsx@_z+z9+?`pifX9LaFF7sdHJDfJd8fFU7M_vBrTcXE= z-{X%tb4nEv&Mhwd$s+X4kj3zW>~F~lu(0Qn)MG^v$V_{c7~tespl&wZO)b51tSzY& zb(gbGMW#X8>m^5MpZAD-R|DUbqW9#s`AIX*VPd7din>eIHjhte0w9f^3@IppL* z;K)etc!<2S2~4+u3tBu+nXDeZB`R=%a^8iAooB<;P;o2Q0L!K0!9`9-Do;3*Q|XAg ze*V|olEBaFf3D%Kxxd41JtG!jH*LO!-SJXGh?%xMX ziD&fhnI&)*VbUtY0%*`2C7gOdYkjHxu0mn&n~}sQecH|kM4>m;4j;MU71)p}c-(fg zO;RpA`5K7s?q=v*77-OOl6f7)Mh@*G$&W%oWh)q0OI;x5e6rOSmdo-g3rLWMh{}Ao zkuk>p_-@5#9V-d%y$8qheA?dt-2I2B|6LCB2md5iTGu#s71jix8I1)1^L+p{^IaQb z`1gdB_$2Bq?yr#9B^as}$k(^UZ-b;UQ7%hi@1XJ6^I32X4k;$JVJnz!MR?rpYVya+ zMxn&4a)Dm zQBi$#|C*!)3Cb<5k!X#k3{(tN$_aB$C|UWyz(7z@R?s<_YE1*p+O6*|FL15e?Z%U{ zn_kz8KJJgc$B@j7B!@6lfM>h|F!V7CFSg?YkK7y%z%IK>CNg|=4r7;K6>|z2f4{~$ zoG9!&9w_81k8%QP0VCYoI0f)&;?8s^tIsh|R{t1nWa+yMv$WIooA2AlWl9{godJx| z8I+^D{E{J`Fro1ao@*q}!&n>4TKvyGf%46x<)VE)!?X*U(hnxZcZG$}RH8FsqFKE3 zvDmUgfTY>MxA7}=A89`tS7v={Z&d(?a(sLAf8VV2eVirgTVxbf($3e|;dyx|lIY0O z)M8R)jpl6bSyUh}QQENj%4f@Y=%Xp@nET-Pw#Imgsb}9}5w>IrcvGBg7Vcdzl=g_4 zCh!FLCGYj)UyC1(25n5<_)rc-%5`5?1)%<-_@NY4ip(1%bWb}QdC)K8F}b(6&JrUx z)obR_DR#s;bdMSmeWb!jf0neI^_W5pIefj@Qa^%J6l6U_MBuTvOpY9VPtVS<_#Uu{ z+_eM>P7#+TZbfupM-zlWlTm>*XQZZew5IjzE3EcE862VjE`CIW0qlBP{e3l8}A0|4u}Y$|1mMbV6|zg^1_CrYZqS^MCOp%+B8N^%F1ymDZ&a zWf$ejA8p1S?(;GhI*v;M@*GegE~61{(qFi=vq*gLe8ptE45ZNLKMnH4I}^THCf!y% z$-8HiI487MfYbhW)Uz+b;TiwntZHR-t~yQfcrV8Zhw1{{;s5IL zny9YQ^s-$wR@DYVv8gk}EMfBWw@wrfE8#l>?jLo3Tf!_3Den5J!C*oGVXu>o{COi^ z>U6C3*vH6fL_`p?beaG`7u@_7_=x$oRcrvDz56RZ#GjIVUOErU)MT%wmPfed0|dz* zP5FY%oun>-G|H`qvc)>=49Srb5hA%d)$R@vJe`MUzqh!U zz=7;qQ*QUs>C-tL9USIxtEHd*O;)8~1Cuo5??SbnrQp_g^sXJy$b zuT1ap|2p7>c%(zA<9Ks|4Ibids&;9saF_w=l3O_^RCm1oUCg$vFN^kjUsoD{!$2$^ z!_oXuRlTJ-_)$i0#q(qJ?W;3=DHDgCIai|Rk4dPNL7r3#&>{ZZ0<~EoEfD_Obf77R*3;8xNR4Ogici6>yX1PyrKyxJ5a!W- zTxq)m?$K#)#ln2sv_jH#K;74ew})VA#sY7mFuYuVN&+ed4N4qE9Pfl6A?3`qfn1Z! zNc1aekm45#Zj|ld^Bjt3Zg(4)R`q?>$vj!aTCB`Zm~dhmD(90B`k>C^&cd*Ht7qXh zIxfQDO|0!^@drNEu;%ui7p{ zgB%)T)Z6XixmAtrwwX*8eD>)|-tAE~sC3ukZ`;AcW6^-qX0{`rnXsXyPuCU^h>u)ayFVyR@Mc3j{T z@{r`gtR?ucg*U2nO^w&>-dwME%$?-$^OoMLp!S{o+?wCMw7&$(O;j6@$?m_&MA}2D zL)BY zah8_zlVy&doF1QfcYR&PaZLN#4+R9|{FS|1!1}S0Wr&)`@3nZdpB=nA!a4HX;-Mcb zBG2MRMvR#~Rvx?;|63(S6cjto+A+Qad36OqvuP&2ai7fj^Y6s5|dTL++^?*nU?@hEn4{J9#K>>!DQ?)Ua$=&&WYRjh2 zsqyK|I@3ieI+$~5(cS>FZ0s%8NA)UG@X?2CVmZz&JK;vb8qYs;ZItDyN5pFs#DTjn z|EaN(z43RLpEg;P(vrUH4XNfJXcuh>eKuWTH6bQEDuU$(vh8_p5KzyuPY%;dDRE;~ z7|?c%CYQQg_}H!Hn76;z`Tfo2nzG;A4tEpG_IQt;3$^wH zigLgXjMtQeC7O)z`OEVPy$&;Fke%JbO_| zer=raaQ(#Nd5aujTCQ9Fkr*4cmF_L3#<8*PCAb*yt!YFF1USjX zFz2$aGeXS!Ho|CdB|@`s7`Pg4L-VadH}d+SE9y=G=EU1yXBqgaSGy-=6cBZ;uR2I) z`AMFP&v>dX9j#%fr3lg|jW4&XFKoqKonxOa4Do+&a=M}_fQl1vUcv{gMIZaFo-c+K z2Vwfj zUH0jv+Cz__ck&#J*O1S~G^;CaFO{E?`RmN#(zcVG!?X&)_>D{L|5okp^1t>50WO?0 z{<<72s%j;-Z>l?)4yig~HTt%SmxNT({y06=#4);-i;aP@usk(Gi439gjf>y`@=QLq z11mYq6{c|KD3FBsL!nufD)^{*y?s-8&}td&WyDrXe;JHjTqXqQ$!}kX{9W}V7J@1b z3W#-i$X&LUYk*)iyQ`aASde$mWucI^CMJhc%}#%@=Ql0>OO3VD&`|I_-$1pq`f%dX zxR}HobwSGJgS`BClt2DPDN0<#vm`2g-=KQSf0YgStO*h#ktfXEZD{zLJ0fh`;(fkL z>c9H}(^B&`NzVr)hj1`wd4I85Evy$ zzzpvfWLrkv6KJRK>*~&VfIqlPKl|+zs8xtiZ3QB)Qq4JVUx%+;fytxiI;l83hD}=O zj(JMGlRs5kDo~QtT`}RLi6NEEq4)!Y1o!&K-+QU5m2VV$SqrRV@9vy?2ZX|mpT2(A zGeTFKy!}Aj*)dsPwC(pRS2NGdDfq)7d$zd-8yX=XfCwHJ9e#hK4E+Z{k$!a=nmstF zs#?kF{N(!mGhAli?i<?5C{Gc{{Uc7iQ`) zfRS9inHo!c9WEz^#wDeCPfsoX{5Mf*w-!$uac;-HN@&w?x zlz_HdAF{CSF`|xRX+{1XxVm#5h@p<2P`qU?|NN;-nHU-F{Tvp-bY63so%O zlB+yFf}DI5VBvanR`*4N4mHh0(OZvpJ;^@~WjyNFGp8n184bjYS3U!fMvB0TI8*Sh z!JC|DZYS-}qU1mgb()|CTcFGp{G=9luj2kbzhA+xrA_LfIMHD*2gBf7pZ})?5d9=a z73e?7I`qKEJI5zbnZDKrS*oX!mZ)2E zk7xdgCf??iucaeDB?_|-mBZE6WS@m1ha_-NX{-l{k=xh};FS(m0ou7p3MnGUeTn6Q z%jl~P`;x~({zS+g$pa}YC;Sx>jSP*a>@J!jtwMAL@Sms91hgXrQmLg}R z{|Bg0h&uOI9p`i-07Ql2UkfY}RpOo!@U2??k7;B=u!0;G8;bJ|4~cKX1QtVj_vyZ( zYyFmrb5f0VhOX7>oT~Fz$-+7Q_UUN0$rgLjcp%&WgE*x3Z|Xw0B^`ZQR^;)VkASLM zz7;`!CaESO&G}t!91BD!{F@3^>mnruAUtvf6rrlNWWGKtq1$nhB>qz4`8c#h z@7rTIl^!i~_I>Vq^zu>k;nbRH56v#}##AMXOSlm7P<7)VPau^-9SFn{;3~GC`*P>A z@m)FRF~D{eR5?0vT?g2%RQe+MKRv|H?ql%rx8Q1SRKDr0+eird+@tHKAO!}v?RxPi`uSTGsn zScUBmR5}ub6y=VGZ<#`r5Q_pp@_qkZRkw+d(`m;NI6&9_Pe}rw5&*j}HbjL;1z;PJ zJx^|f2WiSdB)o;7f6m;GKrYCjef+M#!jJadViPAzo!kFjt7U^bGiFNE{Ux@&Zeved zYHW5rA+aTD(lvHKj*)#ZK+GPSR{q1WFkZu4NdKT5bd_Q>H6RTCaO=<4cnUbc!eixv6f zN&>BP?pzM^PCcGn3F$O(YpDp`Sc_2x=$SiF?aN-5u|}%I@&AY~NbHHDZFj-+H5#;F zAF&b~`ghgS!*xR1t4Q?zxJT-P)GH9i@^f%~Q3%cQx?zQ1?I8NJs^;1G&R}z3uzHW~ z-$6?q+^lr@p+`s}-lZj~Hq!sQgDdHMk|4PC`Hv~$WRNvQmz~aln|=WN4-v1Ab|5HG zNE&FArcQ4$vwoq@ss1>&7#HwncAd3+XX_?kURIWoJyC8VxXg!Z06bK-F2_|}aM$(U zJ@O5z#s*9%@&!x^Uv|r~PrXj*Kb3|OZBE}x0#HQjeErt3#8&q(g9-;Ypu0FWPM672 z-|8$f$XswrU{Mr4rB-oDrp)a6I$U~*QR8s!E-Zl3g%+pW-~acMj;6WorZa}F829h0 zw{+S3FkL$XnNH z`+6F+k%Rtywgx}%^&iL7^Fr$^*~GZsea%1@q>dS>xit3V<&`UWu8<> zh-Ax=?7hj}B`ZSq-h0a)AzSt)LfP5l;Cr9mpU3z2ef&K9bJpv1zwU9}*Y&)f&+C4z z2jDGkD(Ix1m<}KhQMq_fw-&7m8*dU}nSc* zliUodr5HMY1CXe0N|~jcA8sa6N}R?;9G;7%I(tMSYP zqOz;#wS0%`(}@gx^^&+pO!@65)0%*?CTL|9`wetoYxdhU+x;k}4;Tzaxy44Z%X!gz zt9na9xh2!pqJ1P=^TTI~uuj38`$Y%fo{msoQ6TUHp}sUHU{($rO}_{n+F#X7_i^m` zOnBsf+s627go>mF4U||gE`RA%K zZSj4-Zc#u9Q#^UyM?+fvw6k;HeGL?t@VYGPaN0g8^*+{FWbm$dWvI2c2rj$I2(Z2%1Y-jurp{AX?e+eZG&ZwYL_j-4^1`eG-I2Q9|qn)Og5 zt7e6k6qqhc>Yju+!P|`A0fof{z&IO0yZY-P63|j>%f_ASd)_PIykR9{666*NlV`}^FuK=fQoC@G>tdsOKG~v> zn3*8?hp(@zoe0C_-V0CZX!X6o-!FEx8r}G~`_4KbNWIJwRx`;4tLdz}+YuWY_)mkg zP-#dl;&?61|5wdCz|X5N80+x&cv#rveD(geSUuGDN#DHYeb!=~+MV-;oyKh;%)0dFE+L4?ze^A zSftvg=nDegf#=(BC}m1`CxhP(u1CpK2XJsxW7f=HAcor47nRX1F*f+Z=q8o!EwMKR zvnKgqN<~!x?*)v`1E5j>&4xHK6TP^Pkw1k%SJ&=<(h8x|PE{oh$2aHg*7ahWc$7eU zQOY191$`vGhcKN)d~sM=#S|96Ea0@f>&1oSZrN9i?-;L*nWCZ3vDKf4@?fj06F%E^ z_(*so4?az1QQlNrOgYoXT&P|?c8pcD#a#EIVWE2>q{{pjTn?_%*i@`Qh15pA<6`$= ze@n|QAQR_UnHi+SOg@A{?DU@mCGOvG(}@m}G< zbq>~|?FH^@MZZ>jQs3NpB*N`VqLva&Q=eKgJmVWr1nYLs&R46_p}u`0+p70D+>Tny zS8K(uX4*$ao;8Ch;Yw|Q3fg!`yfd#@DSISwb;RZFRO>E6kA%BkT-J0h_;<$@Pgm@w zm@G)DUSs|H1rRoo5nBvtcx@jfc+2R|TE}kZ36sY0PBpbycCwT<@%lkPdko!;0FNB# zok_m%7ql494R=@f1tlcaIb>+}_U)r(5Xj+*0A%YVJ_NFeAe!mLxq#hdXp4_CIw|8e zY+Ovf=ye1S%;1`c(dYR*rmjlCKPEffe(u%Mv{-{NK+@vvOP1ng5v?|)-@V*hto~8; zAH)1BZ4W%5VH`v;>gUT?kq8k1OphfI7(~ABJ0VK~>VRJ#@mmuaJ)Jr)cIi(#**9u1 zoH1z&INo2~<_OeE-|iEyIw$=gedRfV)Pkc!@P&5=wr76$UMF$4FgC-KxLtbxn<ge$*WH&dxDu9 z5Fg`4M!dE%Y&Wg*-rrvDmc!Fa<~2c71JUd`FtDBd;;a4Orz(&}gFlm{KYVpZAq@W3 zO&P)S9T3Q5$ar#vI}GB(DqrmmzOepbY%GtNT2=j6)R`0)63H3>;*t-&1$UjcXI?49 zasSXi**3AEgq#NC#@)n%XqRT(zayW(XBU++Q-$Hbr5bcWARZ+d_wzz})1K-|skV4t zbq+knf}E0Li1shLh}zz7%9^hgeNB|5x;1Zk5D9?@VKl)e7$=1p-0c)2wGjc7GKe^a zHdciPdV~QphBJPAK%orUcZZGy;{ysY5us9Fs0D|=QrsDD>N9Q##&-3!)3Gx^HhW!t zQ>&uLI-g+--^8G>lBQQIR>cR^WS5qtuPA;-sK_{T2M!~ z1!r@DmZlYRC-P67?z?}g79)MT<-M6oE0z)QiWf(i;E7Ki$>2Ln;J3k@T zCjIck4V64xm-#|>DxT#x_aV{^@eFujNZUQvOMLtLiTxQflKJ}j|{F9iGo%>6zg;R zw0v#EZ-D8s7Zeq!B9TZ{|D_L%5(Ss|Bn1{qHTw;#cT`^*9`#{E=(1iJprCCL`cmA1 z8Atq)MrZQ5wji+UbfG$04`AZL?Qo8O$Q#e8iyJJnN>rOw@_4Y;^ZEXGBbwk}?7-SE>? ze5~i-kTsYjeFI{8SC1K1w72$iAGfe}M~C0W@j5V0f6OX-e#MO358*~@?ceNWo4&&+ z7Fp^fE7)&+c__w0-!L|CjKI*^<+v{cYa_&kozF__qC||ovkG{hJ+f6+#Iv-xVBDV3?9_td zOR11?IF#M>?c|~%SMB!X#Whj=<`}yW1qVo%-t$W%0G4Z*>Vg5?Xz@ zNYtFVt|oZ4P2tA-W+Pb!>P-_V^Sq_{7sK^5P!O6B1t7(~T2Duor=KQV(VkBqz_7Ul zzfBHb;X-}2bSa=s?2L#sS199@jeq&JSJ-Ek`?~l+I9lQNqU3~Z=lX-8Xol? zQTEg+If(doiRcrY5Dr~+k&&IBtg2eCvivDugT`DtY7644K9k;N2T7Km{^lVlL{|A z@4guRSgp5jPT1*IDvvuoc^%-+bAQWzJ7Eg*6O%ovMsJ?C&&sAmXYu6+Pk8&>*%S6_rFDk3F-DAeBWgd|+b8`UPUZuOJ8H<1 zG(D;R3pIb}mU`cMx#{UGUTWWS?PPmkg?Nt$pq&V!!cHi7}Ve1nP@}0T^n{ zb*R5>Gk&p?NwqoT`hJ=JWaa*VSzl0vz!p7x%YaUFV~Mb8xp?Nv+H$<+^6sVVSL@r; zvgE-YT{}$Gp@>LK4Zyk5ae%vC;`}|1Q}?>8Hxl#u=XN?{i4dI{FC%lJ@vp9Jt z(<^m23IrYZ0<}eqQL5qe$>`sO<%?UQy4O@BH~b{rou#Ur2V^S$#W~5MM7lNJXC@co(K#s(s6S zSvI1es7ft8nh8werFXf(zJw>FRjgbr#cDKW>(de>tg@$S#f}-;@n@n?-&I7fDr39Gc;c#g1KF2qPX%jxM|k7ArK$a7Z?PKNm68^* zopfO)Kk1QpKOn%yRW*EQ|NOkYanAYjf-(7hKJ%1g+Ykvc+5%S!y{>LGbYn4US6|Lgp>Ll* zJU3V%DrFFy)nqCXr?gd-6j5D@LplrQw0g&Sml7%(QAE?Vj%1ar`h zF9{^|FT5MjPvoU@&6TfDSz5NU9PAVBWs2X5865cVr%%IM73(jVfd~(s=0<=z-_e?3 zn&5KW4+=f)J*Uz^RWhi_+89E!*4b(6)6u5W($WPKD{{Wd zZWmYDq3EgP1YKxQvXc6U2KJxbEKZyutgtV=k&cr?6^S1G@83WEIqZ@DGCEtK{{e!; zz$a_^1-f>sV0(At@|vggTG~0Nks3D)xpywLDHR#B@g;a60OrTObA3fhL2~&K;d5OD z$BO!F=h#xA+{i0mQ26kke2CLV5}NzYFPOm?zcjg?wsz#$w zL2Yq>E@{5ow$e9YIqfoZ+(NH0T&LV_KO2EwGI`aa^-~fbA8W+P>GXr;r-m`xxcJ{Nr=iz}Vlus8CO$rXdA0TEc#A z*Bb_qmuH+XjH6d`vLt&xz<51Lzgu0e)cb7QuLo#cS_|Jps(zTY4VPi}d@*>hAA9)S zMvPNH;MMxtw+C0fdG|zeOYDr(?PzXR-Y9uW-Ads_=+`9%V_k2Vd~sV((|Al`g7x`}ZbsMVpk zeUxizrwWf6cprFbBv<{To;^L%^o&g4#^7V>G{pp{Z#N_MJS{Y+@Z7OQVMI^e)5{OS zr^O|Mh)tOmxs8HiEj`e?{fOzue&()3%=p`<2Cadr#vRAh#^hU1s5Ms~SL1o_U=JmY zF8(6Hj*x=ZOTdZ%P{AHD%l#bI`tc@@R6&?m#i8lI8qra&M)Y(*myv8gJ1e~bs^*27 zZzK0SzgyXaGX0yg9$xhWh5rl&&&4yUE6X7!23H**p<{nf=zFRYFiLv;+SfD^?qlN^ zrt{7*k2~8=$e?FbE37Y^-BYrl{a|w=j$Z!pqnmI%_C)?;)k*v|Oc-mm=yI5%-}vr3 z6>_OS3}y)~xINaMk9-P~vr7!TeT)ak-piCWFR~M2qKhR7+>l}NVmY|}nibSUATLe* zg^6Mu_(BPS1-q#>O&Q&YhTzfHis5t;Dm<%3ZpTa@&=m87nBueGnX^1A7Re~8s2!xk zwxq;UB4@nO^>j`DGxV@2x8lLhL9UvuS7j5yV?Q&Pf4GQBaoZ)K<4GOX0s;04lPGT= zKob1^yOzIzB{d11rz~f#(lchLPx$W{+m{YjYUe$JqbKZ1lmtN=0jVS=($rPKvLG`4 zqk7+OX$yv(c5BAgK62zfD5LiF!!i3e*+my34&MNXAumsPi2!~8ULnLHz-#ieyF@{+9ZL#%@8Cf4KxP>?9F0s~bbC$1 z*d$8?@gevZ%;#cCneo!}1xh~584MPh93t^JRli(h!Gp9?q>%d0a(F2z&+&s=n;^{w zGV9{#f`^`m!mH>N!ExL^3WcH1BO<=Ukp5r)zi_|mN!ri%^A=<9W(b6q7;{E|+!04# zVEE301f*5&N_B*MQR0PD5@2*M*FNV2o>={t#|N6>5iVztOP}?a&NDH&H!)^8v{XQq*s$> zQ>}y#a!sYn=Vh?a8AalGXlqgJYI`;$=!o}x()IxvQCS8!yu-IE(@j8A3i3afepyses9Vr^o5u&&3M&=K$@gws<) z@b3fshL*Pe{|kS^X*9)uRD%fO|pVad#XTR1NQWT27BZ&${Of_3=j*?1Lz3Yv&5{p?3 zTb#sd<(;9!gZf4UX59E?^k?zj)-$+fC(LhX)nXyfYbb(7S7c$0tc?j^J_WF#2VT!V z84o4f$is_tuR5j{CiO>acyw6h^&Be3MQalQY6G#&Q^({+4K44~Fd$L&FRPt^F`;-0 zKm0TQ^5kAZ4z7!5_u(~O9FHFD#oq{q@pNxG74@eD_6?3^9##+^?<7H@gw*?w;ioVp zswv2wA;?200>P)?l>9lWWYAa1IU-AD*?+0IQ-B*pXOgh`wYQa)Fo2(R^2t#^r{igQ z=x$qnBaorAfceoF;+al=LwbY_z=by}Z2Nr_Gw~_s-Wx3P& zBs<%aBT*85tq+Njd@k+lj@MJZC6`w`T%>nfbi&n(bfQ5&S8-vu|LaUdQa_)LS>`hr4J2dC+A zyYCie%RQFC*Z&^$hRd!!(h25Q8IsBrIp(SWq)hZrsH;9j#}V@|h`k8ZtGx2qyd{A* z4NwdKT*<(bK($Ut8NlA3h3g89^@Hf9{@Azo2Ml`?4mF7}?E%lOjvyLr&j*b7@;c&9 z7D{=N1)0|%Blf8Kc@YMcAwCtG|+us`uW|<@)b7@j+}nqfd{2lzE*&eW#a=QH?jDCp;+z8&;hIfB@&R zB>REkP=-S$g!RhThx zQ-4wg!0d;JtMr!a;1$UxccHUQTahC9X!cD9e>~w!S0_yt>$<-?Ofo^-!roa{!tR5O z>X#0)wN{?z+qDY`QSmV%hy?tu{DeG`%N4n3?;Hyy=jax8IuzT>mIkl^-R&P5r3!wX zPgA+}AB<=04~Be-Ut zFA{~uicg50DH%HIxMlI&Qny-7Oz43W{>jHKak^6FL8c4 z=PCm0FT<>Jmlz7=>BD~G?l5B0!S@hDytFgrYkYmLuNgnI^|{afCY-vykH9mGS4DHn zptl~OjZOX9QnfD&cX9xz1aj<*3LGS=r4E%Yigf$&Kb<48S)M(6#-MY(m+%LqgI|c; z{IOno+Bh%63>$odF|noYu9u&ql4sTEiyg+MATn7wIX%y%cT=bYORgiHX4YGOJ3=2W zt}MrK(zK!a@4YoPGG9NYe|J$_`+1&CNA}7s0JWDcaJ5lycP-sWrSIz1S2XRQCG?B@ zz~=X6!S2x7vOhwdTxD{OF6IgIF-ZtQB=ZyzxnaXOSnc-Q=dj088cc1cDkaRcaZoB@ zS4=1ZU@kwQ&(pt^guoXuL%SZJPW$w)Smnd|KHbN`GQu5!;YP@x7XInF#QE?zLohk} zyq@jGk{VasHQ({KuCRyB=)6Z9GQ`3Q50{2EgN(GGZGUd!Vxe-^`uxrhccxtrO%}Z_ z0v|!q7^gmY zRu3!%r`@sAI~=9AE3wK#%jtSV%*VfIxjGG{u%{!++or=t3Oj!G%M~By_fzNzP3eI| zy|6h0RLSi(8%(>42rDVAqF|%S2-%OBJ)3UM*Ger{bWkny}^}2sw ztfa%F#7VvVSNIZTp+<3tm4_n^G7i9d-72DI7`{!}5XC8JGUubCeO}#*$bCu?Sblle9;J@b77 zUp5z6ls4@6rpp8`SR4#P6do+*?ky7z*-W?CEdE}*pwN8x*~26I6UE;?Q~L^mm{_tG zlc7G1l(=kcY!SsemFDLPVj(LG+&EEhoJqqFrrF-fMe0wrLn_3?Y%KSJ))WGoJw`P> z{}xz$x#eRs|G-%HhoWJZ;B@ZZOko3u)WKm+SGH`I-i^n8)u$Wns+$uf;Sv>Io`!Ib zeZ+4cd?WH=kTN@#x^B`Ky4>kBMxrWBiz$lL2XVjF;I&Qg=%k#j(bp_I(jZQBFXtY52Up}wweQD_y#kQXClpp%iq{9Ee)s5L%gbe!bI z*;SEw8rGkkoxP>VN28DY(i?$X8cX$w*wHVu{V{}JRJBr_XtOY2cyQ07eTp|SRe#tu z>GyD92@@V9`kT$$@Wn(_KRcX&zC(kUzQ*LFZ*x+z%DQV|zOx{Y=q?-qOIq6hSkESL zLu3Ho>n%4qfP%;3au>S1un_VIyNVc)(()qw&9-+iasPIw2En#5v<+x$lU(-0KVVGK zY`In6;d+X<`UNSSqX&G-7vZz`*xa1rA&qL5dcEZ^B$fb+1m5!NcPCZK;{N%<d*@&UeVcMA)~E*lS=)|1>eCQBEUw;7aW zMUU?&MY9oMlQs_lv|)*AAnwNed3Jui`BXLFql>4xv3{nYvY4IV2^q5|D)3(XiVLp7 zD&HX+K0?UbY})rX(pbC6{MFX~GNcc8?kEYIv3Wf7L-^>IsloQBSZ*$#uu^xYo%7#B zA6fIffwl=w>K1CbEPOr6;a>@{WKa$MhVQE%PB+jiXCJlOOAvBfma_Qou9wW5tQ|4>QM5!MHGOrswiZfx@ zu6k(WFeRZz;YB z96a#w-z{H=r|IhtqzJ^VK7w$QGZLK4*WNkqf7zl6d+%;JF%{}t-1_g~KvVr=>P zC^(=f^ryP#cV^{vUn5=jGIV}hkyPvN#qG!Wt2VqWdv%U3u=>?zyglp|way^8vE z9@aU4>v2{{(7HMGf~d7HR12EB^+ZnboNESf0WvH0(=a}<)eL&Jc-EOB*Ol!Cq}Afl z&phCxo;yZ-#IWUMuj_5RZ>T_8KU&iYl$iEZ;J+mC-ZSX!*qku^_MQw_r~-hR$SEq0 zbp8AY(1tXN$&z~ToOc(FZh%;a1du`YD&s5HvKsf6KXN9fdRlL0xbLVAihh+RgenKO z<_aq}=aGdA5F`8K#BysT?C-b-t9qSn>f6x28|MRC+-=ey{L#4` zsF5uBj@O>sn0TA60Bp2ij`h6E$*ary1#olkq{T`skTnRS(Wt7dV>KFGTcp$%+?<7@;~Y6jFP?N>h}6{#JpQCWHPCeSqE8?}<4T4`CJ>)=AE;1b9tp{#}63 za^H*bkt~icA0YSKyUI!ro-F?HG7+4a06}GdIqU42dEWp;gQ0f1j%axq;DH$c7LjHa z%k3Bf9EkLzpSGH-jEoj1E&A#VYR>C);S9Kt+tjyXgrzR#)D1K3pRC5m(ExDIhdtCt zs_C7624jgPxm90_j?T+mfYPPgs=c&H&RF+4X`cu2;8gCJ{L|@V2kp6F%n60GG*qDy zjn;|{JLGx!#S?MXS8omfMl#97>IkYsq&I0eXgv1}%s&2WN~;-FXtfJts{`*=V`5k* zsJdczJEqWnu!mSfc2nt9D$&GEz!owz*5?E66Qr&?icMii6cBW@3e`*I#19KBB$aC2 zr2*(zh}q7*kNx6&`M_`@3ICKp3UWHxcy`djEgyhoNq(c&Oqm5j4idmVv2Z-OdN4Ss zJ4Fi;ycOUA1b zjpaOMjEoKWAP5Wum=E?MuvVk8R5Cw4aNj|92a_^h@gxT0x~A|82m@Q>xj8%9Y1IMh zssWnPhyQl2Ta>>x6D&%`L#Hdf-7b%W7mQEpAf*@%*Y*?YRy6=C?YMnvK1jCNC~@Ce zO^3>12n53_n3`Q6!r3sTM?$93{sTxJhVn@Vt6>~1;jqNK+p=LH7`+(kAX1#ev0`S2 zsWtt7K_OUFn5QQJR72w~`*gtj38U5fc7;Vqt-tbG;)bC4;crFf2>ih}b5Hn=CO8vn zmv$PyT7eTC@!BE9lr7$<9klmki>DnZSa*NLVy;x#X1?}xHbK~1QVRDe%RLSpOr612 ztng8(i@JEzMKQVg2`3Fle;el31$?YBn zV)DQOr5T9;5=|l{HOvjb&6K95qvw$U*2s}4CvUN%*zB3 zX<46q0bp?e-(F-0Ift5tPOkDvv)uL7cnGt6l+Ea!9f9u3nq8(z|RhRt*DF4^95$~l^ zjz5Jd?|FhV5HX)f!!^4wDYO0G3@yo=#yp*42KAuNxBz!s?Y;U(0jbT;RibI z6;uX;c96z$I~}sHfv18h0Xrbz#r^*2WC5BF z@j#64V1Yw10UJ^&DfG93u=2>-qLru59q|4Aqi6*!ND*njr&uYb~Xxw=glyq zFTD@P^BKbQoHU?EF8+_$3fcR|^JN9vG={j?PX#j=n*avyJs(7T2Y9$(6UPWJmO^1T zt(krty#lO%6okR<09o2neN+Br-VlQF6$XH6$^L!>o}Tw*SS`R2!KWVAjBA?w4lnm} R#=+&lI#GID@(AVke*n{f^A`XB diff --git a/gnome/appearance.yml b/gnome/appearance.yml deleted file mode 100644 index 9720225..0000000 --- a/gnome/appearance.yml +++ /dev/null @@ -1,18 +0,0 @@ -GTK+ Theme: Numix -Icons: Ultra-Flat-Orange -Cursor: Adwaita (default) -Shell Theme: unity-gnome -Desktop Icons: - - Home - - Network Servers - - Trash -Power button action: Interactive -Close lid: - Battery: Nothing - Plugged in: Nothing -Clock: - - Date - - Seconds -Titlebar buttons: - - Maximize - - Minimize diff --git a/gnome/extensions.md b/gnome/extensions.md deleted file mode 100644 index 316612e..0000000 --- a/gnome/extensions.md +++ /dev/null @@ -1,8 +0,0 @@ -- Coverflow alt-tab -- Dash to Dock -- Drop down terminal -- Laine -- Lock Keys -- Removable Drive Menu -- Sound output device chooser -- TopIcons Plus diff --git a/gnome/favourites.md b/gnome/favourites.md deleted file mode 100644 index b0593b8..0000000 --- a/gnome/favourites.md +++ /dev/null @@ -1,4 +0,0 @@ -- Firefox -- Atom -- Files -- spotify From 92c5f9ee75767e0eea51cf8cf0aecfdb30079a5a Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 15:24:35 +0100 Subject: [PATCH 11/25] Add vcsrepo plugin --- .gitmodules | 3 +++ modules/vcsrepo | 1 + 2 files changed, 4 insertions(+) create mode 160000 modules/vcsrepo diff --git a/.gitmodules b/.gitmodules index dff67a0..ae3c547 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "atom"] path = atom url = git@gist.github.com:9f9a4dd799ad01aa0502a09f06cbf454.git +[submodule "modules/vcsrepo"] + path = modules/vcsrepo + url = https://github.com/puppetlabs/puppetlabs-vcsrepo diff --git a/modules/vcsrepo b/modules/vcsrepo new file mode 160000 index 0000000..e3d28c6 --- /dev/null +++ b/modules/vcsrepo @@ -0,0 +1 @@ +Subproject commit e3d28c6f7aa3b1daf7e9d30b55494592a65a2264 From 4f2c9fa75ff62f2451420eba0f553b7bdcad9843 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 16:37:55 +0100 Subject: [PATCH 12/25] Add vim config --- manifests/main.pp | 1 + {config => modules/config/files}/vimrc | 0 modules/config/manifests/vim.pp | 22 ++++++++++++++++++++++ 3 files changed, 23 insertions(+) rename {config => modules/config/files}/vimrc (100%) create mode 100644 modules/config/manifests/vim.pp diff --git a/manifests/main.pp b/manifests/main.pp index ea4e52d..7b40617 100644 --- a/manifests/main.pp +++ b/manifests/main.pp @@ -5,4 +5,5 @@ node default { include yaourt include gnome + include config } diff --git a/config/vimrc b/modules/config/files/vimrc similarity index 100% rename from config/vimrc rename to modules/config/files/vimrc diff --git a/modules/config/manifests/vim.pp b/modules/config/manifests/vim.pp new file mode 100644 index 0000000..74763f0 --- /dev/null +++ b/modules/config/manifests/vim.pp @@ -0,0 +1,22 @@ +class config::vim { + file { '/home/jake/.vimrc': + ensure => file, + mode => "0644", + owner => "jake", + group => "users", + source => 'puppet:///modules/config/vimrc' + } -> + + vcsrepo { '/home/jake/.vim_runtime': + ensure => latest, + provider => git, + user => 'jake', + source => "https://github.com/amix/vimrc.git", + } -> + + exec { 'install vim plugins': + command => "vim +PluginInstall +qall", + user => "jake", + environment => "HOME=/home/jake" + } +} From efc399377c37f24e22a2d5e4056d868397a63d6e Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 16:57:30 +0100 Subject: [PATCH 13/25] Import general config files --- .../config/files}/libinput-gestures.conf | 0 .../config/files}/terminator.conf | 0 .../config/files}/uniemoji.json | 0 modules/config/manifests/init.pp | 21 +++++++++++++++++++ 4 files changed, 21 insertions(+) rename {config => modules/config/files}/libinput-gestures.conf (100%) rename {config => modules/config/files}/terminator.conf (100%) rename {config => modules/config/files}/uniemoji.json (100%) create mode 100644 modules/config/manifests/init.pp diff --git a/config/libinput-gestures.conf b/modules/config/files/libinput-gestures.conf similarity index 100% rename from config/libinput-gestures.conf rename to modules/config/files/libinput-gestures.conf diff --git a/config/terminator.conf b/modules/config/files/terminator.conf similarity index 100% rename from config/terminator.conf rename to modules/config/files/terminator.conf diff --git a/config/uniemoji.json b/modules/config/files/uniemoji.json similarity index 100% rename from config/uniemoji.json rename to modules/config/files/uniemoji.json diff --git a/modules/config/manifests/init.pp b/modules/config/manifests/init.pp new file mode 100644 index 0000000..4345fdc --- /dev/null +++ b/modules/config/manifests/init.pp @@ -0,0 +1,21 @@ +class config { + include 'config::vim' + + file { '/etc/libinput-gestures.conf': + ensure => file, + mode => "0644", + source => 'puppet:///modules/config/libinput-gestures.conf' + } + + file { '/home/jake/.config/terminator/config': + ensure => file, + mode => "0644", + source => 'puppet:///modules/config/terminator.conf' + } + + file { '/home/jake/.config/uniemoji/custom.json': + ensure => file, + mode => "0644", + source => 'puppet:///modules/config/uniemoji.json' + } +} From 07448167ba9af87987d8f350c0490d6113aeeb82 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 17:00:18 +0100 Subject: [PATCH 14/25] Setup shell module --- manifests/main.pp | 1 + modules/shell/manifests/init.pp | 2 ++ 2 files changed, 3 insertions(+) create mode 100644 modules/shell/manifests/init.pp diff --git a/manifests/main.pp b/manifests/main.pp index 7b40617..cba8a25 100644 --- a/manifests/main.pp +++ b/manifests/main.pp @@ -6,4 +6,5 @@ node default { include yaourt include gnome include config + include shell } diff --git a/modules/shell/manifests/init.pp b/modules/shell/manifests/init.pp new file mode 100644 index 0000000..495b573 --- /dev/null +++ b/modules/shell/manifests/init.pp @@ -0,0 +1,2 @@ +class shell { +} From ca6cacc5179f511b5e4924c56ab7563c6e009561 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 17:42:39 +0100 Subject: [PATCH 15/25] Install concat module --- .gitmodules | 6 ++++++ manifests/main.pp | 2 ++ modules/concat | 1 + modules/stdlib | 1 + 4 files changed, 10 insertions(+) create mode 160000 modules/concat create mode 160000 modules/stdlib diff --git a/.gitmodules b/.gitmodules index ae3c547..26eafd9 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,9 @@ [submodule "modules/vcsrepo"] path = modules/vcsrepo url = https://github.com/puppetlabs/puppetlabs-vcsrepo +[submodule "modules/concat"] + path = modules/concat + url = https://github.com/puppetlabs/puppetlabs-concat +[submodule "modules/stdlib"] + path = modules/stdlib + url = https://github.com/puppetlabs/puppetlabs-stdlib diff --git a/manifests/main.pp b/manifests/main.pp index cba8a25..6e0e1c6 100644 --- a/manifests/main.pp +++ b/manifests/main.pp @@ -3,6 +3,8 @@ node default { path => ['/usr/bin', '/usr/sbin', '/usr/local/bin', '/usr/local/sbin'] } + include stdlib + include yaourt include gnome include config diff --git a/modules/concat b/modules/concat new file mode 160000 index 0000000..b783e1e --- /dev/null +++ b/modules/concat @@ -0,0 +1 @@ +Subproject commit b783e1e99def0bf45a391a2ebce5a39bd4174e11 diff --git a/modules/stdlib b/modules/stdlib new file mode 160000 index 0000000..0bb25fb --- /dev/null +++ b/modules/stdlib @@ -0,0 +1 @@ +Subproject commit 0bb25fb19904e8b346a25204f787b8bdc5140bae From 64156e7ddaf2e11a25e872bacf9f63066fe94554 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 17:43:07 +0100 Subject: [PATCH 16/25] Build zshrc --- {bash => modules/shell/files}/.zshrc | 3 --- {bash => modules/shell/files}/applications.sh | 0 {bash => modules/shell/files}/base.sh | 4 ---- {bash => modules/shell/files}/catfish.sh | 0 {bash => modules/shell/files}/javascript.sh | 0 modules/shell/manifests/init.pp | 24 +++++++++++++++++++ 6 files changed, 24 insertions(+), 7 deletions(-) rename {bash => modules/shell/files}/.zshrc (90%) rename {bash => modules/shell/files}/applications.sh (100%) rename {bash => modules/shell/files}/base.sh (85%) rename {bash => modules/shell/files}/catfish.sh (100%) rename {bash => modules/shell/files}/javascript.sh (100%) diff --git a/bash/.zshrc b/modules/shell/files/.zshrc similarity index 90% rename from bash/.zshrc rename to modules/shell/files/.zshrc index 47cd248..5fff79d 100644 --- a/bash/.zshrc +++ b/modules/shell/files/.zshrc @@ -28,6 +28,3 @@ COMPLETION_WAITING_DOTS="true" alias src="source $HOME/.zshrc" -export DOTFILES="$HOME/.dotfiles" - -source $DOTFILES/bash/base.sh diff --git a/bash/applications.sh b/modules/shell/files/applications.sh similarity index 100% rename from bash/applications.sh rename to modules/shell/files/applications.sh diff --git a/bash/base.sh b/modules/shell/files/base.sh similarity index 85% rename from bash/base.sh rename to modules/shell/files/base.sh index 1357e2d..0132131 100644 --- a/bash/base.sh +++ b/modules/shell/files/base.sh @@ -4,10 +4,6 @@ case $- in *) return;; esac -source $DOTFILES/bash/catfish.sh -source $DOTFILES/bash/javascript.sh -source $DOTFILES/bash/applications.sh -[ -s "$DOTFILES/bash/private.sh" ] && source "$DOTFILES/bash/private.sh" # load private stuff # Export some variables export ANDROID_HOME=/opt/android-sdk diff --git a/bash/catfish.sh b/modules/shell/files/catfish.sh similarity index 100% rename from bash/catfish.sh rename to modules/shell/files/catfish.sh diff --git a/bash/javascript.sh b/modules/shell/files/javascript.sh similarity index 100% rename from bash/javascript.sh rename to modules/shell/files/javascript.sh diff --git a/modules/shell/manifests/init.pp b/modules/shell/manifests/init.pp index 495b573..01a84eb 100644 --- a/modules/shell/manifests/init.pp +++ b/modules/shell/manifests/init.pp @@ -1,2 +1,26 @@ class shell { + $zshrc = "/home/jake/.zshrc" + + $files = [ + "puppet:///modules/shell/.zshrc", + "puppet:///modules/shell/base.sh", + "puppet:///modules/shell/applications.sh", + "puppet:///modules/shell/catfish.sh", + "puppet:///modules/shell/javascript.sh" + ]; + + concat {"zshrc": + path => $zshrc, + owner => "jake", + group => "users", + mode => "0644", + ensure_newline => true + } + + $files.each |String $file| { + concat::fragment {"zshrc concat $file": + target => $zshrc, + source => $file + } + } } From 433976a7cdad0ec32b3f6d41e6d5dc25676648a2 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 17:47:01 +0100 Subject: [PATCH 17/25] Remove dotfiles reference --- modules/shell/files/applications.sh | 2 -- modules/shell/files/base.sh | 1 - 2 files changed, 3 deletions(-) diff --git a/modules/shell/files/applications.sh b/modules/shell/files/applications.sh index e57082b..afc50e1 100644 --- a/modules/shell/files/applications.sh +++ b/modules/shell/files/applications.sh @@ -44,8 +44,6 @@ alias ym="yoga mode" # miscellaneous software aliases alias serve="python2 -m SimpleHTTPServer" -alias make-dotfiles="cd ~/.dotfiles/ && make && cd - > /dev/null" -alias edit-dotfiles="atom ~/.dotfiles/" alias vi="vim" alias regen-ssh-conf="assh config build > ~/.ssh/config" alias yolo="yaourt -Syyau --noconfirm" diff --git a/modules/shell/files/base.sh b/modules/shell/files/base.sh index 0132131..eafb467 100644 --- a/modules/shell/files/base.sh +++ b/modules/shell/files/base.sh @@ -15,7 +15,6 @@ export TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S' export PATH=${PATH}:${ANDROID_HOME}/tools export PATH=${PATH}:${ANDROID_HOME}/platform-tools export PATH=${PATH}:/opt/genymobile/genymotion -export PATH=${HOME}/.dotfiles/bin:${PATH} # bash aliases alias refresh="cd $PWD > /dev/null" From d2e48f9be60dbd056651ab6f8621b8ab30b4251f Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 17:58:22 +0100 Subject: [PATCH 18/25] fix nvm --- modules/shell/manifests/init.pp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/modules/shell/manifests/init.pp b/modules/shell/manifests/init.pp index 01a84eb..f50d50f 100644 --- a/modules/shell/manifests/init.pp +++ b/modules/shell/manifests/init.pp @@ -23,4 +23,12 @@ class shell { source => $file } } + + file {'nvm': + path => "/home/jake/.nvm/nvm.sh", + owner => "jake", + group => "users", + mode => "0755", + source => "/usr/share/nvm/init-nvm.sh" + } } From 7313d80c19a275f211dc9c669612cd703e1f9833 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 18:14:12 +0100 Subject: [PATCH 19/25] Add bin files --- {bin => modules/shell/files/bin}/json_format | 0 modules/shell/manifests/init.pp | 9 +++++++++ 2 files changed, 9 insertions(+) rename {bin => modules/shell/files/bin}/json_format (100%) diff --git a/bin/json_format b/modules/shell/files/bin/json_format similarity index 100% rename from bin/json_format rename to modules/shell/files/bin/json_format diff --git a/modules/shell/manifests/init.pp b/modules/shell/manifests/init.pp index f50d50f..6982b68 100644 --- a/modules/shell/manifests/init.pp +++ b/modules/shell/manifests/init.pp @@ -31,4 +31,13 @@ class shell { mode => "0755", source => "/usr/share/nvm/init-nvm.sh" } + + file { '/home/jake/.bin': + ensure => directory, + source => 'puppet:///modules/shell/bin', + owner => "jake", + group => "users", + mode => "0755", + recurse => remote + } } From 6bd8e3af6285b3c12c183e353c33c60dd6efa3bc Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 18:18:18 +0100 Subject: [PATCH 20/25] export home bin --- modules/shell/files/base.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/shell/files/base.sh b/modules/shell/files/base.sh index eafb467..6893f22 100644 --- a/modules/shell/files/base.sh +++ b/modules/shell/files/base.sh @@ -15,6 +15,7 @@ export TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S' export PATH=${PATH}:${ANDROID_HOME}/tools export PATH=${PATH}:${ANDROID_HOME}/platform-tools export PATH=${PATH}:/opt/genymobile/genymotion +export PATH=${PATH}:${HOME}/.bin # bash aliases alias refresh="cd $PWD > /dev/null" From dc527c216b0e28d486c3231b2011f773676d0109 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 18:43:29 +0100 Subject: [PATCH 21/25] Add global gitignore --- .gitmodules | 3 +++ {config => modules/config/files}/gitignore_global | 0 modules/config/manifests/init.pp | 12 ++++++++++++ modules/git | 1 + 4 files changed, 16 insertions(+) rename {config => modules/config/files}/gitignore_global (100%) create mode 160000 modules/git diff --git a/.gitmodules b/.gitmodules index 26eafd9..a262bb9 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "modules/stdlib"] path = modules/stdlib url = https://github.com/puppetlabs/puppetlabs-stdlib +[submodule "modules/git"] + path = modules/git + url = https://github.com/puppetlabs/puppetlabs-git diff --git a/config/gitignore_global b/modules/config/files/gitignore_global similarity index 100% rename from config/gitignore_global rename to modules/config/files/gitignore_global diff --git a/modules/config/manifests/init.pp b/modules/config/manifests/init.pp index 4345fdc..caa19ef 100644 --- a/modules/config/manifests/init.pp +++ b/modules/config/manifests/init.pp @@ -18,4 +18,16 @@ class config { mode => "0644", source => 'puppet:///modules/config/uniemoji.json' } + + file { '/home/jake/.gitignore_global': + ensure => file, + mode => "0644", + source => 'puppet:///modules/config/gitignore_global' + } + + git::config { "global ignore" : + key => 'core.excludesfile', + value => '/home/jake/.gitignore_global', + user => "jake" + } } diff --git a/modules/git b/modules/git new file mode 160000 index 0000000..4e4498e --- /dev/null +++ b/modules/git @@ -0,0 +1 @@ +Subproject commit 4e4498e3db218cefc27e40b7eb4e442177ccab28 From c5329aed95ede9dafb6a33333b51979e068f5ff1 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 18:47:17 +0100 Subject: [PATCH 22/25] Extract git to separate file --- modules/config/manifests/git.pp | 13 +++++++++++++ modules/config/manifests/init.pp | 11 +---------- 2 files changed, 14 insertions(+), 10 deletions(-) create mode 100644 modules/config/manifests/git.pp diff --git a/modules/config/manifests/git.pp b/modules/config/manifests/git.pp new file mode 100644 index 0000000..913a03e --- /dev/null +++ b/modules/config/manifests/git.pp @@ -0,0 +1,13 @@ +class config::git { + file { '/home/jake/.gitignore_global': + ensure => file, + mode => "0644", + source => 'puppet:///modules/config/gitignore_global' + } + + git::config { "global ignore" : + key => 'core.excludesfile', + value => '/home/jake/.gitignore_global', + user => "jake" + } +} diff --git a/modules/config/manifests/init.pp b/modules/config/manifests/init.pp index caa19ef..71a1790 100644 --- a/modules/config/manifests/init.pp +++ b/modules/config/manifests/init.pp @@ -1,5 +1,6 @@ class config { include 'config::vim' + include 'config::git' file { '/etc/libinput-gestures.conf': ensure => file, @@ -19,15 +20,5 @@ class config { source => 'puppet:///modules/config/uniemoji.json' } - file { '/home/jake/.gitignore_global': - ensure => file, - mode => "0644", - source => 'puppet:///modules/config/gitignore_global' - } - git::config { "global ignore" : - key => 'core.excludesfile', - value => '/home/jake/.gitignore_global', - user => "jake" - } } From 5a7dafe1fced958f3a76fe840aee306f8d7d6ca1 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 18:59:43 +0100 Subject: [PATCH 23/25] Add fonts config --- modules/config/manifests/fonts.pp | 21 +++++++++++++++++++++ modules/config/manifests/init.pp | 1 + 2 files changed, 22 insertions(+) create mode 100644 modules/config/manifests/fonts.pp diff --git a/modules/config/manifests/fonts.pp b/modules/config/manifests/fonts.pp new file mode 100644 index 0000000..ec711fb --- /dev/null +++ b/modules/config/manifests/fonts.pp @@ -0,0 +1,21 @@ +class config::fonts { + $fonts = [ + "11-lcdfilter-default.conf", + "10-sub-pixel-rgb.conf", + "30-infinality-aliases.conf" + ]; + + $fonts.each |String $font| { + file { "font config $font": + path => "/etc/fonts/conf.d/$font", + ensure => link, + mode => "0644", + source => "/etc/fonts/conf.avail/$font" + + } + } + + exec { 'update font cache': + command => "gdk-pixbuf-query-loaders --update-cache" + } +} diff --git a/modules/config/manifests/init.pp b/modules/config/manifests/init.pp index 71a1790..5dda184 100644 --- a/modules/config/manifests/init.pp +++ b/modules/config/manifests/init.pp @@ -1,6 +1,7 @@ class config { include 'config::vim' include 'config::git' + include 'config::fonts' file { '/etc/libinput-gestures.conf': ensure => file, From 314e7e162f4a540739a25c76593e4676dab9888a Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 19:02:46 +0100 Subject: [PATCH 24/25] Remove the makefile --- Makefile | 48 ------------------------------------------------ 1 file changed, 48 deletions(-) delete mode 100644 Makefile diff --git a/Makefile b/Makefile deleted file mode 100644 index ad43936..0000000 --- a/Makefile +++ /dev/null @@ -1,48 +0,0 @@ -DOTFILES=$(PWD) - -install: apt bash bin config gnome fonts yaourt - -bin: - chmod +x $(DOTFILES)/bin/* - -bash: yaourt - ln -sfP $(DOTFILES)/bash/.zshrc ~/.zshrc - mkdir -p ~/.nvm/ - ln -sfP /usr/share/nvm/init-nvm.sh ~/.nvm/nvm.sh - -config: yaourt - mkdir -p ~/.config/terminator - mkdir -p ~/.config/uniemoji/ - ln -sfP $(DOTFILES)/config/terminator.conf ~/.config/terminator/config - sudo ln -sfP $(DOTFILES)/config/libinput-gestures.conf /etc/libinput-gestures.conf - git config --global core.excludesfile ~/.dotfiles/config/gitignore_global - git clone https://github.com/amix/vimrc.git ~/.vim_runtime || cd ~/.vim_runtime && git pull - vim +PluginInstall +qall - ln -sfP $(DOTFILES)/config/vimrc ~/.vimrc - ln -sfP $(DOTFILES)/config/uniemoji.json ~/.config/uniemoji/custom.json - ln -sfP $(DOTFILES)/config/assh.yml ~/.ssh/assh.yml - -gnome: yaourt - rm -rf ~/Templates/* - ln -sfP $(DOTFILES)/gnome/Templates/* ~/Templates/ - gsettings set org.gnome.desktop.interface show-battery-percentage true - -yaourt: pacman - yaourt -Syau # Install any updates before extra packages - yaourt -S `cat $(DOTFILES)/yaourt/packages.conf` --needed - ln -sfP $(DOTFILES)/yaourt/.yaourtrc ~/.yaourtrc - -pacman: - gpg --recv-keys F7E48EDB # Add custom key for ncurses - sudo ln -sfP $(DOTFILES)/yaourt/pacman.conf /etc/pacman.conf - sudo pacman-key -r 962DDE58 - sudo pacman-key --lsign-key 962DDE58 - gpg --keyserver pool.sks-keyservers.net --recv-keys 2E1AC68ED40814E0 # gotta be a way to add to pacman, not my GPG - -fonts: yaourt - ln -s /etc/fonts/conf.avail/11-lcdfilter-default.conf /etc/fonts/conf.d - ln -s /etc/fonts/conf.avail/10-sub-pixel-rgb.conf /etc/fonts/conf.d - ln -s /etc/fonts/conf.avail/30-infinality-aliases.conf /etc/fonts/conf.d - gdk-pixbuf-query-loaders --update-cache - -.PHONY: apt bash bin config gnome yaourt pacman fonts From ca419629635361601497c03f842133c1127191c0 Mon Sep 17 00:00:00 2001 From: Jake Howard Date: Sat, 12 Aug 2017 19:08:23 +0100 Subject: [PATCH 25/25] Cleanup gitignore --- .gitignore | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitignore b/.gitignore index 9ab6d4e..c1b0a7e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,3 @@ .csync_* .owncloudsync.log config/jetbrains-settings.jar -config/assh.* -bash/private.sh