From 9c6dadff278a240711407c3037b4ae9f1447887e Mon Sep 17 00:00:00 2001 From: Botspot Date: Tue, 30 Mar 2021 15:28:17 -0500 Subject: [PATCH] Add Downgrade Chromium app --- apps/Downgrade Chromium/description | 6 ++ apps/Downgrade Chromium/icon-24.png | Bin 0 -> 1722 bytes apps/Downgrade Chromium/icon-64.png | Bin 0 -> 8980 bytes apps/Downgrade Chromium/install-32 | 133 ++++++++++++++++++++++++++++ apps/Downgrade Chromium/uninstall | 53 +++++++++++ apps/Downgrade Chromium/website | 1 + data/categories/structure | 3 + 7 files changed, 196 insertions(+) create mode 100644 apps/Downgrade Chromium/description create mode 100644 apps/Downgrade Chromium/icon-24.png create mode 100644 apps/Downgrade Chromium/icon-64.png create mode 100755 apps/Downgrade Chromium/install-32 create mode 100755 apps/Downgrade Chromium/uninstall create mode 100644 apps/Downgrade Chromium/website diff --git a/apps/Downgrade Chromium/description b/apps/Downgrade Chromium/description new file mode 100644 index 0000000..de3d432 --- /dev/null +++ b/apps/Downgrade Chromium/description @@ -0,0 +1,6 @@ +Change Chromium versions easily. +Chromium 65, 72, 74, 78, 84, 86, and 88. +Uninstall the app to go back to the latest Chromium version available. +Beware that downgrading Chromium versions can mess up your config folder. To be safe, this app takes a backup of your config folder. When uninstalling, you will have the oppertunity to restore the backup config folder. + +All deb files are downloaded from http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser diff --git a/apps/Downgrade Chromium/icon-24.png b/apps/Downgrade Chromium/icon-24.png new file mode 100644 index 0000000000000000000000000000000000000000..1a6b15bd461282a60e090443f0fcb8d7e90d5d86 GIT binary patch literal 1722 zcmV;r21WUaP)obN7U6Fh^%_^}<&Nu9v_0iZc+^AZN-!5h0_bb`B`g#m5 zC7N-0aU{OTT!1Sn3-CknVto7V(yzzXEMN7%z+-`PqK1+z-HjSK+JjWMoD_+ls)=B9 zCBDv%!_VzY@kMepxasy9U>;U5Fd`4_GGl^6d1GwVXSOR`G0^f>r_5RV$IeL zqYAbDJ~-$rMU~7G17-udL*@yvOAF07N0RaHxNPU+!Y~qT!WjY`rn6Bc$C-CjxR?-u z&W$UI?t<6XvxggPS@L$%Jn-(V-V#*Hyd26rLF>mciS7P z#YuxwfS+39iI#MCjOGMkB-VtHqD`8+BpnTzLu13Q;_``9e41hrpuHqhU$`DQGAVY< zc1QMH8Jbu7<3#)m=#Q9;4)4hr(oey)RgdDz?#I!ieFU{HK7z5_r!i9e46g2V`BQ)! zb0aHv+7pm*Aq(I2F2`qNT8B}ClYs%k=pKq?c~Uf@;h88Qs=plxldWP;=hR@GuMX-Y0@KIBf3EE;Es@!$-lMwd0xR_rhvjiG~jt4lHBnYh-9BV)&5GULrWx#mW7CWa=!{ zO%HP$l<7UTg#;M^1ws7y`@a29q2kk~*q`RF#ovjw;-V2C6eGz`0 z=fE<1#=*;|N(D(qW+oc z7xf$FqoQp9x~}tJdHtAm@+{ciGmZ&#ZFJU99m0;Cm9V|{B4A{V%>gU<2x{tH&57Rb6QC4suos%Zo@hj# z?Kln;OhwIGOq7tP))6UKA7Y?~+FzH2fkm_6SY-X=hBmgL1_o_-Z(xMX04a|Vp@Zy1D83x~}ShtaYY8*A#%ET^kxoX~W!ug)C{ClqKjju(Nn~5O! zs1X6%)S_z%rHd!bl_ETo%9#jWQMicDOJke_7?*@!51im2T^Yse`5yRvcMo{Y{-n@D z6^qQr>eBia5{a(D0Ck>5ES*SLpi~gJ$ecyFJw63?x_A1U$jCOwa$W3W*cwbEJEUJt z_^;Mbxvbe#qJuGCBfL;hT<`e7I}gx1qv>tO1;_Kw4IOBv+;4G0uU&Qa#&BT5gaq}r zczt7eYTB0Vp=0V?4I(zHp_8lP!gd}!}RftV&w%NpHFkS)M*kBtkv7OjSIyE`2`;EZQM)0rK%JFtp1b%TU7r*=R z9S8xacdjZnwqZT4D0fKReKM;ERv1dH=0({mENy zu5tQsac1wE=MQ}H*41OUJCcK2jWPISTO9u7N}&+21^2GkC^CL^ArHT~T!9y3Lb21^ z83+B`FtyAdFGK~Q*UK62^+e+hA?kcoFy5+*#7}m|c92bJ;f_!jmO%z_rScW_8QFymK8b3W~#Lqu^Nv)4x zJA}J8PygNrOnOLC_`NH(e--d;^@X_|abfp+ zjbS(t>W6M88`Rn@Qu1XU|MFA@{)dFb=YFH$w`C_D8OTdRx5&4}!AhMVPnbrw#d8VPI@>CsUruGI$Wj6Hf?rML zD6l&O==)-D^Z|nS+2I87h77zeDtRe77$fqxM!lSHIXplq;Ftg>vG0fxQVnN?@Hd43 znkbdT&)-}bhHm-Zsft`&cy1Ryx^=$)8v*~~)WrDSj%o}@6i!OHV&oYWp5&FtKqb{d zDP^}L%3n%!37#j~IE-{-P!i<>iQl=!cv^2EgARK)(}N{Ir% z_fsL1{HVp$2vK;CU<+Ko>wvx z@ZYfaJNL1WsWY-3P6{q3aARI<2@;JR0NOlHTnV5gM{)kR2o5RRU%4#hPltrv$tRh z@H|KW{ehKbD%2ml<^F>=&q2D)|C$ntb5ig3=(Mgdz0oU4DphE6@CHLBw zSgT|EMV^!>jgV&de6Wvrf{l95?WQRF?yW}E6x|R7yp|HG(ucrkmXth6ph5CIuO@}4 zbmHfa$oJAWs4AuvKSRZ^Dts*Ivq@5d=fl7-2uw$k_1W%p{OFyFxOw&Hf8G;5SnBLH zI@FPykrIV80Y4zQMPNg24$Ay0Y!)ccB!Q2sBrSNH`OByg9BcPEi3S~=N?{rtUg|Cl zPoR?VT0PfUK`Lw(Do{!ZlHZ?+5@>b=$MVR?vJ^JiTd8BL3j8iEex8aPlhONBvmMu=)bRLnW7z#l$*D^D!vuLv{wPg~z)P&= z=}K6nz*B-eMj$jP62+5kmXl$6kd!u23Qv@h=HdyT(dEm()hdR^T>r)KH01;QK7yXq z!SX%)E-pT&XRw1LAq+&0#WV1mGYgfDwm2@tZuD_Qkr-&R1aZq?>;2P5w*SX{!beM% zOy}xqskpdhbslyJ0o8U36)>J4Wkxbe1uQ|<+gqp;E7b|%>-Dl4veV-bBcJ!Tk~EO-rovt;T7j2~GO;5$ z664F=@Xm%D70ijTzOSbK)ByGF>!&)UrNjp}kEvOmB)q@DD9)RJcf_r4io2f;@l%my zBpGSu`Ke%EjLQj8y640Em4j0mk@M%GSaLGj(GK0Q%P_RA0aC_ zcH}24M3BP|P$!0cdhbTOeeF2TAKr@LzD7*dCgH-twHWBCMO*P4eDdz)&OZwN(AJ*m zZ(com@12*r@Y1<5wv_nz?F;zm%piXH!Hc-NB}2J4r!tm2<|1XyW{A1Vd}XAV22JAj zl{83y53EdzL|jxL*0!z2(eYu_O3O;{t@Xu7lBgHuq+oQU6K}{#uP(__RcFhF78JU)9lW^z46S(_oEN;nrw`^#|@re<%mfB)Z%cI!Y_!w$)EHKn!heN&g z*j#3Xkrqo_J3fT-6Wti7n1{~N*;K;4kFHPsTNRWQ1y1gf2IkzAN~BNam^E+y~F%QSYDA}vC5n%(fvnmfKxAtH>Cl#Z^9mtgE8HFH{ z&{&<1ERk${bTs?|;t&~Kgox-uEKe)L_`Ypm+2vZ_U5kX6V8loHs^=|2L|aAxuI-zK zO;rYb`ud}|wC7R0a#Xv2cK9(o-*1M&EHjh`PD5p=0j((pveU$=qJ3CI6|2>XJBA6$GL_`cdqyHN*B2GwhT5=LgJiq}>d!A27qkEgAuQeyr0B z=f|dDZPqkYg-(;8nBmH(Ihw1}aq{41eDKD(JAVLPBNxxz!WG|t+0hEaeTd7j&BnwPn{UUbCQQFK`Z(u@cp!d zFwZ<9V4HOU2z;#uK4u&_qc5Xq_bV`8ei+|fRFB23%avE8i%BL(sx;STqc!yrOf;Ec zZ;cry8qClhXNH~>Gh9EQ5i+>a45x&Y$qqBTIxerLPD6dnGz`h{w@;Yi?in+@cjeo- z{rdB`cH!XHdyLu3nbheb_4Q&5n=t zmz^FbH4aC0dU<4DusSvb9gSsp`NBaQoESyH=y|wwT!eY*A(%(*g?Z&E0bMJr8|J|~ zHA1|1z}z^2d5!0EQtH(4**3Wd4GvUhNq-n@3|5lvN)X^lW@wEvL;rF!d^lx>147Jt zQNWf$GxeTxLuR;j%uGdpC`S~sRR}n1hO^thgNdy%$j?gDTIAXt#*mCk<7d|4j^J9> z8w775U{R<&7RqvzvK1ccf(B`YHx_52Q(W8>aVkLd0-}O)as8MDbCE8_*WOryOXnxC zV(UdL+jtcbvdnFUG@wca)%t4I!EVq9QL5na4(NYCZZR+tz?QZ{njcfc!|115&PS1$RfCkW z{>~aWl}{jMokEQ4!pR8Q#g06Y_9hxx&aF^@|g&keN299i?Fi3t>wYcYmtBuGB) z7nf!g*vOn0GME+_HZmr+RN&0f?Z{fUALbcHR8F@~UWfV0quRo0k zr3jc+e?}uhDWO3pV9i4*u}(_^ht2x2Vp$a^%JxT>D1apNlsPHcx5a3YClORbQ<#JhuT#cWJ|nyi7htDvYyb1GYrTNHoi8f_j$Xcn7297z#PC%` zfJ@gUn6H?Gx!)+vi%!Dad9#)VN(qd1`9uCts)H|5DYMum4K3yVD9Vy4vMvmVTD0i) zrfAV80VITFa@T4z>|dijezw;P&-H0lf+~1ruN>Q-g^g?LCk-Lt4quso&kMFwKEOp4 zm>yd!b5P_&Wrs>D8-)Q$f%7tJbI@7qVuuqlJnfNVolRu|_9E;%E+BpDOGp>s`_I26 zUhpCu<(PZVB{_agONXLowN#)nE~?UjSLuqV)qxj0^x7KLL&Qj{O+%#O#yTIvVE*G6 zS*7_vO`s<3Q)Jy-ewdbZGD$MT-g5#q3IV8ElF3MR& zo+_9fV67hWb&^qCm#Fgm;I8#(bazCNnBma6M%CsX+A@Hdly~en{06STJntAbpLzpj zd!@enkHKA{Pi2^wJgY6Hg{lB+9!iByT?qp^5v%ppsEA06k5vOuhmhS}`~>#3Ojpuo z=_3gwBH~XsZH71yJ@hx@|%Ln;Zp5^1gQBHF%0Y zC_l)aR85e|d72;7!egtpoHpwuG-w1_YL#Q<${OY1DSk6hp7cHRuY5weey33*fO$^> zxXx~rj&N8rz|-rs^2pcoJ--d3^|z!&54tA`@V~!UqB&Hw=SN5tiZ!8z6qBOBIW)5d1hwd7)LYZ=O#HYiXefIeUzvP(tZqIpUK8NXitT_ww4LG^C0|Tuo=*)du0VfH~QC~Mfl>60DZC0QM5I9L-m&mnt`3%$< zA3AQ>=sRnG2R2rxTNY8!Beo?;$mMT!dCHmGwT3?{I z(tX{nI5gUf;jTPGDcawwdp#XU|~#9wI`0 z?-`P^L%xj23Rd!-ue(19U>`s)u#0t8vJdSJQYx?#0u~4naS^@<3-%HtNx;V521Q0z zdWr_7{CVZ{B!JN#JNKqU`zoHSIin)42y)({4MHmV>-4hMpi6#0zpr|zGDu@&H-ep` zBWQ0ZQS%0;#iH;h6)?^LEQ6dAc1sDI8rDkTx>RX?qz^dUs`UsYfXz~+e6Bdl^%sVW zm7yPy07m&4y#stkZ-fYTv9!h{A+UKV{OkPHbM^YHCsovQGK{E{L4{r5_ThFc@EcS) zuOcj^juB@iXgU14@&--zU3zIN(pT+6Ww1(rUaR*5Mf&@tC3fspWVh56so^Ny zKcb9{Wlwc|dJ{x1U`I%0aC)TktF}2xJ607l3)!iD?-<opQs z_E_pj0?m<8XK7@EMCsErcx-j*d zDpq?0krB&OsxkVjg1>`oCj;`mwA~-NI{}YYXwjz<7;Td;m^^|iDfM|Ao;Gt(zT9HU zkdYX$JSjg?0VZ&&fcK2FsR^=Aa8c$*WsrcS(kR(GS->N~0j`mDuwP=KWVvt0I_%rN z4(ZLiRO4eFKcVHfG)7O#L^!Kns)OYQy~Q;(ICc1X3T)S-ovXj6^g%ah=@5s?Ri3CQ zh*8^XDOLtF#2L_-U{GeqmbfQDyXP9t(IQU3BxFmzmJ;0=kHg<#t|BrmIU<3-@tL){ zHUoB%TA7rKp9`fDIIk2L;ZiLPQaRn02k_7$lcwYo4YYF){m0>9L#eN=l0!!AKGml`1g3*`u7^qq8Y4?(R#gC++afV64bdhssJ+|PVsLFe3UgP&K5ZMU+y?Ygw?U73 zl}>;OtcehlCukd|b8PeB;w(*?hl2vo6Yt8JsiMrN5-4jvTi!E++H*c;*`p!yIo+Qf zB0b`8&y(2IpM(Co2#ohf9sB)_rQwQz(!vaH8cSihQJJ2M$Z!^!Q~CrSH5`igo#F5- z_J&ufk5Yqa3ysx+>9MLj7}dow=^DqC}E04CCSn;iWzJo<+M}-y8LO&wa?{ z3m$r0Du!1MC(mrj^V-PMH=9#A+6J68ayuw*j=rG=M=~} zfoh>oO!hCrfsqny?M%b!EcN(fQ;U|Cy+^@zDzE!?b`n-@Z5rfFV zP(=!(ZW@%h=03Di!u0g#FQKtDIzT$C$oAGjx?y z(Dn+nF*p{6NEaxPL`?2y?5-X0!U?C1##TQAty2dKyX zKHh9i5$NlRlw^N(J)pa_LR#(^6s`2Y`ldJ>?))xBSASOlrSw&gKcE3+|4&b#tvXrn(|@ZID_~BcX^J z3x|KbKO7}B!Uuv?{yT|E_&QZV!k9MxezsWRWd-K|8`#<|RE8Op;)Cq+c;w07Em#?i zV2P-|mn-}QsG1+VoYZqhnx#pVr^EnMmu2JF{$Vt%&Qh=EXBpAB>IXQ~`GiscYdhVa zGUwhOuLscS8GS~a$H&%8Lz9%rx|m1Mo30Vlo%}uAI_Kx}N3RdAF3sv}t}Rk!Y+^iG zwY~%#Hx>q;3Lm&+c_5(4Ujb(H*&dtxz%)716WpX;2evGg&-h|ViYtQCmZGRS1qHHV za>CRMK_xKC?B_`aLC&2$Q*Cxc1iPTVA_Jp?RqFa6FN|;xU}w*KwWY;8XSAsVrGh@K z63_#v49)`dhT;4f2sSq$^q&kU44jTwt4GkBJMY~;3SO1Nn%wC_>l(f)$qd6tccw^l z5mNht5W6i*f#;Sv0TD3$ffr94615#9wV5i_gDF8jAbBK0>ngRawZ-y2TejJfGFD=? zv&BP#0`1}LV=1%65Ad`s?n2L=^%P>mJaFQ`CNwqXV7bo>)TB+v`h0@|cDzT+amt)- z&wYPxd=fa@UgkSZurqOn0`LEivTUD1W2Nyo{89J6O8{@xdCRu5$9Icf3>(Y&2U)b+hiQ*tmVhM*tRe(&I{vgYVIF~YhzapQes&Tzt#8Ia;~bRA zAk&fl9hLja_19@~XP$G{=hc0h*_m2krUAP^=6rR;W9Y4L!sgcSw|;%yKj_aQAUQ6? zwyrYw{;HH^FzyXO%;rFZbO$1AU62B6qeqra(!(HU>m|{&v0@spA6_Jez-J0@cAX@` z^!cat?lVRD2by71tqYn8pF)wJK}DTL_nhwRs>ax!2;n`xLO>9LI|4KX2zZYIFO?E(oG5G4 z&hmq63?cRpt}hUjsm10Zc+-aKOg}3{s<(%QdK{Q0=9m+X@Tdi7E}MzA>X>QNjPXf5rO+wflaoi;Vuj$7*}xyZZ5eFoALFy_a7NY?an^EH02<-tZQ4Z+Qx9O;7$p(hEJ^eJ2lf&FwI5Gkcy{Ob)*)$1 z+Cz}swN%PmfHFW<0WOw8szU7*2odxGf>Il(@_gY#dyRATG@1QSCrJ;Osr!I2Hyl}I z@ra9`i_F-k(3)h>E^;<#xlXg=ULReb>A?Fpj%Y;iIOqQy|0mS%icX9>B%N_R%hIiE~#92o0NqRiWP(12d>8k6^EiYPrs66EKIL7q)A^0l0BU zQew@ch?^_rZq|QCc|ivIiNDN`rA@b;o4dyMkM^OjDGlM(o+<@61~Vm?2C6isNomZ| zN+qiUfm0clx;jj0U@|{XFH7~<&Dj?5(OyVPTB;hQ?11khVW9!t8Pk>I+3cJh)J9&` zepUL$G*z4!G+?ap@35`LfC3)_;un9LzXSTq{#@R4JGy_kpFcNiDosR5Nq`!dNPw4& z${dn76|!OC;$xCvt6yd_ZKatmzB2087IR@|y+~c}V_VGbFv8CcQ9m@mIL{!tKSR}W zPIqeKqekogDEC*S^c~+Y4VxPtLsNMWwypI+L(V+Zlx2T2|1e>?4fQqVW+zA8U%uQM zL;YD;)fj~6VlQ~RSt}JN0%Shm9^w+2DX0iOR@?6SMHbVAm!-b8YCs|Z<#`c^v-@uf zc+}J15;L3e;5R^Yd>SDu0C#|y4*Xrv(P3AtEq)XYC4t<3xIfTc`_2B#jOkWiwbHh; zvFHjfi)~(;h1hgAMS!17gYLOrk_uY%Nd(iwL2sPq>y^Ru8-%D8!SMBTQjssomgsxU zLt~`W?I>**w>?JN=VKWp5gc;Z0bbZK1DAGvADi19)pmSoLB_?>{N;b0f0{DgF73>G ze0W`BNq5U?g{Ix-y|QM=x>s=2PX(^cfz(Xo$DvoW9|)S&LU3*4FgE&lBFUPohj=YKfZ{55YqJvGzUchyvPHkIGu zZ+_cr^N<$pqqfbhE#||)!xACOmZp&i83##n`K~2oLqW6CJ*^KP6$= z|KI;S{qNmsYI0{)6eKR^W=lf2*Q?$hc0UP/dev/null 2>&1 ; pwd -P )")")" + +function error { + echo -e "\\e[91m$1\\e[39m" + exit 1 +} + +#variable for all chromium versions supported +VERSIONS="65 +72 +74 +78 +84 +86 +88" + +#chromium version can be specified by $1 +#usage: /path/to/this-script 78 +if [ -z "$1" ];then + LIST="$(echo "$VERSIONS" | sed 's/^/false\nChromium version /g')" + + output="$(echo "$LIST" | yad --center --title="Choose Chromium version" --height=290 --no-headers \ + --text=" Which Chromium version to install today? " \ + --radiolist --list --column=Tick --column=version --separator='\n' --print-column=2 \ + --window-icon="$(dirname "$0")/icon-64.png" \ + --button=!${DIRECTORY}/icons/check.png!OK:0 + )" + button=$? + + [ $button != 0 ] && error "exited chromium version selection list" + + #get just chromium version NUMBER + output="$(echo "$output" | awk '{print $3}')" +else + output="$1" +fi +#wait until chromium is not running +if [ ! -z "$(ps aux | grep chromium | grep -v 'grep' )" ];then + echo -n "Please close all Chromium windows first." + yad --info --center --window-icon="$(dirname "$0")/icon-64.png" \ + --title="Close Chromium first" --text="$(echo -e " Chromium is running.\n To reduce the risk of Chromium profile corruption, please close Chromium first. ")" \ + --window-icon="$(dirname "$0")/icon-64.png" --no-buttons & + yadpid=$! + while [ ! -z "$(ps aux | grep chromium | grep -v 'grep' )" ];do + echo -n '.' + sleep 1 + done + echo + kill $yadpid +fi + +#All urls acquired from http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/ + +#Set url variables based on selected version number +case "$output" in + + 65) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_65.0.3325.181-0+rpt4_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_65.0.3325.181-0+rpt4_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_65.0.3325.181-0+rpt4_armhf.deb" + ;; + + 72) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_72.0.3626.121-0+rpt4_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_72.0.3626.121-0+rpt4_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_72.0.3626.121-0+rpt4_armhf.deb" + ;; + + 74) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_74.0.3729.157-rpt5_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_74.0.3729.157-rpt5_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_74.0.3729.157-rpt5_armhf.deb" + ;; + + 78) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_78.0.3904.108-rpt1_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_78.0.3904.108-rpt1_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_78.0.3904.108-rpt1_armhf.deb" + ;; + + 84) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_84.0.4147.105-rpt3_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_84.0.4147.105-rpt3_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_84.0.4147.105-rpt3_armhf.deb" + ;; + + 86) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_86.0.4240.197-rpt1_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_86.0.4240.197-rpt1_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_86.0.4240.197-rpt1_armhf.deb" + ;; + + 88) + cb_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser_88.0.4324.187-rpt1_armhf.deb" + l10n_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-browser-l10n_88.0.4324.187-rpt1_all.deb" + ffmpeg_extra_url="http://archive.raspberrypi.org/debian/pool/main/c/chromium-browser/chromium-codecs-ffmpeg-extra_88.0.4324.187-rpt1_armhf.deb" + ;; + + *) + error "unrecognized chromium version '$output'." + ;; +esac + +#back up chromium config directory +if [ ! -d ~/.config/chromium.bak ];then + echo "Backing up existing Chromium profile directory..." + rm -rf ~/.config/chromium.bak + + cp -a ~/.config/chromium ~/.config/chromium.bak + +fi + +#download the files +echo "Downloading the packages..." +rm -f cb.deb l10n.deb ffmpeg_extra.deb || error "Failed to remove cb.deb l10n.deb ffmpeg_extra.deb" +wget -O cb.deb "$cb_url" || error "Failed to download $cb_url" +wget -O l10n.deb "$l10n_url" || error "Failed to download $l10n_url" +wget -O ffmpeg_extra.deb "$ffmpeg_extra_url" || error "Failed to download $ffmpeg_extra_url" + +echo "Installing the packages..." +sudo apt install -fy --allow-downgrades --allow-change-held-packages "$(pwd)/cb.deb" "$(pwd)/l10n.deb" "$(pwd)/ffmpeg_extra.deb" || error "APT failed to install the packages" +rm -f cb.deb l10n.deb ffmpeg_extra.deb || error "Failed to remove cb.deb l10n.deb ffmpeg_extra.deb" + +echo "Holding Chromium version so it won't upgrade..." +echo "chromium-browser hold" | sudo dpkg --set-selections +echo "chromium-browser-l10n hold" | sudo dpkg --set-selections +echo "chromium-codecs-ffmpeg-extra hold" | sudo dpkg --set-selections + +#echo "Fixing Chromium profile..." +#rm ~/'.config/chromium/Default/Web Data' &>/dev/null + diff --git a/apps/Downgrade Chromium/uninstall b/apps/Downgrade Chromium/uninstall new file mode 100755 index 0000000..4cb68ba --- /dev/null +++ b/apps/Downgrade Chromium/uninstall @@ -0,0 +1,53 @@ +#!/bin/bash + +DIRECTORY="$(dirname "$(dirname "$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )")")" + +function error { + echo -e "\\e[91m$1\\e[39m" + exit 1 +} + +if [ ! -z "$(ps aux | grep chromium | grep -v 'grep' )" ];then + echo -n "Please close all Chromium windows first." + yad --info --center --window-icon="$(dirname "$0")/icon-64.png" \ + --title="Close Chromium first" --text="$(echo -e "Chromium is running.\nTo reduce the risk of Chromium profile corruption, please close Chromium first.")" \ + --window-icon="$(dirname "$0")/icon-64.png" --no-buttons & + yadpid=$! + while [ ! -z "$(ps aux | grep chromium | grep -v 'grep' )" ];do + echo -n '.' + sleep 1 + done + echo + kill $yadpid +fi + +if [ -d ~/.config/chromium.bak ];then + read -p "Would you like to restore the backup of Chromium's config folder? [y/n] " answer + + if [ "$answer" == y ] || [ "$answer" == Y ];then + echo "Restoring backup..." + + #first remove existing + if [ -e ~/.config/chromium ];then + gio trash ~/.config/chromium || rm -rf ~/.config/chromium + fi + + #then rename the backup folder + mv ~/.config/chromium.bak ~/.config/chromium + + elif [ "$answer" == n ] || [ "$answer" == N ];then + true #do nothing + else + error "Unknown answer "\""$answer"\""" + fi +fi + +echo "Allowing Chromium to be upgradable..." +echo "chromium-browser install" | sudo dpkg --set-selections +echo "chromium-browser-l10n install" | sudo dpkg --set-selections +echo "chromium-codecs-ffmpeg-extra install" | sudo dpkg --set-selections + +echo "Upgrading Chromium..." +sudo apt upgrade -y --allow-downgrades chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg-extra rpi-chromium-mods + + diff --git a/apps/Downgrade Chromium/website b/apps/Downgrade Chromium/website new file mode 100644 index 0000000..318c937 --- /dev/null +++ b/apps/Downgrade Chromium/website @@ -0,0 +1 @@ +https://github.com/Botspot/chromium78 diff --git a/data/categories/structure b/data/categories/structure index 65304d3..4fe1ebf 100644 --- a/data/categories/structure +++ b/data/categories/structure @@ -20,6 +20,7 @@ Descent 1|Games Descent 2|Games Discord|Internet Doom 3|Games +Downgrade Chromium|Internet Eagle CAD|Editors eDEX-UI|Eyecandy Email Checker|Internet @@ -37,12 +38,14 @@ Lokinet|Internet Mac OS Theme|Eyecandy Mesa 20.3|Tools Minecraft Bedrock|Games +Minecraft Importer| Minecraft Java|Games Minecraft Pi (Modded)|Games Mission Planner|Tools Node.js|Tools Notepad ++|Editors OBS Studio|Tools +Password Manager| Pi-Apps Terminal Plugin|Tools PiGro|Tools piKiss|Tools