ubuntuusers.de

DEB-Paket lossless-cut im Eigenbau

Status: Ungelöst | Ubuntu-Version: Kubuntu 25.10 (Questing Quokka)
Antworten |

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 6016

In diesem Posting gibt es ein Bash alias für die $HOME/.bashrc, der LosslessCut als DEB-Paket auf dem eignen System in einem Rutsch erstellt und installiert. Der LosslessCut Sourcecode kommt frisch aus dem Git:

Um die Vorbereitung, also den nötigen Klimbim installieren, dass solch ein lossless-cut DEB-Paket gebaut werden kann, muss sich jeder selbst kümmern. Hier einige Links zum Einstieg:

Hier nun der Bash alias losslesscutneu:

alias losslesscutneu='INSTALLATIONSDISK=$HOME/Installationsdisk && \
                        LOSSLESS_CUT_BASE=$INSTALLATIONSDISK/Lossless-Cut_Base && \
                        LOSSLESS_CUT_SRC=$LOSSLESS_CUT_BASE/lossless-cut && \
                        YARN_TANK=$HOME/.yarn && \
                        APP_NAME=Lossless-Cut && \
                        TMPFS_SIZE=0 && \
                        ID=$(id --user) && \
                        OLD_DAYS=7 && \
                        [ ! -d $INSTALLATIONSDISK ] && mkdir -pv $INSTALLATIONSDISK || echo "$INSTALLATIONSDISK exists" && \
                        [ ! -d $LOSSLESS_CUT_BASE ] && mkdir -pv $LOSSLESS_CUT_BASE || echo "$LOSSLESS_CUT_BASE exists" && \
                        [ -d $LOSSLESS_CUT_SRC ] && yes | sudo rm -rf $LOSSLESS_CUT_SRC && \
                        echo "$LOSSLESS_CUT_SRC cleaned." || echo "$LOSSLESS_CUT_SRC was clean." && \
                        [ ! -d $LOSSLESS_CUT_SRC ] && mkdir -pv $LOSSLESS_CUT_SRC || echo "$LOSSLESS_CUT_SRC exists. Ok." && \
                        sudo mount -v tmpfs $LOSSLESS_CUT_SRC -t tmpfs -o mode=777,size=$TMPFS_SIZE,uid=$ID && \
                        [ ! -d $LOSSLESS_CUT_SRC/.git ] && git clone https://github.com/mifi/lossless-cut.git $LOSSLESS_CUT_SRC && \
                        printf "\n \033[45m\033[1;36m==> $APP_NAME Sourcecode cloned. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" || \
                        printf "\n \033[45m\033[1;36m==> $APP_NAME Sourcecode found. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" && \
                        printf "\n \033[45m\033[1;36m==> Update $APP_NAME Sourcecode. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" && \
                        git -C $LOSSLESS_CUT_SRC pull && echo "git pull done." || echo "No git pull." && \
                        printf "\n \033[45m\033[1;36m==> Configure $APP_NAME. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" && \
                        [ -d $YARN_TANK ] && yes | sudo rm -rf $YARN_TANK && \
                        echo "$YARN_TANK cleaned." || echo "$YARN_TANK was clean." && \
                        [ ! -d $YARN_TANK ] && mkdir -pv $YARN_TANK || echo "$YARN_TANK exists. Ok." && \
                        sudo mount -v tmpfs $YARN_TANK -t tmpfs -o mode=777,uid=$ID && \
                        cd $LOSSLESS_CUT_SRC && \
                        echo " " && \
                        echo "Switch off yarn telemetry." && \
                        echo " ==> https://yarnpkg.com/advanced/telemetry" && \
                        yarn config set --home enableTelemetry 0 && \
                        echo "Take a look at $HOME/.yarnrc.yml" && \
                        echo " " && \
                        echo "Build ..." && \
                        echo " " && \
                        time (yarn set version latest && \
                        yarn --version && \
                        yarn cache clean --all && \
                        yarn install && \
                        yarn build && \
                        yarn download-ffmpeg-linux-x64 && \
                        yarn run build) && \
                        printf "\n \033[45m\033[1;36m==> Build $APP_NAME DEB-Package. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" && \
                        time yarn electron-builder --linux deb && \
                        printf "\n \033[45m\033[1;36m==> Install $APP_NAME. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" && \
                        sudo apt-get install --reinstall $LOSSLESS_CUT_SRC/dist/LosslessCut-linux-amd64.deb
                        printf "\n \033[45m\033[1;36m==> Backup built $APP_NAME DEB-Package as lossless-cut_$(date '\''+%Y-%m-%d-%R'\'')_amd64.deb. \033[0m\033[42m\033[1;36m  ==> ... \033[0m \n \n" && \
                        cp -v $LOSSLESS_CUT_SRC/dist/*.deb $LOSSLESS_CUT_BASE/lossless-cut_$(date '\''+%Y-%m-%d-%R'\'')_amd64.deb && \
                        printf "\n \033[45m\033[1;36m==> Install $APP_NAME successful. \033[0m\033[42m\033[1;36m  ==> Done.\033[0m \n \n" && \
                        printf "\n \033[45m\033[1;36m==> $APP_NAME deinstall: \033[0m\033[43m\033[1;36m sudo apt-get purge lossless-cut   <== \033[0m \n \n" || \
                        printf "\n \033[41m\033[1;36m==> $APP_NAME build or install failed.\033[0m \n \n" | tee -a $HOME/buildfail.log ; \
                        cd $HOME && \
                        sudo umount -fv $LOSSLESS_CUT_SRC ; \
                        [ -d $LOSSLESS_CUT_SRC ] && yes | sudo rm -fr $LOSSLESS_CUT_SRC && echo "Builddir cleaned." || echo "Builddir was clean." ; \
                        rm -v $(find $LOSSLESS_CUT_BASE/*deb -mtime +$OLD_DAYS) 2>/dev/null && \
                        echo "$APP_NAME DEB-Package Backups older than $OLD_DAYS days removed. Ok." || \
                        echo "No $APP_NAME DEB-Package Backups older than $OLD_DAYS days. Ok." ; \
                        yarn cache clean --all ; \
                        npm cache clean --force ; \
                        sudo ldconfig ; \
                        sudo umount -fv $YARN_TANK ; \
                        [ -d $YARN_TANK ] && yes | sudo rm -rf $YARN_TANK && \
                        echo "$YARN_TANK cleaned." || echo "$YARN_TANK was clean." ; \
                        cd $HOME'

Einfügen in die $HOME/.bashrc, und dann die $HOME/.bashrc neu einlesen:

source $HOME/.bashrc

Danach sollte es reichen, in das Terminal:

losslesscutneu

... einzugeben und die Entertaste zu drücken. Der Bash alias sollte dann los rennen, das lossless-cut DEB-Paket erstellen, und dann auch installieren.

Antworten |