• 1 Post
  • 38 Comments
Joined 11 months ago
cake
Cake day: April 7th, 2024

help-circle



  • 5.) Not being able to create your own custom feeds is also a massive problem because you can’t split your feed into types like memes/news/discussions/meta etc.

    This is a big one for me - on R, one can create a “multireddit” (collection view of multiple subreddits in one combined feed) without subscribing to any of the communities; for example I have one called “news” that’s 10+ news subreddits which I do not subscribe to; subscriptions are for my actual real direct interests only. Subscribing to news specific communities can quickly overrun and bury your Subscribed feed.

    Lemmy as a software platform is missing the entire concept of a multireddit and detracts from it’s usefulness for certain types of users such as myself; I still get most of my daily news from R and sadly gaming communities did not migrate en masse to lemmyverse so they’re all still on R.


  • scsi@lemm.eetoFediverse@lemmy.worldFederation woes
    link
    fedilink
    English
    arrow-up
    3
    ·
    24 days ago

    I mostly just want to ensure mine is visible to others.

    This is the tricky part - you will be remote-invisible until someone from the other instance(s) follow you for any of your content to show up in their Explore (hashtags, etc.) feed for other people to discover you. Pixelfed.social is the biggest hub by far so getting on that radar is key (much like joining a small Mastodon instance and you want to be “seen” on mastodon.social e.g. - same processes).

    So you want to follow yourself from your pixelfed.social account to your own domain.com, so that your domain.com profile is seeded (federated) for other pixelfed.social users to discover as they browse. It’s a hack but there’s no other real way given how “opt-in” federation works, unless you have pre-existing friends on pixelfed.social who subscribe to your domain.com for you right away so you don’t have to hack it to get started.






  • Your favourite search engine -> “pixelfed no video preview” -> several Github issues that are all closed, some with commits saying something was fixed, others just closed without resolution.

    I experience this preview problem viewing videos posted both by Pixelfed uploads (such as yours) and videos posted via Mastodon instances which I follow in Pixelfed. There’s something broken in Pixelfed software being able to generate video previews from several sources in my experience, which do not exist if you follow those same accounts from a Mastodon instance.








  • If you have access to some sort of basic Linux system (cloud server, local server whatever works for you) you can run a program on a timer such as https://isync.sourceforge.io/ (Debian package: isync) which reads email from one source and clones it to another. Be careful and run it in a security context that meets your needs (I use a local laptop w/encryption at home that runs headless 24/7, think raspberry Pi mode).

    This includes IMAP (1) -> IMAP (2) as well as IMAP -> Local and so on; as with any app you’ll need to spend a bit learning how to build the optimum config file for your needs, but once you get it going it’s truly a “set and forget” little widget. Use an on-fail service like https://healthchecks.io in your wrapper script to get notified on error, then go about your life.

    Edit: @mike_wooskey@lemmy.thewooskeys.com glanced at your comments and see you have a lot of self-hosting chops, here’s a markdown doc of mine to use isync to clone one IMAP provider (domain1.com) to another IMAP provider (domain2.com) subfolder for archiving. (using a subfolder allows you to go both ways and use both domains normally)

    ----

    Sync email via IMAP from host1/domain1 to a subfolder on host2/domain2 via a cron/timer. Can be reversed as well, just update Patterns to exclude the subfolders from being cross-replicated (looped).

    • Install the isync package: apt-get update && apt-get install isync

    Passwords for IMAP must be left on disk in plain text

    • Generate “app passwords” at the email providers, host1 can be READ only
    • Keep ${HOME}/.secure contents on encrypted volume unlocked manually

    The mbsync program keeps it’s transient index files in ${HOME}/.mbsync/ with one per IMAP folder; these are used to keep track of what it’s already synced. Should something break it may be necessary to delete one of these files to force a resync.

    By design, mbsync will not delete a destination folder if it’s not empty first; this means if you delete a folder and all emails on the source in one step, a sync will break with an error/warning. Instead, delete all emails in the folder first, sync those deletions, then delete the empty folder on the source and sync again. See: https://sourceforge.net/p/isync/mailman/isync-devel/thread/f278216b-f1db-32be-fef2-ccaeea912524%40ojkastl.de/#msg37237271

    Simple crontab to run the script:

    0 */6 * * * /home/USER/bin/hasync.sh
    

    Main config for the mbsync program:

    ${HOME}/.mbsyncrc

    # Source
    IMAPAccount imap-src-account
    Host imap.host1.com
    Port 993
    User user1
    PassCmd "cat /home/USER/.secure/psrc"
    SSLType IMAPS
    SystemCertificates yes
    PipeLineDepth 1
    #CertificateFile /etc/ssl/certs/ca-certificates.crt
    
    # Dest
    IMAPAccount imap-dest-account
    Host imap.host2.com
    Port 993
    User user2
    PassCmd "cat /home/USER/.secure/pdst"
    SSLType IMAPS
    SystemCertificates yes
    PipeLineDepth 1
    #CertificateFile /etc/ssl/certs/ca-certificates.crt
    
    # Source map
    IMAPStore imap-src
    Account imap-src-account
    
    # Dest map
    IMAPStore imap-dest
    Account imap-dest-account
    
    # Transfer options
    Channel hasync
    Far :imap-src:
    Near :imap-dest:HASync/
    Sync Pull
    Create Near
    Remove Near
    Expunge Near
    Patterns *
    CopyArrivalDate yes
    

    This script leverages healthchecks.io to alert on failure; replace XXXXX with the UUID of your monitor URL.

    ${HOME}/bin/hasync.sh

    #!/bin/bash
    
    # vars
    LOGDIR="${HOME}/log"
    TIMESTAMP=$(date +%Y-%m-%d_%H%M)
    LOGFILE="${LOGDIR}/mbsync_${TIMESTAMP}.log"
    HCPING="https://hc-ping.com/XXXXXXXXXXXXXXXXXXXXXXXXX"
    
    # preflight
    if [[ ! -d "${LOGDIR}" ]]; then
      mkdir -p "${LOGDIR}"
    fi
    
    # sync
    echo -e "\nBEGIN $(date +%Y-%m-%d_%H%M)\n" >> "${LOGFILE}"
    /usr/bin/mbsync -c ${HOME}/.mbsyncrc -V hasync 1>>"${LOGFILE}" 2>&1
    EC=$?
    echo -e "\nEC: ${EC}" >> "${LOGFILE}"
    echo -e "\nEND $(date +%Y-%m-%d_%H%M)\n" >> "${LOGFILE}"
    
    # report
    if [[ $EC -eq 0 ]]; then
      curl -fsS -m 10 --retry 5 -o /dev/null "${HCPING}"
      find "${LOGDIR}" -type f -mtime +30 -delete
    fi
    
    exit $EC