#!/bin/env nu use cntfy.nu # Checks for package updates def main [ --ntfy: bool ] { if ( is-admin ) == false { error make { msg: "This script needs to be run as root" } } pacman -Sy let updates = ( checkupdates | split row "\n" ) let update_count = ( $updates | length ) if $update_count > 0 { echo $"($update_count) package[s] need to be updated" if $ntfy { mut update_msg = ""; if $update_count > 20 { $update_msg = ( $updates | first 19 | append $"... And ($update_count - 19) more" | str join "\n" ) } else { $update_msg = ( $updates | str join "\n" ) } cntfy publish --title $"($update_count) package[s] need to be updated" updates $update_msg } } }