pe1uca

joined 1 year ago
[–] [email protected] 11 points 3 weeks ago (13 children)

Unless lemmy devs have changed something since last year, this shouldn't be the case, there's a bug in there.

All interactions are recived by the instance hosting the community, and that instance is responsible for broadcasting that interaction to each instance where a user subscribed to it is hosted.
So, mastodon is only responsible for sending the upvote to feddit.dk and then feddit.dk to all other instances.

[–] [email protected] 4 points 4 weeks ago (2 children)

I'm not saying to delete, I'm saying for the file system to save space by something similar to deduping.
If I understand correctly, deduping works by using the same data blocks for similar files, so there's no actual data loss.

[–] [email protected] 17 points 1 month ago (1 children)

Well, seems they already had the vaping sensors implemented and they're just announcing the notifications implementation... How hard is to just build am android app that displays a list and a popup?

[–] [email protected] 5 points 1 month ago

but often lead developers to just display them in the frontend

Oh boy I feel this one.
My API is meant for scripting (i.e. it's for developers and the errors are for developers), but the UI team uses it and they just straight display the error from their HTTP request for none technical people which might also not get to know all the parameters actually needed for the request.
And even when the error is in fact in my code, and I sent all the data I need to debug and replicate the error, the users can't tell me because the UI truncates the response, so the user only sees something like Error in pe1uca's API: {"error":"bad request","message":"Your request has an error, please check th... (truncated). So the message gets truncated and the link to the documentation is also never shown .-.

[–] [email protected] 2 points 1 month ago

Don't know what are the changes since 7807 (which this one obsoletes) but this article helped me quickly understand the first one, hopefully it's still somewhat relevant.
https://lakitna.medium.com/understanding-problem-json-adf68e5cf1f8

[–] [email protected] 4 points 1 month ago

Think of a URL and its dots like folders in your drive where each can have different files in each of them even if they have the same name as another folder.
They're just written in reverse order.
(Also a whole lot of other differences and other technical details on how to actually make the site work, but for your question we can just keep at this)

So, you have the social root folder (Top Level Domain) which contains many sub folders, one of them is mastodon and another is piefed.
Each have their own files to render their UI and process the requests they receive, but they don't talk to each other, even when they might have some files and requests with the same name.
The same way you have in your home folder your documents, pictures, videos, downloads, etc.
And yeah, they can go even deeper, my lemmy instance is lemmy.pe1uca.dev, not just lemmy.world like for this community.
I could have mastodon.pe1uca.dev if I'd like.

[–] [email protected] 1 points 1 month ago (1 children)

This is one of the exceptions.
This reform will make judges be able to be voted by the people, and all the world knows the implications of that in Mexico's elections.
It also removes a lot of the requirements to the candidates.

Currently there are cases of people trying to get judicial protection against laws the executive is pushing which the legislature blindly approved since they were put in there by the ruling party. Now imagine if that ruling party was also deep into the judicial system, the people wouldn't have anyone to turn to ask for help.

And that's what investors are concerned about, investing in Mexico and losing everything because there's no one to stop what the president says.

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago) (1 children)

I had a similar case.
My minipc has a microSD card slot and I figured if it could be done for a RPI, why not for a mini PC? :P

After a few months I bought a new m2nvme but I didn't want to start from scratch (maybe I should've looked into nix?)
So what I did was sudo dd if=/dev/sda of=/dev/sdc bs=1024k status=progress
And that worked perfectly!

Things to note:

  • both drives need to be unmounted, so you need a live OS or another machine.
  • The new drive will have the same exact partitions, which means the same size, so you need to expand them after the copy.
  • PS: this was for a drive with ext4 partitions, but in theory dd works with the bytes so it shouldn't be an issue what fs you use.
[–] [email protected] 52 points 1 month ago (2 children)

What?
Well, I can only speak for myself, I'm not here to follow users but communities.
And if someone wants to follow me I'd see it as kind of annoying for them seeing all the different topics I post and comment instead of something focused.

IMO the ability to see Mastodon interactions in Lemmy and vice-versa is quite annoying since they use the same protocol for different experiences.

[–] [email protected] 13 points 1 month ago (1 children)

I would if I'd be able to run my own models, it'd be better than having to connect to my server.
But AFAIK these features won't be available to all developers, so I'm guessing only Google apps will be able to properly use the potential of the phone.

[–] [email protected] 1 points 1 month ago (1 children)

Nice, that's mostly what I need!
The only thing missing now are the parameters needed to launch with the correct workout

[–] [email protected] 3 points 1 month ago

I don't know why it needs internet access and why the first thing it tries to do is connect to an IP TV site, and because it can't it crashes.
Can't trust that, hehe

 

cross-posted from: https://lemmy.pe1uca.dev/post/1136490

I'm checking this mini pc https://www.acemagic.com/products/acemagic-ad08-intel-core-i9-11900h-mini-pc

It says the M2 and SATA ports are limited to 2TB, but I can't imagine why that's the case.
Could there be a limit on the motherboard? On the CPU?
If most likely this is done in software (windows) probably it won't matter since I'm planning to switch to linux.

What I want to avoid is buying it and being unable to use an 8TB drive.

 

I'm checking this mini pc https://www.acemagic.com/products/acemagic-ad08-intel-core-i9-11900h-mini-pc

It says the M2 and SATA ports are limited to 2TB, but I can't imagine why that's the case.
Could there be a limit on the motherboard? On the CPU?
If most likely this is done in software (windows) probably it won't matter since I'm planning to switch to linux.

What I want to avoid is buying it and being unable to use an 8TB drive.

 

I started tinkering with frigate and saw the option to use a coral ai device to process the video feeds for object recognition.

So, I started checking a bit more what else could be done with the device, and everything listed in the site is related to human recognition (poses, faces, parts) or voice recognition.

In some part I read stable diffusion or LLMs are not an option since they require a lot of ram which these kind of devices lack.

What other good/interesting uses can these devices have? What are some of your deployed services using these devices for?

 

I have a few servers running some services using a custom domain I bought some time ago.
Each server has its own instance of caddy to handle a reverse proxy.
Only one of those servers can actually do the DNS challenge to generate the certificates, so I was manually copying the certificates to each other caddy instance that needed them and using the tls directive for that domain to read the files.

Just found there are two ways to automate this: shared storage, and on demand certificates.
So here's what I did to make it work with each one, hope someone finds it useful.

Shared storage

This one is in theory straight forward, you just mount a folder which all caddy instances will use.
I went through the route of using sshfs, so I created a user and added acls to allow the local caddy user and the new remote user to write the storage.

setfacl -Rdm u:caddy:rwx,d:u:caddy:rwX,o:--- ./
setfacl -Rdm u:remote_user:rwx,d:u:remote_user:rwX,o:--- ./
setfacl -Rm u:remote_user:rwx,d:u:remote_user:rwX,o:--- ./

Then on the server which will use the data I just mounted it

remote_user@<main_caddy_host>:/path/to/caddy/storage /path/to/local/storage fuse.sshfs noauto,x-systemd.automount,_netdev,reconnect,identityfile=/home/remote_user/.ssh/id_ed25519,allow_other,default_permissions,uid=caddy,gid=caddy 0 0

And included the mount as the caddy storage

{
	storage file_system /path/to/local/storage
}

On demand

This one requires a separate service since caddy can't properly serve the file needed to the get_certificate directive

We could run a service which reads the key and crt files and combines them directly from the main caddy instance, but I went to serve the files and combine them in the server which needs them.

So, in my main caddy instance I have this:
I restrict the access by my tailscale IP, and include the /ask endpoint required by the on demand configuration.

@certificate host cert.localhost
handle @certificate {
	@blocked not remote_ip <requester_ip>
	respond @blocked "Denied" 403

	@ask {
		path /ask*
		query domain=my.domain domain=jellyfin.my.domain
	}
	respond @ask "" 200

	@askDenied `path('/ask*')`
	respond @askDenied "" 404

	root * /path/to/certs
	@crt {
		path /cert.crt
	}
	handle @crt {
		rewrite * /wildcard_.my.domain.crt
		file_server
	}

	@key {
		path /cert.key
	}
	handle @key {
		rewrite * /wildcard_.my.domain.key
		file_server
	}
}

Then on the server which will use the certs I run a service for caddy to make the http request.
This also includes another way to handle the /ask endpoint since wildcard certificates are not handled with *, caddy actually asks for each subdomain individually and the example above can't handle wildcard like domain=*.my.domain.

package main

import (
	"io"
	"net/http"
	"strings"

	"github.com/labstack/echo/v4"
)

func main() {
	e := echo.New()

	e.GET("/ask", func(c echo.Context) error {
		if domain := c.QueryParam("domain"); strings.HasSuffix(domain, "my.domain") {
			return c.String(http.StatusOK, domain)
		}
		return c.String(http.StatusNotFound, "")
	})

	e.GET("/cert.pem", func(c echo.Context) error {
		crtResponse, err := http.Get("https://cert.localhost/cert.crt")
		if err != nil {
			return c.String(http.StatusInternalServerError, "")
		}
		crtBody, err := io.ReadAll(crtResponse.Body)
		if err != nil {
			return c.String(http.StatusInternalServerError, "")
		}
		defer crtResponse.Body.Close()
		keyResponse, err := http.Get("https://cert.localhost/cert.key")
		if err != nil {
			return c.String(http.StatusInternalServerError, "")
		}
		keyBody, err := io.ReadAll(keyResponse.Body)
		if err != nil {
			return c.String(http.StatusInternalServerError, "")
		}

		return c.String(http.StatusOK, string(crtBody)+string(keyBody))
	})

	e.Logger.Fatal(e.Start(":1323"))
}

And in the CaddyFile request the certificate to this service

{
	on_demand_tls {
		ask http://localhost:1323/ask
	}
}

*.my.domain {
	tls {
		get_certificate http http://localhost:1323/cert.pem
	}
}
 

Seems the SSD sometimes heats up and the content disappears from the device, mostly from my router, sometimes from my laptop.
Do you know what I should configure to put the drive to sleep or something similar to reduce the heat?

I'm starting up my datahoarder journey now that I replaced my internal nvme SSD.

It's just a 500GB one which I attached to my d-link router running openwrt. I configured it with samba and everything worked fine when I finished the setup. I just have some media files in there, so I read the data from jellyfin.

After a few days the content disappears, it's not a connection problem from the shared drive, since I ssh into the router and the files aren't shown.
I need to physically remove the drive and connect it again.
When I do this I notice the somewhat hot. Not scalding, just hot.

I also tried this connecting it directly to my laptop running ubuntu. In there the drive sometimes remains cool and the data shows up without issue after days.
But sometimes it also heats up and the data disappears (this was even when the data was not being used, i.e. I didn't configure jellyfin to read from the drive)

I'm not sure how I can be sure to let the ssd sleep for periods of time or to throttle it so it can cool off.
Any suggestion?

 

I started fiddling with my alias service and started wondering what approach other people might take.
Not necessarily the best option but what do you prefer? What are the pros and cons you see with each option?

Currently I'm using anonaddy and proton, so I have a few options to create aliases.

  • The limited shared domain aliases (from my current subscription level)
    Probably the only option to not be tracked if it would be unlimited, I'd just have to pay more for the service.
  • Unlimited aliases with a subdomain of the shared domain
    For example: baked6863.addy.io
  • Unlimited aliases with custom domain.
  • Unlimited aliases with subdomain in custom domain.
    This is different from the one above since the domain could be used for different things, not dedicated to email.
  • Catch-all with addy.
    The downside I've read is people could spam any random word, and if then disabled the people that had an incorrect alias wouldn't be able to communicate anymore.
  • Catch-all with proton.
    Since proton has a limit on how many email addresses you actually have, so when you receive an email to an alias and want to replay to it you'll be doing it from the catch-all address instead of the alias.

What do you think?
What option would you choose?

 

I started delving into world and dungeon generation with different techniques.
The one I want to try is wave function collapse.

There are several videos and repos explaining and showcasing how it works and how it can be used to generate an infinite world.

One question I have and haven't seen any mention about is, how do I recreate/reload the map from any point other than the original starting one?

So, AFAIK the algorithm start from a few tiles/pixels in a starting position, or picking their position at random, and then can collapse the rest of the map with the set of rules given to the building blocks, but if these starting tiles/pixels are far away after a player saves, then I can only think about having to start from them again to reach the saved point to be able to show the same world which of course could mean a very long loading screen.

Maybe the save can include the current seed, but then it can advance differently when the player goes back, which means the algorithm would generate a different portion of the map.
How can I ensure the world would be regenerated as it was?

While writing this I'm thinking I could be generating the seed of a block of tiles/pixels based on the seed of neighboring blocks and the coordinates in the map, something like left: seed+X, right: seed-Y, where X and Y are calculated based on the coordinate of the block.
This way I can save the seed of the current block and easily recalculate the seed used to generate all the adjacent blocks.
What do you think about this approach?

 

I have an old android tablet (and several phones) that I want to use for small applications in my home automation.
For the most part just to show a web page to quickly click something to activate or read the status.

My issue is the OS installed is very old and of course there are no official updates.
Looking for custom roms they are also somewhat old because the age of the devices, and everyone says "don't use the rom of one device into another even if the models are very similar".

So, my question is, what are my options if I can't use a pre-built rom?
Could I keep the same OS and just restrict access to only my internal network?
Not sure if I'm being too paranoid about security risks using these devices to just connect to my services.

 

What's your recommendation for a selfhosted services to stream some private videos from S3 compatible service (vultr)?

I was thinking a private peertube instance could work, but it requires the S3 files to be public and allow all origins, so I don't like that idea.

The other one was to use rclone mount to have it as another block storage, but I don't know what are the cons of this, or if it's possible to use it with this kind of services.

This won't be for my camera videos (already have immich) nor for series/movies (jellyfin). It'll be for random videos from youtube, or twitch which I want to hoard.

(Also if you have a recommendation for cheap online storage for this it'll be appreciated, Vultr's is $0.006/GB)

 

I've been looking for an all mesh chair since I tend to run hot so every chair I use ends up making me sweat.

There's this one Naz President Full-Back Mesh but I can't find any reviews for it.

There are also these two in amazon Razzor Ergonomic Mesh Office Chair and FelixKing Ergonomic Desk Chair but I've been reading mixed reviews (as well as any other chair in amazon)

So, do you guys have any budget all mesh chair recommendation? Or maybe a chair which doesn't heat up so much or cools down quickly?

(I currently have a gaming chair... worst purchase I've ever made for my back)

 

I want to have something similar to a google's nest hub to display different type of information, like weather, bus times, my own services information, photo gallery, etc.

It's not a problem if I have to manually write plugins for custom integrations.
It'll be better if it's meant to be shown in a web browser.

I remember there were some related to a screen for a digital mirror, or a kiosk screen, but I can't find a good one to selfhost and extends to my needs.

The ones I've found are focused on showing stats of deployed services and quick links to them.

8
submitted 10 months ago* (last edited 10 months ago) by [email protected] to c/[email protected]
 

Je jusqu'ai vu un rebais de 40% chez bureau en gros pour une chaise, mais je suis pas sure si cette rebais est suffisamment bon par comparaison à toute autre que pourrait être ca jour.

Vous vous y attendiez?
Ou je fais trop confiance à cette journée?

(J'ai pas l'habitude des rebais de ce journée, alor je sais pas à que m'attendre)

view more: ‹ prev next ›