db0

joined 2 years ago
MODERATOR OF
[–] db0@lemmy.dbzer0.com 25 points 3 days ago (1 children)

Top: TFW when Nazi Germany wasn't Nazi.

I think the argument being made here is that Germans never stopped being Nazis, which is patently absurd.

[–] db0@lemmy.dbzer0.com 127 points 3 days ago (7 children)

Whenever I see complaints like these, purposefully vague about what kind of "exteme views" they have a problem with, I have to think of this meme

[–] db0@lemmy.dbzer0.com 84 points 3 days ago (2 children)

The exec is about to discover the Streisand effect.

[–] db0@lemmy.dbzer0.com 2 points 3 days ago (4 children)

Aha! So How did you know it was "ad-ridden" in the first place? Checkmate, liberal!

[–] db0@lemmy.dbzer0.com 10 points 3 days ago* (last edited 3 days ago) (6 children)

Oooor, just install an adblocker.

[–] db0@lemmy.dbzer0.com 9 points 5 days ago

Welcome. Hopefully you'll keep at it :)

[–] db0@lemmy.dbzer0.com 20 points 5 days ago (10 children)

The rate of increase has been absolutely wild in the past few months! Reddit banning people at the drop of a hat has been a massive boon. All those peeps would never have given lemmy a try unless they had no other choice.

[–] db0@lemmy.dbzer0.com 9 points 6 days ago

I love that they "fixed" it by misgendering drag again, then "fixed" it again, by just using drag's username (i.e. capitalized), which just goes to show how confusing drag is.

[–] db0@lemmy.dbzer0.com 2 points 6 days ago

Oh, starting with these two neonazi chuckle fucks again?

[–] db0@lemmy.dbzer0.com 10 points 6 days ago (1 children)
[–] db0@lemmy.dbzer0.com 52 points 6 days ago (2 children)

For example, there's a user in the fediverse known as Drag, and people were blowing up because of his pronouns.

"I'm so against transphobia, I'm going to misgender the very person I bring as example".

Gr8 b8 m8

1
Advice (lemmy.dbzer0.com)
 
 
 
 
 
 

Taken from microblogging

Some extracts:

Stunningly, Automattic’s CEO Matthew Mullenweg threatened that if WP Engine did not agree to pay Automattic – his for-profit entity – a very large sum of money before his September 20th keynote address at the WordCamp US Convention, he was going to embark on a self-described “scorched earth nuclear approach” toward WP Engine within the WordPress community and beyond. When his outrageous financial demands were not met, Mr. Mullenweg carried out his threats by making repeated false claims disparaging WP Engine to its employees, its customers, and the world. Mr. Mullenweg has carried out this wrongful campaign against WP Engine in multiple outlets, including via his keynote address, across several public platforms like X,YouTube, and even on the Wordpress.org site, and through the WordPress Admin panel for all WordPress users, including directly targeting WP Engine customers in their own private WordPress instances used to run their online businesses

During calls on September 17th and 19th, for instance, Automattic CFO Mark Davies told a WP Engine board member that Automattic would “go to war” if WP Engine did not agree to pay its competitor Automattic a significant percentage of its gross revenues – tens of millions of dollars in fact – on an ongoing basis. Mr. Davies suggested the payment ostensibly would be for a “license” to use certain trademarks like WordPress, even though WP Engine needs no such license. WP Engine’s uses of those marks to describe its services – as all companies in this space do – are fair uses under settled trademark law and consistent with WordPress’ own guidelines. Automattic’s CFO insisted that WP Engine provide its response to this demand immediately and later, on the day of the keynote, followed up with an email reiterating a claimed need for WP Engine to concede to the demands “before Matt makes his WCUS keynote at 3:45 p.m. PDT today.”

In parallel and throughout September 19 and 20, Mr. Mullenweg embarked on a series of harassing text messages and calls to WP Engine’s board member and also its CEO, threatening that if WP Engine did not agree to pay up prior to the start of Mr. Mullenweg’s livestreamed keynote address at 3:45pm on September 20, he would go “nuclear” on WP Engine, including by smearing its name, disparaging its directors and corporate officers, and banning WP Engine from WordPress community events.

They... they have text message captures. In the pdf. Matt Mullenweg was trying to extort them ... by text messages. They seem to have the entire thing in the writting.

In the final minutes leading up to his keynote address, Mr. Mullenweg sent one last missive: a photo of the WordCamp audience waiting to hear his speech, with the message that he could shift gears and turn his talk into “just a Q&A” if WP Engine agreed to pay up

They finish requesting Automattic to "preserve, and not destroy, any and all documents or information in their possession, custody, or control that may be relevant to any dispute between WP Engine and Automattic". They are going to war, big time.

All this crap is just because they refuse to pay his protection money. And the guy has been stupid enough to put everything in writting.

 

Please don't downvote posts in this comm because you think a ban was justified. That defeats the purpose of this comm.

 

The complete guide to building your personal self hosted server for streaming and ad-blocking.

Captain's note: This OC was originally posted in reddit but its quality makes me wants to ensure a copy survices in lemmy as well.


We will setup the following applications in this guide:

  • Docker
  • AdguardHome - Adblocker for all your devices
  • Jellyfin/Plex - For watching the content you download
  • Qbittorrent - Torrent downloader
  • Jackett - Torrent indexers provider
  • Flaresolverr - For auto solving captcha in some of the indexers
  • Sonarr - *arr service for automatically downloading TV shows
  • Radarr - *arr service for movies
  • Readarr - *arr service for (audio)books
  • lidarr - *arr service for music
  • Bazarr - Automatically downloads subtitles for Sonarr and Radarr
  • Ombi/Overseer - For requesting movies and tv shows through Sonarr and Radarr
  • Heimdall - Dashboard for all the services so you don't need to remember all the ports

Once you are done, your dashboard will look something like this.

Heimdall Dashboard

I started building my setup after reading this guide https://www.reddit.com/r/Piracy/comments/ma1hlm/the/_complete/_guide/_to/_building/_your/_own/_personal/.

Hardware

You don't need powerful hardware to set this up. I use a decade old computer, with the following hardware. Raspberry pi works fine.

Hardware

Operating system

I will be using Ubuntu server in this guide. You can select whatever linux distro you prefer.

Download ubuntu server from https://ubuntu.com/download/server. Create a bootable USB drive using rufus or any other software(I prefer ventoy). Plug the usb on your computer, and select the usb drive from the boot menu and install ubuntu server. Follow the steps to install and configure ubuntu, and make sure to check "Install OpenSSH server". Don't install docker during the setup as the snap version is installed.

Once installation finishes you can now reboot and connect to your machine remotely using ssh.

ssh username@server-ip 
# username you selected during installation
# Type ip a to find out the ip address of your server. Will be present against device like **enp4s0** prefixed with 192.168.

Create the directories for audiobooks, books, movies, music and tv.

I keep all my media at ~/server/media. If you will be using multiple drives you can look up how to mount drives.

We will be using hardlinks so once the torrents are downloaded they are linked to media directory as well as torrents directory without using double storage space. Read up the trash-guides to have a better understanding.

mkdir ~/server
mkdir ~/server/media # Media directory
mkdir ~/server/torrents # Torrents

# Creating the directories for torrents
cd ~/server/torrents
mkdir audiobooks  books  incomplete  movies  music  tv 

cd ~/server/media
mkdir audiobooks  books  movies  music  tv

Installing docker and docker-compose

Docker https://docs.docker.com/engine/install/ubuntu/

# install packages to allow apt to use a repository over HTTPS
sudo apt-get update
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
# Add Docker’s official GPG key:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# Setup the repository
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Install Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
# Add user to the docker group to run docker commands without requiring root
sudo usermod -aG docker $(whoami) 

Sign out by typing exit in the console and then ssh back in

Docker compose https://docs.docker.com/compose/install/

# Download the current stable release of Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# Apply executable permissions to the binary
sudo chmod +x /usr/local/bin/docker-compose

Creating the compose file for Adguard home

First setup Adguard home in a new compose file.

Docker compose uses a yml file. All of the files contain version and services object.

Create a directory for keeping the compose files.

mkdir ~/server/compose
mkdir ~/server/compose/adguard-home
vi ~/server/compose/adguard-home/docker-compose.yml

Save the following content to the docker-compose.yml file. You can see here what each port does.

version: '3.3'
services:
    run:
        container_name: adguardhome
        restart: unless-stopped
        volumes:
            - '/home/${USER}/server/configs/adguardhome/workdir:/opt/adguardhome/work'
            - '/home/${USER}/server/configs/adguardhome/confdir:/opt/adguardhome/conf'
        ports:
            - '53:53/tcp'
            - '53:53/udp'
            - '67:67/udp'
            - '68:68/udp'
            - '68:68/tcp'
            - '80:80/tcp'
            - '443:443/tcp'
            - '443:443/udp'
            - '3000:3000/tcp'
        image: adguard/adguardhome

Save the file and start the container using the following command.

docker-compose up -d

Open up the Adguard home setup on YOUR_SERVER_IP:3000.

Enable the default filter list from filters→DNS blocklist. You can then add custom filters.

Filters

Creating the compose file for media-server

Jackett

Jackett is where you define all your torrent indexers. All the *arr apps use the tornzab feed provided by jackett to search torrents.

There is now an *arr app called prowlarr that is meant to be the replacement for jackett. But the flaresolverr(used for auto solving captchas) support was added very recently and doesn't work that well as compared to jackett, so I am still sticking with jackett for meantime. You can instead use prowlarr if none of your indexers use captcha.

jackett:
    container_name: jackett
    image: linuxserver/jackett
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/jackett:/config'
      - '/home/${USER}/server/torrents:/downloads'
    ports:
      - '9117:9117'
    restart: unless-stopped
prowlarr:
		container_name: prowlarr
    image: 'hotio/prowlarr:testing'
    ports:
      - '9696:9696'
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/prowlarr:/config'
    restart: unless-stopped

Sonarr - TV

Sonarr is a TV show scheduling and searching download program. It will take a list of shows you enjoy, search via Jackett, and add them to the qbittorrent downloads queue.

sonarr:
    container_name: sonarr
    image: linuxserver/sonarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    ports:
      - '8989:8989'
    volumes:
      - '/home/${USER}/server/configs/sonarr:/config'
      - '/home/${USER}/server:/data'
    restart: unless-stopped

Radarr - Movies

Sonarr but for movies.

radarr:
    container_name: radarr
    image: linuxserver/radarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    ports:
      - '7878:7878'
    volumes:
      - '/home/${USER}/server/configs/radarr:/config'
      - '/home/${USER}/server:/data'
    restart: unless-stopped

Lidarr - Music

lidarr:
    container_name: lidarr
    image: ghcr.io/linuxserver/lidarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/liadarr:/config'
      - '/home/${USER}/server:/data'
    ports:
      - '8686:8686'
    restart: unless-stopped

Readarr - Books and AudioBooks

# Notice the different port for the audiobook container
readarr:
    container_name: readarr
    image: 'hotio/readarr:nightly'
    ports:
      - '8787:8787'
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/readarr:/config'
      - '/home/${USER}/server:/data'
    restart: unless-stopped

readarr-audio-books:
    container_name: readarr-audio-books
    image: 'hotio/readarr:nightly'
    ports:
      - '8786:8787'
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/readarr-audio-books:/config'
      - '/home/${USER}/server:/data'
    restart: unless-stopped

Bazarr - Subtitles

bazarr:
    container_name: bazarr
    image: ghcr.io/linuxserver/bazarr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/bazarr:/config'
      - '/home/${USER}/server:/data'
    ports:
      - '6767:6767'
    restart: unless-stopped

Jellyfin

I personally only use jellyfin because it's completely free. I still have plex installed because overseerr which is used to request movies and tv shows require plex. But that's the only role plex has in my setup.

I will talk about the devices section later on.

For the media volume you only need to provide access to the /data/media directory instead of /data as jellyfin doesn't need to know about the torrents.

jellyfin:
    container_name: jellyfin
    image: ghcr.io/linuxserver/jellyfin
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    ports:
      - '8096:8096'
    devices:
      - '/dev/dri/renderD128:/dev/dri/renderD128'
      - '/dev/dri/card0:/dev/dri/card0'
    volumes:
      - '/home/${USER}/server/configs/jellyfin:/config'
      - '/home/${USER}/server/media:/data/media'
    restart: unless-stopped

plex:
    container_name: plex
    image: ghcr.io/linuxserver/plex
    ports:
      - '32400:32400'
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
      - VERSION=docker
    volumes:
      - '/home/${USER}/server/configs/plex:/config'
      - '/home/${USER}/server/media:/data/media'
    devices:
      - '/dev/dri/renderD128:/dev/dri/renderD128'
      - '/dev/dri/card0:/dev/dri/card0'
    restart: unless-stopped

Overseer/Ombi - Requesting Movies and TV shows

I use both. You can use ombi only if you don't plan to install plex.

ombi:
    container_name: ombi
    image: ghcr.io/linuxserver/ombi
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/ombi:/config'
    ports:
      - '3579:3579'
    restart: unless-stopped

overseerr:
    container_name: overseerr
    image: ghcr.io/linuxserver/overseerr
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/overseerr:/config'
    ports:
      - '5055:5055'
    restart: unless-stopped

Qbittorrent - Torrent downloader

I use qflood container. Flood provides a nice UI and this image automatically manages the connection between qbittorrent and flood.

Qbittorrent only needs access to torrent directory, and not the complete data directory.

qflood:
    container_name: qflood
    image: hotio/qflood
    ports:
      - "8080:8080"
      - "3005:3000"
    environment:
      - PUID=1000
      - PGID=1000
      - UMASK=002
      - TZ=Asia/Kolkata
      - FLOOD_AUTH=false
    volumes:
      - '/home/${USER}/server/configs/qflood:/config'
      - '/home/${USER}/server/torrents:/data/torrents'
    restart: unless-stopped

Heimdall - Dashboard

There are multiple dashboard applications but I use Heimdall.

heimdall:
    container_name: heimdall
    image: ghcr.io/linuxserver/heimdall
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    volumes:
      - '/home/${USER}/server/configs/heimdall:/config'
    ports:
      - 8090:80
    restart: unless-stopped

Flaresolverr - Solves cloudflare captcha

If your indexers use captcha, you will need flaresolverr for them.

flaresolverr:
    container_name: flaresolverr
    image: 'ghcr.io/flaresolverr/flaresolverr:latest'
    ports:
      - '8191:8191'
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Kolkata
    restart: unless-stopped

Transcoding

As I mentioned in the jellyfin section there is a section in the conmpose file as "devices". It is used for transcoding. If you don't include that section, whenever transcoding happens it will only use CPU. In order to utilise your gpu the devices must be passed on to the container.

https://jellyfin.org/docs/general/administration/hardware-acceleration.html Read up this guide to setup hardware acceleration for your gpu.

Generally, the devices are same for intel gpu transcoding.

devices:
      - '/dev/dri/renderD128:/dev/dri/renderD128'
      - '/dev/dri/card0:/dev/dri/card0'

To monitor the gpu usage install intel-gpu-tools

sudo apt install intel-gpu-tools

Now, create a compose file for media server.

mkdir ~/server/compose/media-server
vi ~/server/compose/media-server/docker-compose.yml

And copy all the containers you want to use under services. Remember to add the version string just like adguard home compose file.

Configuring the docker stack

Start the containers using the same command we used to start the adguard home container.

docker-compose up -d

Jackett

Navigate to YOUR_SERVER_IP:9117

Add a few indexers to jackett using the "add indexer" button. You can see the indexers I use in the image below.

Indexers

Qbittorrent

Navigate to YOUR_SERVER_IP:8080

The default username is admin and password adminadmin. You can change the user and password by going to Tools → Options → WebUI

Change "Default Save Path" in WebUI section to /data/torrents/ and "Keep incomplete torrents in" to /data/torrents/incomplete/

Create categories by right clicking on sidebar under category. Type category as TV and path as tv. Path needs to be same as the folder you created to store your media. Similarly for movies type Movies as category and path as movies. This will enable to automatically move the media to its correct folder.

Sonarr

Navigate to YOUR_SERVER_IP:8989

  • Under "Download Clients" add qbittorrent. Enter the host as YOUR_SERVER_IP port as **8080,** and the username and password you used for qbittorrent. In category type TV (or whatever you selected as category name(not path) on qbittorent). Test the connection and then save.
  • Under indexers, for each indexer you added in Jackett
    • Click on add button
    • Select Torzab
    • Copy the tornzab feed for the indexer from jackett
    • Copy the api key from jackett
    • Select the categories you want
    • Test and save
  • Under general, define the root folder as /data/media/tv

Repeat this process for Radarr, Lidarr and readarr.

Use /data/media/movies as root for Radarr and so on.

The setup for ombi/overseerr is super simple. Just hit the url and follow the on screen instructions.

Bazarr

Navigate to YOUR_SERVER_IP:6767

Go to settings and then sonarr. Enter the host as YOUR_SERVER_IP port as 8989. Copy the api key from sonarr settings→general.

Similarly for radarr, enter the host as YOUR_SERVER_IP port as 7878. Copy the api key from radarr settings→general.

Jellyfin

Go to YOUR_SERVER_IP:8096

  • Add all the libraries by selecting content type and then giving a name for that library. Select the particular library location from /data/media. Repeat this for movies, tv, music, books and audiobooks.
  • Go to dashboard→playback, and enable transcoding by selecting as VAAPI and enter the device as /dev/dri/renderD128

Monitor GPU usage while playing content using

sudo intel_gpu_top

Heimdall

Navigate to YOUR_SERVER_IP:8090

Setup all the services you use so you don't need to remember the ports like I showed in the first screenshot.

Updating docker images

With docker compose updates are very easy.

  • Navigate to the compose file directory ~/server/compose/media-server.
  • Then docker-compose pull to download the latest images.
  • And finally docker-compose up -d to use the latest images.
  • Remove old images by docker system prune -a

What's next

  • You can setup VPN if torrents are blocked by your ISP/Country. I wanted to keep this guide simple and I don't use VPN for my server, so I have left out the VPN part.
  • You can read about port forwarding to access your server over the internet.
 
1
Rule 1. No party pooping (lemmy.dbzer0.com)
submitted 2 years ago* (last edited 2 years ago) by db0@lemmy.dbzer0.com to c/adhd@lemmy.dbzer0.com
 

OK, I've seen enough of these comments that I need to make the first rule.

Do not make condescending comments like "This is just normal things everyone does, not your self-diagnosed ADHD." or "Everyone has ADHD now /s"

This is a meme community for ADHD people, not your personal soapbox. We don't care why you think we find these relatable.

Making comments like these is causing those posting these memes to be discouraged, and dismissing their lived experiences. Don't be that person.

Just for the record, not every ADHD person is the same. I don't identify with all of these memes, nor do I think they're all necessarily ADHD-related. But even as someone with ADHD, I recognize that not every reacts the same way and I don't know all the possible symptoms of it. And If I, with diagnosed ADHD can't know that, you, a random lemming, certainly don't know either!

Likewise, if you find most of these memes relatable, you might have ADHD, or you might have Autism, or both! These two are close cousins, their symptoms overlap and they have a high comorbidity with each other. Relating too much with ADHD memes is a typical first step which led a lot of people to realizing they had it! Feel free to read up on the ADHD symptoms and get diagnosed if you think it's currently affecting your life significantly.

That said, anyone making this sort of comments, is gonna get a one-week ban from this community for party pooping. If you want to complain that "everyone has ADHD now" or some shit, go do it elsewhere. Naturally we use common sense. It's OK to ask questions in good faith.

As always, this is a "fuck around and find out" rule. We'll know it when we see it.

PS: Since we added a new rule, I could also use some mods to enforce it. If any of you is up for this, lemme know. I will only add people who I've seen interact with this or other ADHD communities positively.

And here's an extremely relevant meme to lighten the mood:

 

A fellow mod informed me that about it as I was laying in bed. Reddit sent a message to the mod team and after 1 hour demoded me. I didn't even had time to see it, never-mind respond to it.

Looks like we rattled reddit enough to start shooting. There goes all that fancy talk about our protest not affecting them much.

Just FYI for now. It's late here so I'll see how we proceed tomorrow.

view more: ‹ prev next ›