Comment on
TIL you can long click on the new tab button to open a tab in a specific container in Firefox
You can also do it by right-clicking on the same button.
Comment on
TIL you can long click on the new tab button to open a tab in a specific container in Firefox
You can also do it by right-clicking on the same button.
Comment on
Looking for a music server
I have the same problem with navidrome so I've written a new Opensubsonic server in Rust with a permision model. You can check it out here: https://github.com/vnghia/nghe
Comment on
An Opensubsonic server in Rust
Reply in thread
Is Rust that much better than Go?
IMHO, rust and go are two differents things. The reason I choose Rust is because it is fast and calling C code from rust is supported really well since Rust's goal is to become a system language. Navidrome is just calling the ffmpeg binary. While in my project, I've compiled the neccessary parts of ffmpeg myself (thanks to vcpkg) and call the function directly from Rust. It leads to smaller and fully static final binary (because no ffmpeg bin) as well as faster transcoding time since we don't have to wait for the ffmpeg binary to finish transcoding the whole file before load the result from the filesystem to the memory.
Would it have been impossible to submit your changes to Navidrome as pull requests?
You can see here. This is the biggest reason why I've decided to start my own implementation. Beside, I share my server with several friends so I want a mechanism to prevent mixing musics from different people.
Does this import the Navidrome database?
This could be a feature request in the future. I could add a python script to import users/songs/playlists/playcount/etc from Navidrome.
Comment on
what iso's are a must for ultimate ventoy disk(and what size is recomended)?
Not really for ventoy but have you heard about medicat ? I have bookmarked it for sometime now but never had a chance to try.
Edit: medicat also supports ventoy
Comment on
I’ve just created my perfect automated music setup, including getting new recommendations
How do you keep your Spotify recommendations update ? Don't you have to listen to songs on it to get updated recommendations ?
Comment on
What's the actual advantage of eSIM over a physical SIM?
I usually try different custom ROMs and have to format my phone frequently. Will that eSIM survive that format or not ?
Comment on
An Opensubsonic server in Rust
Reply in thread
Thank you very much for your kind word! I've seen that scanner already but decided to reimplement anyway because I want to choose a different design from the start and have the flexibility to add some new features myself (some kind of ML integration like immich and S3 integration). At worse case, I will still use this so no problems :D
Comment on
An Opensubsonic server in Rust
Reply in thread
Never thought about it. Is there an inside joke am i missing @@
Comment on
An Opensubsonic server in Rust
Reply in thread
I see. Indeen I gave up teaching people pronounce my name correctly long time ago and told them just to call me by my family name so you coulld pronounce whatever you like. If you know a Vietnamese guy around just ask them to teach you and give them a headache
Comment on
An Opensubsonic server in Rust
Reply in thread
Not sure what do you mean by filtering but this is my Symfonium UI
Comment on
Templating engine for docker compose
Reply in thread
I actually need more than merging. For example, right now my traefik.template will look like this:
[http.routers.{{ router_name }}]
rule = "{{ router_rule }}"
service = "{{ service_name }}"
middlewares = [{{ middlewares | map("tojson") | join(", ") }}]
{% block router %}{% endblock %}
[http.routers.{{ router_name }}.tls]
certResolver = "leresolver_http"
{% if service_host is defined %}
[[http.services.{{ service_name }}.loadBalancer.servers]]
url = "{{ 'https' if service_use_https is defined else 'http' }}://{{ service_host }}{{ ':' ~ service_port if service_port is defined else '' }}"
{% endif %}
and then one of my traefik.toml could look like this
{% extends "template/traefik.jinja" %}
{% set router_name = "dozzle" %}
{% set router_rule = "Host(`dozzle.example.com`)" %}
{% set service_name = "dozzle" %}
{% set service_host = "dozzle" %}
{% set service_port = 8080 %}
Comment on
An Opensubsonic server in Rust
Reply in thread
Thank you! I just want to make my server as much cross-platform as possible :D
Comment on
An Opensubsonic server in Rust
Reply in thread
In the opensubsonic response there will be two fields for artist, one is artistid with only one artist (this is for compatible with old subsonic) and the other is artists with a list of artist ids. The server only sends back the list of artists ids and only these two clients read that field.
Comment on
Templating engine for docker compose
Reply in thread
I know about Helm but I don't need k8s features and my VPS is just too weak for k8s I think :/
Comment on
Gnome Display Manager (gdm) and XTEST
Reply in thread
Thank you for all your help! I've finally found out what I did wrong. Gnome has it own way to enable/disable an extension which I followed here because of another bug. It is so annoying I am thinking about switching to lightdm permantly.
Thank you very much once again!
Comment on
Privacy policy of storage services
Reply in thread
In my experience, I found that rclone mount a crypt remote is not as stable as a direct mount. But I will try to do it again. Thank you very much !
Comment on
An Opensubsonic server in Rust
Reply in thread
Here you go. But setting up a testing environment on github actions is too hard so it is built only for now.
Edit: test is added now
Comment on
Templating engine for docker compose
Reply in thread
you mean nix the package manager ?
Comment on
An Opensubsonic server in Rust
Reply in thread
I am trying adding a FreeBSD CI. Will let you know later if it is working or not
Comment on
An Opensubsonic server in Rust
Reply in thread
Thank you! Please give it a try and give me some feedbacks XD