Tryp

joined 2 years ago
[–] Tryp@fuckreddit.tryp.digital 6 points 2 years ago

The Tor implementation on Brave is not for serious use cases and I would only use it for general things.

Additionally you can use regular firefox to view onions with a few simple steps try googling it. Once again this wouldn't be for serious use cases and you lose all the protections Tor browser provides.

[–] Tryp@fuckreddit.tryp.digital 2 points 2 years ago (1 children)

if that’s even possible

Nested virtualization is possible with supported software AND hardware, a lot of consumer products lack the hardware to make it happen though and even then still inefficient. I've tried in the past and I get an error plainly stating I can't run hypervisors within a hypervisor. The concept has been around for a while especially with large corporations like VMware and IBM.

it has a significant learning curve last time I checked

It's a learning curve but if you can manage virtualbox it shouldn't be too hard to figure out Qube manager. The latest 4.1 release is definitely the best one thus far for stability and ease of use since the automatically updater actually works!

 

I understand this isn't supported.

I've been trying to confangle this myself but not having much luck, feels like I'm missing some critical info on how to configure docker-compose.yml and nginx.conf. I've tried a few iterations now but here's what I thought would be close. These are the only two files I've edited thus far, I'm using 0.16.2 for my 2nd front end so I can tell when I'm using it. I can view localhost:1236 fine but not localhost:1237 which gives me 502 bad gateway error, favicon still appears in tab though.

I'm thinking I need to open a separate port on lemmy to config another upstream entry in my nginx.conf? In prod the goal would be to have each frontend under a different subdomain for a research project I have in mind.

docker-compose.yml

version: '3.3'

services:
  nginx:
    image: nginx:1-alpine
    ports:
      - "1236:1236"
      - "1237:1237"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
    restart: always
    depends_on:
      - pictrs
      - lemmy-ui
      - lemmy-uir

  lemmy:
    image: lemmy-dev:latest
    ports:
      - "8536:8536"
      - "6669:6669"
    restart: always
    environment:
      - RUST_LOG="warn,lemmy_server=debug,lemmy_api=debug,lemmy_api_common=debug,lemmy_api_crud=debug,lemmy_apub=debug,lemmy_db_schema=de>
    volumes:
      - ../lemmy.hjson:/config/config.hjson
    depends_on:
      - pictrs
      - postgres
      - otel

  lemmy-ui:
    image: dessalines/lemmy-ui:0.16.3
    restart: always
    environment:
      - LEMMY_INTERNAL_HOST=lemmy:8536
      - LEMMY_EXTERNAL_HOST=localhost:1234
      - LEMMY_HTTPS=false
      - LEMMY_UI_DEBUG=true
    depends_on:
      - lemmy

  lemmy-uir:
    image: dessalines/lemmy-ui:0.16.2
    restart: always
    environment:
      - LEMMY_INTERNAL_HOST=lemmy:8536
      - LEMMY_EXTERNAL_HOST=localhost:1235
      - LEMMY_HTTPS=false
      - LEMMY_UI_DEBUG=true
    depends_on:
      - lemmy

nginx.conf

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    upstream lemmy {
        server "lemmy:8536";
    }
    upstream lemmy-ui {
        server "lemmy-ui:1234";
    }
    server {
      listen       1236;
      server_name  localhost 127.0.0.1;

      # frontend
      location / {
        set $proxpass "http://lemmy-ui";
        if ($http_accept = "application/activity+json") {
          set $proxpass "http://lemmy";
        }
        if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
          set $proxpass "http://lemmy";
        }
        if ($request_method = POST) {
          set $proxpass "http://lemmy";
        }
        proxy_pass $proxpass;

        rewrite ^(.+)/+$ $1 permanent;

        # Send actual client IP upstream
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       }

      # backend
      location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
        proxy_pass "http://lemmy";
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        # Add IP forwarding headers
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
    }

    upstream lemmy-uir {
        server "lemmy-uir:1235";
    }
    server {
      listen       1237;
      server_name  localhost 127.0.0.1;

      # frontend
      location / {
        set $proxpass "http://lemmy-uir";
        if ($http_accept = "application/activity+json") {
          set $proxpass "http://lemmy";
        }
        if ($http_accept = "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"") {
          set $proxpass "http://lemmy";
        }
        if ($request_method = POST) {
          set $proxpass "http://lemmy";
        }
        proxy_pass $proxpass;

        rewrite ^(.+)/+$ $1 permanent;

        # Send actual client IP upstream
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }

      # backend
      location ~ ^/(api|pictrs|feeds|nodeinfo|.well-known) {
        proxy_pass "http://lemmy";
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        # Add IP forwarding headers
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
    }
 }

logs for lemmy-uir, identical logs to lemmy-ui

docker-compose logs --tail=100 lemmy-uir
Attaching to dev_lemmy-uir_1
lemmy-uir_1  | Inferno is in development mode.
lemmy-uir_1  | httpbase: http://lemmy:8536
lemmy-uir_1  | wsUri: ws://lemmy:8536/api/v3/ws
lemmy-uir_1  | isHttps: false
lemmy-uir_1  | No JWT cookie found.
lemmy-uir_1  | http://0.0.0.0:1234

Grabbed this from the nginx logs:

nginx_1      | 2022/05/20 10:44:34 [error] 33#33: *10 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.137.1, server: localhost, request: "GET / HTTP/1.1", upstream: "http://172.25.0.8:1235/", host: "192.168.137.132:1237"
nginx_1      | 192.168.137.1 - - [20/May/2022:10:44:34 +0000] "GET / HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36"
nginx_1      | 2022/05/20 10:44:34 [error] 33#33: *10 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.137.1, server: localhost, request: "GET /favicon.ico HTTP/1.1", upstream: "http://172.25.0.8:1235/favicon.ico", host: "192.168.137.132:1237", referrer: "http://192.168.137.132:1237/
[–] Tryp@fuckreddit.tryp.digital 1 points 2 years ago

I use to be able to send QuadrigaCX like 2k cash by mail hidden in a DVD box and it would be credited to my account that only had fake info. Those were the days.

[–] Tryp@fuckreddit.tryp.digital 2 points 2 years ago (1 children)

Cool site, I'll post one I've used for anyone curious.

https://switching.software/

[–] Tryp@fuckreddit.tryp.digital 5 points 2 years ago

Sex cannot be differentiated from rape

Well that's pretty fucking terrifying.

and while such laws remain, men are gonna be frustrated since sex is an evolutionary desire which cannot be removed

They exist now and I'm not getting frustrated. Maybe not so universal you know? Do you believe that the disparity in young men getting laid is related to laws against rape and stalking and not the fact woman are getting stalked and raped to begin with?

[–] Tryp@fuckreddit.tryp.digital 3 points 2 years ago

Well there was phoneblocs that inspired Google PRoject Ara that actually made a phone with swappable modules but they promptly killed it like all things Google does. I was beyond excited for these during the time, such disappointment.

https://www.onearmy.earth//project/phonebloks

That site mentions shiftphone and fairphone both of which use screws instead of glue and are easily repaired.

[–] Tryp@fuckreddit.tryp.digital 2 points 2 years ago* (last edited 2 years ago)

I don't have the patience or interest to watch this whole video to find out what it's saying but the graphics I saw as I clicked through were hilarious and have intrigued me enough to post this comment asking for a summary if someone was so inclined.

[–] Tryp@fuckreddit.tryp.digital 5 points 2 years ago* (last edited 2 years ago)

Detection technologies have already acquired a high degree of accuracy

I wonder what they consider high accuracy because it will almost certainly not be enough. Millions of people being monitored means billions of messages a day. For a billion messages a program that'a 99.999% accurate will have 10,000 false positives a day and 1 billion messages a day is a fairly low estimate imo.

Mind blowing we still have to tell governments that back doors for you mean a back door for them.

I assume this technology would be applied to every government employee and politician who would then be forced to use unencrypted messages so we know they aren't involved in any CSAM?

[–] Tryp@fuckreddit.tryp.digital 3 points 2 years ago (1 children)

Well no surprise this happened to UST, their dollar peg is just a mint burn algo to for correction but wild market fluctuations will definitely put it to the test as we've seen here.

I think it's a cool idea but in long term practicality I don't see how you can rely on it. Crashes aren't all the same and this wasn't even a big one, how long until you can confidently say this crash won't affect it? Would you really leave all your holdings in UST/LUNA knowing this is possible?

If Luna Foundation Guard (aka the federal reserve of UST if this context) has to come out and save the day then they don't really have a functional product and it's a just a business desperately trying to stave off bankruptcy. What's the difference to our modern economy?

[–] Tryp@fuckreddit.tryp.digital 4 points 2 years ago (7 children)

You can definitely do plain text but your phone might not support it without an additional application which seems silly but they didn't work on my s9. URLs only.

[–] Tryp@fuckreddit.tryp.digital 2 points 2 years ago

This would probably help against timing attacks or similar? Just posting this link below for anyone's who curious on Tor attack methods.

https://www.whonix.org/wiki/Speculative_Tor_Attacks

 

I've been messing around with a self-hosted ELK stack and am curious on using it's APM for lemmy. I would have to setup another server to do this it seems so I'd like to get some insight into what others are doing.

Picture is a screenshot of a metrics dashboard I'm getting with metricbeat + system module, not getting much with the docker one yet for some reason. I was able to get it with an Elastic Agent and the docker integration but I switched to this since it was kinda heavy on the memory.

 

Using Lemmy from a personal instance requires a little bit of work if you wanna start federating with the wider ecosystem and personalize your content. You just simply copy/paste the URL of the community you wanna view into your instances search bar and BOOM! We're federating.

But what I noticed is that you must use your keyboard to search by hitting Enter when using the top search bar on almost any lemmy page, the exception would the dedicated search page. Either way you still have to take two actions in order to search; one action too many in my opinion so lets shorten that.

To side step this I setup two hotkeys using the AutoControl browser add-on. If someone has a better way please let me know!

  • right click hold for 1s = paste+enter
  • ctrl+shift+v = paste+enter

This way no matter which page I'm on or if I'm only using my mouse I can execute one action to paste+search instantly! Makes searching for instances to federate with a breeze along with subscribing to their communities.

view more: next ›