Welcome to Incremental Social! Learn more about this project here!
Check out lemmyverse to find more communities to join from here!

@mike_wooskey@lemmy.d.thewooskeys.com avatar

mike_wooskey

@mike_wooskey@lemmy.d.thewooskeys.com

This profile is from a federated server and may be incomplete. Browse more on the original instance.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I should add that I'm running Traefik 2.11.2 and wireguard from the Linuxserver image lscr.io/linuxserver/wireguard version v1.0.20210914-ls22.

mike_wooskey OP , (edited )
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for helping, @Lem453.

Both wireguard containers are using my router for DNS, and my router points myapp.mydomain.com and whoami.mydomain.com to "client".

https://lemmy.d.thewooskeys.com/pictrs/image/b62d7314-644c-4fd1-bfac-1cabb7d99292.png

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for helping, @lemmyvore.

I'm browsing from my laptop on the same network as promox: 192.168.1.0/24

The tunnel is relevant in that my ultimate goal will be to have "client" in the cloud so I can access my apps from the world while having all traffic into my house be through a VPN.

The VM's IPs are 192.168.1.50 ("server") and 192.168.1.51 ("client"). They can see everything on their subnet and everything on their subnet can see them.

Everything is using my router for DNS, and my router points myapp.mydomain.com and whoami.mydomain.com to “client”. And by "everything" I mean all computers on the subnet and all containers in this project.

Both VMs and my laptop resolve myapp.mydomain.com and whoami.mydomain.com to 192.168.1.51, which is "client", and can ping it.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks so much for helping me troubleshoot this, @lemmyvore!

Is the browser also using the LAN router for DNS? Some browsers are set to use DoT or DoH for DNS, which would mean they’d bypass your router DNS.

My browser was using DoH, but I turned it off and still have the same issue.

Do you also get “Internal Server Error” if you make the request with curl on the CLI on the laptop?

Yes, running curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51 on the laptop results in "Internal Server Error".

How did you check that mydomain is being resolved correctly on the laptop?

ping whoami.mydomain.com hits 192.168.1.51.

What do you get with curl from the other VM, or from the router, or from the host machine of the VM?

From the router:

Shell Output - curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0-
100    17  100    17    0     0   8200      0 --:--:-- --:--:-- --:--:-- 17000

100    21  100    21    0     0    649      0 --:--:-- --:--:-- --:--:--   649
Internal Server Error

From the wireguard client container on the "client" VM:

curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51
Internal Server Error

From the traefik container on the "client" VM:

$ curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51
Internal Server Error

From the "client" VM itself:

# curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51
Internal Server Error

From the wireguard container on the "server" VM:

# curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51
Internal Server Error

From the traefik container on the "server" VM (This is interesting. Why can't I ping from this traefik installation but a can from the other? But even though it won't ping, it did resolve to the correct IP):

$ ping whoami.mydomain.com
PING whoami.mydomain.com (192.168.1.51): 56 data bytes
ping: permission denied (are you root?)

From the "server" VM itself:

# curl -L -k --header 'Host: whoami.mydomain.com' 192.168.1.51
Internal Server Error
mike_wooskey OP , (edited )
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Also, just to make sure the app is indeed running, I curled it from it's own container (I'm using myapp here instead of whoami, because whoami doesn't have a shell):

$ curl -L -k --header 'Host: myapp.mydomain.com localhost:8080

I can't seem to display html tags in this comment, but the results are the html tags for the web page for the app - so the app is up and running

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for helping, @deergon.

Both traefik containers (on the "server" and "client" VMs) and the wireguard server container were built with TRAEFIK_NETWORK_MODE=host. The VMs can ping each other and the Wireguard containers can ping each other.

Both traefik containers were built with TRAEFIK_LOG_LEVEL=warn but I changed them both to TRAEFIK_LOG_LEVEL=info just now. There's a tad more info in the logs, but nothing that seems pertinent.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

From traefik's access.log:

{"ClientAddr":"192.168.1.17:45930","ClientHost":"192.168.1.17","ClientPort":"45930","ClientUsername":"-","DownstreamContentSize":21,"DownstreamStatus":500,"Duration":13526669,"OriginContentSize":21,"OriginDuration":13462593,"OriginStatus":500,"Overhead":64076,"RequestAddr":"whoami.mydomain.com","RequestContentSize":0,"RequestCount":16032,"RequestHost":"whoami.mydomain.com","RequestMethod":"GET","RequestPath":"/","RequestPort":"-","RequestProtocol":"HTTP/2.0","RequestScheme":"https","RetryAttempts":0,"RouterName":"websecure-whoami-vpn@file","ServiceAddr":"10.13.16.1","ServiceName":"whoami-vpn@file","ServiceURL":{"Scheme":"https","Opaque":"","User":null,"Host":"10.13.16.1","Path":"","RawPath":"","OmitHost":false,"ForceQuery":false,"RawQuery":"","Fragment":"","RawFragment":""},"StartLocal":"2024-04-30T00:21:51.533176765Z","StartUTC":"2024-04-30T00:21:51.533176765Z","TLSCipher":"TLS_CHACHA20_POLY1305_SHA256","TLSVersion":"1.3","entryPointName":"websecure","level":"info","msg":"","time":"2024-04-30T00:21:51Z"}
{"ClientAddr":"192.168.1.17:45930","ClientHost":"192.168.1.17","ClientPort":"45930","ClientUsername":"-","DownstreamContentSize":21,"DownstreamStatus":500,"Duration":13754666,"OriginContentSize":21,"OriginDuration":13696179,"OriginStatus":500,"Overhead":58487,"RequestAddr":"whoami.mydomain.com","RequestContentSize":0,"RequestCount":16033,"RequestHost":"whoami.mydomain.com","RequestMethod":"GET","RequestPath":"/favicon.ico","RequestPort":"-","RequestProtocol":"HTTP/2.0","RequestScheme":"https","RetryAttempts":0,"RouterName":"websecure-whoami-vpn@file","ServiceAddr":"10.13.16.1","ServiceName":"whoami-vpn@file","ServiceURL":{"Scheme":"https","Opaque":"","User":null,"Host":"10.13.16.1","Path":"","RawPath":"","OmitHost":false,"ForceQuery":false,"RawQuery":"","Fragment":"","RawFragment":""},"StartLocal":"2024-04-30T00:21:51.74274202Z","StartUTC":"2024-04-30T00:21:51.74274202Z","TLSCipher":"TLS_CHACHA20_POLY1305_SHA256","TLSVersion":"1.3","entryPointName":"websecure","level":"info","msg":"","time":"2024-04-30T00:21:51Z"}

All I can tell from this is that there is a DownstreatStatus of 500. I don't know what that means.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

By "server log", do you mean traefik's log? If so, this is the only thing I could find (and I don't know what it means): https://lemmy.d.thewooskeys.com/comment/514711

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

@deergon, @shasta, and @lemmyvore,

THanks for your help. My main issue ended up being that I was trying to use Let's Encrypt's staging mode, but since staging certs are self-signed, Traefik was not accepting the requests. Also, though I had to switch Traefik's logging level to Info instead of error to see that.

Seeking assistance configuring conversations/intents

I have input_text.event_1 where the value is currently "birthday", input_text.event_2 where the value is currently "christmas", input_date.event_1 where the value is currently "1/1/2000", and input_date.event_2 where the value is currently "12/25/2024". How do I configure voice assistant to recognize a phrase like "what's the...

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks, @thegreekgeek. I didn't know you could use special sentence syntax in automations. That's pretty helpful because an action can be conditional, and I think you can even make them conditional based on which specific trigger fired the automation.

It still seems odd that I'd have to make separate automations for each helper I want to address (or separate automation conditions for each), as opposed to having the spoken command have a "variable" and then use that variable to determine which input help to return the value of. But if that's possible, maybe it's just beyond my skill level.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Yes, @thegreekgeek, now knowing that I can use sentence syntax in automations, I have built 1 automation to handle my specific needs. But each trigger is a hardcoded value instead of a "variable". For example, trigger 1 is "sentence = 'what is the date of my birthday'" and I trigger an action conditionally to speak the value of input_date.event_1 because I know that's where I stored the date for "my birthday".

What would be awesome is your 2nd suggestion: passing the name of the input_date helper through to the response with a wildcard. I can't figure out how to do that. I've tried defining and using slots but I just don't understand the syntax. Which file do I define the slots in, and what is the syntax?

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

That is HUGE! Thank you, @thegreekgeek! This makes customizing conversations from automations so much more powerful and flexible!

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I'm embarassed but very pleased that your example also taught me about set_conversation_response! I had been using tts.speak, which meant I had to define a specific media player, which wasn't always I wanted to do. This is great!

Assistance migrating from gitea to forgejo

Hi. I self-host gitea in docker and have a few repos, users, keys, etc. I installed forgejo in docker and it runs, so I stopped the container and copied /var/lib/docker/volumes/gitea_data/_data/* to /var/lib/docker/volumes/forgejo_data/_data/, but when I restart the forgejo container, forgejo doesn't show any of my repos, users,...

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

That is what I did. And it didn't work.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Can you share some of them so I might have an idea what to try to do differently?

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Both gitea and forgejo are using sqlite3. Gitea 1.20.0, Forgejo 1.21.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Can you see the data you copied inside the container?

That led me to my problem! I did have the volume mounted, but the container's path was incorrect: Forgejo was recreating it's resource files as a new install because where it was looking for them, they didn't exist.

Thanks!

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for that info. I did combine an upgrade (1.20 to 1.21) with the migrations, but I guess I lucked into it working. My problem was that the container's path to the migrated gitea volume was incorrect.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I don't know if your problem is the same as mine was, but the symptom sounds the same.

The docker-compose.yaml file shown in the Forgejo documentation for docker installation shows this mount:

    volumes:
      - ./forgejo:/data

For me, Forgejo installed and created new resource files in /data and ignored the resource files gitea alread made.

I changed the volume to:

    volumes:
      - data:/var/lib/gitea

Forgejo then recognized the gitea resources.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for the references, but at least one example from https://www.home-assistant.io/integrations/intent_script/ seems to be wrong/outdated.

From that page:

Local lists

Sometimes you don't need a slot list available for all intents and sentences, so you can define one locally, making it usable only in the context of the intent data (like a collection of sentences) where it was defined. For example:

language: en
intents:
  AddListItem:
    data:
      - sentences:
          - add {item} to [my] shopping list
        lists:
          item:
            wildcard: true

This is the code in my conversations.yaml:

intents:
  HowManyDaysUntil:
    data:
      - sentences:
          - how many days until {countdownname}
        lists:
          countdownname:
            - "this"
            - "that"

Here are the only difference I see between my code and the example above:

  • I don't have language: en (but when I add it, I get Invalid config for 'conversation' at conversations.yaml, line 1: 'language' is an invalid option for 'conversation', check: conversation->language)
  • The example uses a wildcard and I'm using strings (but I'm following their other examples to have a list of strings)

However, this yaml gets Invalid config for 'conversation' at conversations.yaml, line 9: value should be a string 'conversation->intents->HowManyDaysUntil->0', got None

Perhaps I can't have intents in conversations.yaml? Or maybe not lists? I started this project by editing config/intents/sentences/en/_cmmon.yaml but that's a bad idea because an update would wipe my customizations. What's the appropriate place for me to add custom sentences/intents/responses/lists?

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

From what I understand, a timer's duration is the amount of time the timer was set to run for when it was started - the total time, not the time remaining.

If you're wanting to determine the time remaining in an active timer, you need something like:

{% set finish_time = state_attr('timer.timer_entity_id', 'finishes_at') %}
{{ '00:00' if finish_time == None else (as_datetime(finish_time) - now()).total_seconds() | timestamp_custom('%H:%M', false) }}

Or this version, which breaks hours and minutes into speakable parts:

{% set finish_time = state_attr('timer.timer_entity_id', 'finishes_at') %} 
{% set hours, minutes = ('00:00' if finish_time == None else (as_datetime(finish_time) - now()).total_seconds() | timestamp_custom('%H:%M', false)).split(':') | map('int') %} 
{{ '' if hours == 0 else hours ~ ' hour' if hours == 1 else hours ~ ' hours' }} {{ ' and ' if hours > 0 }} {{ minutes ~ ' minute' if minutes == 1 else minutes ~ ' minutes' }}     
mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

You're welcome!

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I currently use Photo structure, which is good, but its not open source and the one guy behind it, Matthew, is quite slow with progress. He's super friendly and helpful, and bug fixes are pretty quick. But feature additions are glacial.

I was considering switching to photoprism but was turned off by the attitude of some of the developers. The product looks prery good, though.

I'm pretty sure I'm going to switch to Immich, which is also really good.

A friend uses Piwigo which is decent and has good features, though I find it's very ugly regardless which skin you use.

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I recently installed Proxmox and TrueNAS on the same box in kind of an ouroboros styles, following this guide: https://github.com/enigmacurry/d.rymcg.tech

So now I have both. I run VMs in proxmox and use truenas only for nas.

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I currently only use proxmox for VMs. Proxmox hosts a TrueNAS VM, TrueNAS controls all but the main (small) drive on the box, proxmox then has access to the other drives through TrueNAS. Kind of neat.

But I think it would indeed be simpler to only have TrueNAS and use it for both nas and VMs. I have no experience with TrueNAS' VMs.

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I haven't done any research yet. Gitea includes an oauth2 provider. Does Forgejo also provide oauth2 authentication with a similar feature set?

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I recently installed TrueNAS in Proxmox in this interesting Ouroboros-like configuration. So far it's been great.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

This sounds cool, but beyond my skill set. I might be able to re-qire the speaker wire to something else (possibly not if soldering is required), but I don't even understand what a "shutdown pin" is or what it does.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

This sounds like it wouldn't help much, and whatever increase in volume might be offest by decrease in quality due to echo. But it's free to try (and within my skill set :) ).

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I'll try to look into this. Thanks.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks!

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Smart Home Junkie's method worked perfect! And it was quite easy and quick. Thanks for the referemce @paf!

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for the assitance, @brainstorm.

One of my automations that was disabled but is now enabled has turned off triggered by service Automation: Turn off about a week ago in the Logbook. What does "turned off" mean for an automation?

And in History it looks like this:
https://lemmy.d.thewooskeys.com/pictrs/image/502fe250-9b39-478f-b403-0bca81ec5d35.png

What part of this information is usable to search for what triggered the automation to be re-enabled?

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

Thanks for the explanation and example, @CondorWonder.

I used Studio Code Server to search all files for "Automation: Turn Off" and "automation.turn_off" and "automation" - there were 100s (1000s?) of results. I scanned through them and didn't see anything that looks like it was enabling these automations. And that's the only record in my logbook around these automations being disabled.

So now I've renamed some of my automations and re-disabled them. In a few days they'll either become enabled or I'll search my logs for errors including their previous names.

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

This is really confusing to me. The History list shows when this automation was turned on and turned off (turned on means enabled, turned off means disabled) but the Logbook list doesn't show anything for this automation at the datetime it was enabled (it does show me manually disabling the automation, though).

I searched for the automation's name (e.g., automation.my_automation) in every file in HA's confg directory and there are no occurrences. I also searched for the automation's ID (e.g., 1623421375007) in every file in HA's confg directory the only occurrence is in the Automations.yaml file where the automation is defined. I also searched for automation.turn_on and automation.turn_off in every file in HA's confg directory and there are no occurrences.

This seems strange: when I click on the "On" or "Off" bar in the History list for this automation and the details for the automation pop-up (screenshots below), and I then click "Related", the section that says "Part of the following automations" lists about half of my automations, but none of them have anything to do with this automation.

https://lemmy.d.thewooskeys.com/pictrs/image/cb63e462-b8a8-4261-97ce-26cb1e1eebd2.png

https://lemmy.d.thewooskeys.com/pictrs/image/e6596dc8-0a07-4fff-9831-eb568feb3ff2.png

mike_wooskey OP ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I forgot to mention that I had also renamed one of my automations in the hope that I'd be able to find the original name in my log files when whatever was trying to turn it off could no longer turn it off. But I can't find anything in the log files containing the original name.

Projector suggestions

I'm trying to find a new projector for my home theater. I don't need high end, but it should be at least 1080p (i.e., 4K isnt necessary). I mention that because of my budget: I'm looking for something around $500, but I might be able to go up to $1000. The other main requirement is that I'm able to turn it on/off via Home...

mike_wooskey ,
@mike_wooskey@lemmy.d.thewooskeys.com avatar

I recently installed TrueNAS on a box with Proxmox, following these instructions. It allows the box to be your NAS and run anything else as a VM (so NextCloud, Grocy/KitchenOwl, etc., even your VPN).

Seeking assistance with Auto Backup HACS integration

I installed the Auto Backup HACS integration and I have a network storage configured in Home Assistant (FYI, I'm running HAOS). If I use HA's Developer Tools and manually call the "Auto Backup: Backup Full" service, there is a "Location" field where I can select my network storage. The backup successfully completes and saves to...

  • All
  • Subscribed
  • Moderated
  • Favorites
  • incremental_games
  • meta
  • All magazines