<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>libreoffice &amp;mdash; Cyberdyne Systems</title>
    <link>https://noblogo.org/aytin/tag:libreoffice</link>
    <description>&#34;Fare o non fare. Non c&#39;è provare!&#34;</description>
    <pubDate>Thu, 30 Apr 2026 12:52:08 +0000</pubDate>
    <item>
      <title>Aggiornare LibreOffice su Fedora</title>
      <link>https://noblogo.org/aytin/aggiornare-libreoffice-su-fedora</link>
      <description>&lt;![CDATA[office&#xA;&#xA;Piccolo script scritto di fretta per avere sotto mano la versione fresh di Libreoffice su Fedora invece che quella pacchettizzata. Un giorno ci ritornerò come ho fatto con &#34;Gestione TOTP in bash&#34;&#xA;!--more--&#xA;&#xA;!/bin/bash&#xA;download.documentfoundation.org&#xA;&#xA;usage() {&#xA;cat&lt;&lt;EOF&#xA;Usa come: ./libreoffice-update.sh [options]&#xA;dove:&#xA;    [options]&#xA;        -u verifica l esistenza di una nuova versione&#xA;        -i numeroversion installa la nuova versione di libreoffice&#xA;        -h stampa questa pagina di help&#xA;&#xA;ESEMPI:&#xA;    VERIFICA CHE UN AGGIORNAMENTO SIA DISPONIBILE&#xA;    libreoffice-update -u&#xA;&#xA;    INSTALLA L ULTIMA VERSIONE DI LIBREOFFICE&#xA;    libreoffice-update -i&#xA;&#xA;    VISUALIZZA l HELP&#xA;    libreoffice-update -h&#xA;EOF&#xA;}&#xA;&#xA;downloadlosuite() {&#xA;    echo -n &#34;Inizio download LibreOffice $VERSION... &#34;&#xA;    [[ $(aria2c https://download.documentfoundation.org/libreoffice/stable/&#34;$VERSION&#34;/rpm/x8664/LibreOffice&#34;$VERSION&#34;Linuxx86-64rpm.tar.gz | grep ERROR) ]] \&#xA;        &amp;&amp; { echo &#34; Impossibile scaricare LibreOffice $VERSION &#34;; ERRORCODE=64; return ${ERRORCODE}; } \&#xA;        || echo &#34;Fatto.&#34;&#xA;&#xA;    echo -n &#34;Inizio download LibreOfficeLangack $VERSION... &#34;&#xA;    [[ $(aria2c https://download.documentfoundation.org/libreoffice/stable/&#34;$VERSION&#34;/rpm/x8664/LibreOffice&#34;$VERSION&#34;Linuxx86-64rpmlangpackit.tar.gz | grep ERROR) ]] \&#xA;        &amp;&amp; { echo &#34; Impossibile scaricare LibreOfficelangPack $VERSION &#34;; ERRORCODE=65; return ${ERRORCODE}; } \&#xA;        || echo &#34;Fatto.&#34;&#xA;&#xA;    echo -n &#34;Inizio download LibreOfficeHelppack $VERSION... &#34;&#xA;    [[ $(aria2c https://download.documentfoundation.org/libreoffice/stable/&#34;$VERSION&#34;/rpm/x8664/LibreOffice&#34;$VERSION&#34;Linuxx86-64rpmhelppackit.tar.gz | grep ERROR) ]] \&#xA;        &amp;&amp; { echo &#34; Impossibile scaricare LibreOfficeHelppack $VERSION &#34;; ERRORCODE=66; return ${ERRORCODE}; } \&#xA;        || echo -e &#34;Fatto.\n&#34;&#xA;}&#xA;&#xA;decomprimilosuite() {&#xA;    echo -n &#34;Decompressione tar LibreOffice $VERSION in corso... &#34;&#xA;    [[ $(tar -xzf LibreOffice&#34;$VERSION&#34;Linuxx86-64rpm.tar.gz 2  /dev/null) ]] \&#xA;        &amp;&amp; { echo &#34; Impossibile decomprimere il tar di LibreOffice $VERSION &#34;; ERRORCODE=67; return ${ERRORCODE}; } \&#xA;        || echo &#34;Fatto.&#34;&#xA;&#xA;    echo -n &#34;Decompressione tar LibreOfficeLangpack $VERSION in corso... &#34;&#xA;    [[ $(tar -xzf LibreOffice&#34;$VERSION&#34;Linuxx86-64rpmlangpackit.tar.gz  2  /dev/null) ]] \&#xA;        &amp;&amp; { echo &#34; Impossibile decomprimere il tar di LibreOfficeLangpack $VERSION &#34;; ERRORCODE=68; return ${ERRORCODE}; } \&#xA;        || echo &#34;Fatto.&#34;&#xA;&#xA;    echo -n &#34;Decompressione tar LibreOfficeHelppack $VERSION in corso... &#34;&#xA;    [[ $(tar -xzf LibreOffice&#34;$VERSION&#34;Linuxx86-64rpmhelppackit.tar.gz 2  /dev/null) ]] \&#xA;        &amp;&amp; { echo &#34; Impossibile decomprimere il tar di LibreOfficeHelppack $VERSION &#34;; ERRORCODE=69; return ${ERRORCODE}; } \&#xA;        || echo -e &#34;Fatto.\n&#34;&#xA;        &#xA;    [[ $? -gt 0 ]] &amp;&amp; return $?&#xA;}&#xA;&#xA;installlosuite() {&#xA;    cd $(tar -tf LibreOffice&#34;$VERSION&#34;Linuxx86-64rpm.tar.gz|head -1) &amp;&amp; sudo dnf -y localinstall RPMS/ &amp;&amp; cd ..&#xA;    cd $(tar -tf LibreOffice&#34;$VERSION&#34;Linuxx86-64rpmlangpackit.tar.gz|head -1) &amp;&amp; sudo dnf -y localinstall RPMS/ &amp;&amp; cd ..&#xA;    cd $(tar -tf LibreOffice&#34;$VERSION&#34;Linuxx86-64rpmhelppackit.tar.gz|head -1) &amp;&amp; sudo dnf -y localinstall RPMS/ &amp;&amp; cd $HOME&#xA;}&#xA;&#xA;isloupgradeable() {&#xA;    VERSIONEINSTALLATA=$(dnf info installed|grep -A 2 libreoffice|grep Version|head -n 1|cut -d &#34;:&#34; -f 2|cut -c 2-7)&#xA;    VERSIONEONLINE=$(curl https://it.libreoffice.org/download/download/ 2  /dev/null|grep &#34;version=&#34;|head -n 1|cut -d &#34;&amp;&#34; -f 2|cut -d &#34;=&#34; -f 2)&#xA;    echo &#34;VERSIONE INSTALLATA: $VERSIONEINSTALLATA&#34;&#xA;    echo &#34;VERSIONE ONLINE:     $VERSIONEONLINE&#34;&#xA;    [[ ${VERSIONEINSTALLATA} == ${VERSIONEONLINE} ]] \&#xA;        &amp;&amp; echo -e &#34;Nessun aggiornamento disponibile.&#34; \&#xA;        || echo -e &#34;Una nuova versione è disponibile.\n&#34;&#xA;}&#xA;&#xA;cleanup() {&#xA;    rm -r /tmp/tmp.&#xA;}&#xA;&#xA;removeoldlosuite() {&#xA;    sudo dnf -y remove libreoffice&#xA;}&#xA;&#xA;install() {&#xA;    VERSION=$1&#xA;    cd $(mktemp -d)&#xA;    ! downloadlosuite &amp;&amp; { cleanup; exit ${ERRORCODE}; }&#xA;    ! decomprimilosuite &amp;&amp; { cleanup; exit ${ERRORCODE}; }&#xA;    ! removeoldlosuite &amp;&amp; { cleanup; exit ${ERRORCODE}; }&#xA;    installlosuite &amp;&amp; cleanup || exit ${ERRORCODE}?&#xA;}&#xA;&#xA;noparam() {&#xA;    clear;&#xA;    usage&#xA;    exit 0&#xA;}&#xA;&#xA;main() {&#xA;    while getopts &#34;ui:h&#34; opt; do&#xA;        case $opt in&#xA;            u ) islo_upgradeable ;;&#xA;            i ) install $OPTARG ;;&#xA;            h ) clear;usage; exit;;&#xA;            ) clear;echo -e &#34;[ERRORE] Opzione non valida.&#34;;usage; exit 1;;&#xA;        esac&#xA;    done&#xA;    shift $(($OPTIND - 1))&#xA;}&#xA;&#xA;[[ $# -eq 0 ]] &amp;&amp; noparam || main $&#xA;&#xA;#bash #libreoffice #scripting]]&gt;</description>
      <content:encoded><![CDATA[<p><img src="https://pixelfed.uno/storage/m/_v2/489827599091373610/7c649620b-69b6c5/KrPmYlEt1gcy/imPYx0fikTBe14R3C5cAH21rMs6qSEoBGeTujUdT.webp" alt="office"></p>

<p>Piccolo script scritto di fretta per avere sotto mano la versione fresh di Libreoffice su Fedora invece che quella pacchettizzata. Un giorno ci ritornerò come ho fatto con “<a href="https://noblogo.org/aytin/gestione-totp-in-bash" rel="nofollow">Gestione TOTP in bash</a>“
</p>

<pre><code class="language-bash">#!/bin/bash
#download.documentfoundation.org

usage() {
cat&lt;&lt;EOF
Usa come: ./libreoffice-update.sh [options]
dove:
    [options]
        -u verifica l esistenza di una nuova versione
        -i &lt;numero_version&gt; installa la nuova versione di libreoffice
        -h stampa questa pagina di help

ESEMPI:
    VERIFICA CHE UN AGGIORNAMENTO SIA DISPONIBILE
    libreoffice-update -u

    INSTALLA L ULTIMA VERSIONE DI LIBREOFFICE
    libreoffice-update -i

    VISUALIZZA l HELP
    libreoffice-update -h
EOF
}

download_lo_suite() {
    echo -n &#34;Inizio download LibreOffice $VERSION... &#34;
    [[ $(aria2c https://download.documentfoundation.org/libreoffice/stable/&#34;$VERSION&#34;/rpm/x86_64/LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm.tar.gz | grep ERROR) ]] \
        &amp;&amp; { echo &#34;*** Impossibile scaricare LibreOffice $VERSION ***&#34;; ERROR_CODE=64; return ${ERROR_CODE}; } \
        || echo &#34;Fatto.&#34;

    echo -n &#34;Inizio download LibreOfficeLangack $VERSION... &#34;
    [[ $(aria2c https://download.documentfoundation.org/libreoffice/stable/&#34;$VERSION&#34;/rpm/x86_64/LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm_langpack_it.tar.gz | grep ERROR) ]] \
        &amp;&amp; { echo &#34;*** Impossibile scaricare LibreOfficelangPack $VERSION ***&#34;; ERROR_CODE=65; return ${ERROR_CODE}; } \
        || echo &#34;Fatto.&#34;

    echo -n &#34;Inizio download LibreOfficeHelppack $VERSION... &#34;
    [[ $(aria2c https://download.documentfoundation.org/libreoffice/stable/&#34;$VERSION&#34;/rpm/x86_64/LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm_helppack_it.tar.gz | grep ERROR) ]] \
        &amp;&amp; { echo &#34;*** Impossibile scaricare LibreOfficeHelppack $VERSION ***&#34;; ERROR_CODE=66; return ${ERROR_CODE}; } \
        || echo -e &#34;Fatto.\n&#34;
}


decomprimi_lo_suite() {
    echo -n &#34;Decompressione tar LibreOffice $VERSION in corso... &#34;
    [[ $(tar -xzf LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm.tar.gz 2&gt;/dev/null) ]] \
        &amp;&amp; { echo &#34;*** Impossibile decomprimere il tar di LibreOffice $VERSION ***&#34;; ERROR_CODE=67; return ${ERROR_CODE}; } \
        || echo &#34;Fatto.&#34;

    echo -n &#34;Decompressione tar LibreOfficeLangpack $VERSION in corso... &#34;
    [[ $(tar -xzf LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm_langpack_it.tar.gz  2&gt;/dev/null) ]] \
        &amp;&amp; { echo &#34;*** Impossibile decomprimere il tar di LibreOfficeLangpack $VERSION ***&#34;; ERROR_CODE=68; return ${ERROR_CODE}; } \
        || echo &#34;Fatto.&#34;

    echo -n &#34;Decompressione tar LibreOfficeHelppack $VERSION in corso... &#34;
    [[ $(tar -xzf LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm_helppack_it.tar.gz 2&gt;/dev/null) ]] \
        &amp;&amp; { echo &#34;*** Impossibile decomprimere il tar di LibreOfficeHelppack $VERSION ***&#34;; ERROR_CODE=69; return ${ERROR_CODE}; } \
        || echo -e &#34;Fatto.\n&#34;
        
    [[ $? -gt 0 ]] &amp;&amp; return $?
}

install_lo_suite() {
    cd $(tar -tf LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm.tar.gz|head -1) &amp;&amp; sudo dnf -y localinstall RPMS/* &amp;&amp; cd ..
    cd $(tar -tf LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm_langpack_it.tar.gz|head -1) &amp;&amp; sudo dnf -y localinstall RPMS/* &amp;&amp; cd ..
    cd $(tar -tf LibreOffice_&#34;$VERSION&#34;_Linux_x86-64_rpm_helppack_it.tar.gz|head -1) &amp;&amp; sudo dnf -y localinstall RPMS/* &amp;&amp; cd $HOME
}

is_lo_upgradeable() {
    VERSIONE_INSTALLATA=$(dnf info installed|grep -A 2 libreoffice|grep Version|head -n 1|cut -d &#34;:&#34; -f 2|cut -c 2-7)
    VERSIONE_ONLINE=$(curl https://it.libreoffice.org/download/download/ 2&gt;/dev/null|grep &#34;version=&#34;|head -n 1|cut -d &#34;&amp;&#34; -f 2|cut -d &#34;=&#34; -f 2)
    echo &#34;VERSIONE INSTALLATA: $VERSIONE_INSTALLATA&#34;
    echo &#34;VERSIONE ONLINE:     $VERSIONE_ONLINE&#34;
    [[ ${VERSIONE_INSTALLATA} == ${VERSIONE_ONLINE} ]] \
        &amp;&amp; echo -e &#34;Nessun aggiornamento disponibile.&#34; \
        || echo -e &#34;Una nuova versione è disponibile.\n&#34;
}

cleanup() {
    rm -r /tmp/tmp.*
}

remove_old_lo_suite() {
    sudo dnf -y remove libreoffice*
}

install() {
    VERSION=$1
    cd $(mktemp -d)
    ! download_lo_suite &amp;&amp; { cleanup; exit ${ERROR_CODE}; }
    ! decomprimi_lo_suite &amp;&amp; { cleanup; exit ${ERROR_CODE}; }
    ! remove_old_lo_suite &amp;&amp; { cleanup; exit ${ERROR_CODE}; }
    install_lo_suite &amp;&amp; cleanup || exit ${ERROR_CODE}?
}

noparam() {
    clear;
    usage
    exit 0
}

main() {
    while getopts &#34;ui:h&#34; opt; do
        case $opt in
            u ) is_lo_upgradeable ;;
            i ) install $OPTARG ;;
            h ) clear;usage; exit;;
            * ) clear;echo -e &#34;[ERRORE] Opzione non valida.&#34;;usage; exit 1;;
        esac
    done
    shift $(($OPTIND - 1))
}

[[ $# -eq 0 ]] &amp;&amp; noparam || main $*
</code></pre>

<p><a href="/aytin/tag:bash" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">bash</span></a> <a href="/aytin/tag:libreoffice" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">libreoffice</span></a> <a href="/aytin/tag:scripting" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">scripting</span></a></p>
]]></content:encoded>
      <guid>https://noblogo.org/aytin/aggiornare-libreoffice-su-fedora</guid>
      <pubDate>Fri, 23 Feb 2024 14:55:02 +0000</pubDate>
    </item>
  </channel>
</rss>