Peter Vágner reshared this.

✨ Your new public_html folder is here, upload html and ~your-site is ready

~ public.monster 🐙

I'm pretty sure I'll regret making this, but upload your public monstrosity and let's see how it goes. Some fun may be had. I'll watch carefully for now 🕵️

This entry was edited (2 weeks ago)

reshared this

Peter Vágner reshared this.

I just read that FFMPEG supports lufs normalization. That with combination with luveler and MrsWatson allows for nice automatic normalization of recordings. I can use Reaper and tweak everithing, but there are people who just need to get their recordings to relative consistent levels.Luveler teragonaudio/MrsWatson: A command-line VST plugin host

Peter Vágner reshared this.

Peter Vágner reshared this.

Lately I've been seeing a lot of lacking alt text on audio posts on mastodon. Guys, audio alt text is just as important as image alt text. Just as we preach at people posting images that "a diagram" or "a funny meme" isn't helpful, "a piece of music" or "strange noises" aren't helpful audio alt texts. Describe the audio, not just the basic outline of what it is. We can't yell at image posters to do something we're not even doing ourselves. Just as image alt texts help more than blind people, audio alt texts help more than deaf people. Please try.

reshared this

Peter Vágner reshared this.

So on a fresh Windows 11 install, I would need to now run at least 4 GitHub scripts just to make it behave and tamed down to the process plus ram usage of Windows 10. Unbelievable. I'm going to provide links here, you use these at your own risk. I'm also favoriting this post for myself so this is a bit for me, too.
All of these require that Defender's "realtime protection" and possibly "tampor protection" stay off. Defender is very yelly.

First thing I do: github.com/ShadowWhisperer/Rem…
This removes Microsoft Edge, and I use the WebView remover. If you use JAWS, this one might not be for you, since I believe JAWS relies on the webView.
2. Spicy: Remove defender. Not for everyone, but if you have a 3rd-party scanner and AV you use that's light, or just want to manually scan files and do daily quick scans with a tool of your choice, it's good. Using WSL will reinstall the hypervisor bits. It does a lot, so be cautious.
github.com/ionuttbara/windows-…
3. New to the list: github.com/zoicware/RemoveWind… - for getting rid of all AI features. Again, large script, read and consult carefully.
4. My own quick debloat Gist for LTSC: gist.github.com/tgeczy/2d847e2…
This does a lot more plumming removal, and disables your search box, so don't be surprised.
5. For search box: Open Menu: github.com/Open-Shell/Open-She… - works really well.
Bonus: github.com/Raphire/Win11Debloa…

reshared this

Peter Vágner reshared this.

I’m currently working on an interesting project. Last year, I met a former homeless man named Peter. He lost all his money to gambling. On the streets, he sold a street magazine, and later he started writing his own book. Today, most of his income comes from selling that book.
He wanted to create an audiobook. Since the budget was small, we did it like this: I gave him a Zoom H1N recorder. He locked himself in a relatively quiet room and gradually recorded the entire book. He sent me the raw material, which I ran through @Auphonic to remove background noise and room echo and to balance the loudness levels.
Now I just need to remove the mistakes and create the music background. It won’t be full studio quality — but honestly, I’ve heard “studio” recordings that sounded much worse than what we’re working on now.

Peter Vágner reshared this.

Peter Vágner reshared this.

Recently, I discovered Mynoise.net by @Stéphane (Dr. P). Sometimes, when I cant sleep or need background noise for boring work, I use various background soundscapes. Here is my article about Mynoise from the blind users experience. Long post follows:

Getting Started


  • We won’t install or configure anything.
  • Simply open the page mynoise.netmynoise.net in your web browser.
  • Activate, for example, the link windSeaRainNoiseGenerator (wind, sea, and rain noise generator).
  • Since browsers block autoplay by default, enable focus mode and press the letter p twice. The first press pauses playback, and the second resumes it. At this point, you should already hear the sound of the sea and wind noise.

Here you can also try other soundscapes, such as Rain on a Tent or Fireworks. I recommend opening the Full List. The soundscapes are organized under headings.

Playback Control


At this point, the possibilities of Mynoise are just beginning. Each player can be customized. Although the ambiance differs, the controls are always the same. Let’s take another look at the previously mentioned Wind, Sea, and Rain Noise.

Presets


Under the heading Presets, you’ll find buttons with various predefined settings. Activating them changes the sound’s characteristics. For instance, you can choose Breaking Waves or Irish Summer.

Under User Stories, you’ll find user comments. By activating a comment, the sound’s parameters adjust to the same configuration used by that commenter.

How to Create Your Own Background


Let’s say you want to manually adjust the balance between wind, waves, rain, and so on. Each player consists of ten sliders whose volume you can control. Here’s how:

  • Enable focus mode in your screenreader.
  • Press Enter to deselect all sliders.
  • Choose one of the sliders using numbers 0–9.
  • Adjust the volume with the + or keys.
  • Press Enter twice to deselect all sliders.
  • Choose another slider (0–9).
  • Adjust the volume again with + or .
  • If you’re satisfied but find the overall sound too loud, you can lower the volume with J and raise it with K.
  • You can also generate a random setting by pressing the ? (question mark)key.


I Created a Beautiful Ambience—How Can I Return to It?


The author thought of that, too. Press B to find the Save as URL button. After pressing it, a URL containing your custom parameters will appear in an edit field. You can copy this link to your clipboard and save it as a bookmark. That’s how it works in Firefox. Chrome, on the other hand, will automatically reload the page with the new URL. You can share this URL as usual—for this article, I created This Noise as an example.

Can I Combine “Rain on a Tent” and a “Crackling Fireplace”?


Yes, and there are two ways to do it. If you’ve been experimenting with the site for a while, you might have opened one soundscape in one browser tab and another in a second tab. However, this setup is difficult to save or share. Fortunately, you can create a single page that combines multiple generators—up to ten soundscapes in one! This way, you can really make something like a Campfire in the Rain. Here’s how:

  • Open your first soundscape, e.g. Rain on a Tent.
  • Reset the sliders to zero and adjust them as you wish, as described earlier.
  • Press C to save your current setting.
    – In another tab, open the main Mynoise page and find your second soundscape.
    – Open a new generator, for example Fireplace.
    – Adjust everything again as you like.
    – Press C again to save it.
    – Use Shift+C to save all settings together.
    – The page will ask for a name.
    – Enter a name and confirm.
    – You can now save the page as a bookmark or copy and share the URL.


Mobile App


Unfortunately, Mobile app is not accessible for blind users yet. You can still use Mynoise in your smartphone’s web browser. The easiest way is to share the custom links you prepared on your computer. That way, you’ll always have your favorite sounds at hand—for example, to help you sleep.

The author also offers online radios featuring some of the sounds. You can find them in the RadioBrowser database by searching for Mynoise. Additionally, there’s a podcast called Pomodoro Sessions, so you can enjoy your favorite soundscapes right in your podcast app.

Conclusion


The author is open to discussing accessibility. Thanks to this, button labels have already been added to the player pages. To celebrate finishing this article—and your reading it all the way through—you can listen to Fireworks.

Peter Vágner reshared this.

On my side Microsoft 365 generates NDR when I send the message to non existing email address using outlook online but does not generate NDR when sending a message to same non existing email address from thunderbird or other app sending emails through microsoft 365 SMTP server.
This sounds strange to me and I can't find a way to make it generate NDR aka bounce messages for messages submitted through SMTP.
Peter Vágner reshared this.

It's planned to add #AltText support for #Cover and #Banner of @Castopod@podlibre.social #Podcast.

@yassinedoghri@fosstodon.org currently added my proposal to Milestone 2:

code.castopod.org/adaures/cast…
Thanx! It would be a step forward to #a11y.
#Audio #Accessibility

Peter Vágner reshared this.

Peter Vágner reshared this.

Apparently, it is expensive to peek into C structures from Python via pygobject, so better to cache the result in Python if it is going to be reused. My function is now more than 3x faster now that I'm doing this. gitlab.gnome.org/GNOME/at-spi2…

Peter Vágner reshared this.

Peter Vágner reshared this.

Cool so there's a new attack against the Signal protocol, specifically the PFS. You can keep requesting PFS prekeys from a user and once theyre drained you have a better shot at being able to break that layer of security but more interesting is that the time it takes to get the new prekeys indicates if the device is online or not, so this is a metadata leak

Whatsapp published the research. Unclear if this is only Whatsapp's implementation that they're discussing.

arxiv.org/pdf/2504.07323

This entry was edited (2 weeks ago)

Peter Vágner reshared this.

Peter Vágner reshared this.

Oh wow. Some companies have a way to let their mail servers tell me they no longer want to work with me it seems 🙈 Was just sending out my updated profile to a list, and from one I got this:

450 4.7.1 The reputation filter deemed your email unworthy

F*CK AI, I guess? 🙊

OK, I'll have to accept that. If someone out there thinks I _might_ be worthy: after being in a project for almost 5 years, I'm available again for new projects – be it as Oracle DBA, or as coach in the Android section 😉

Peter Vágner reshared this.

in reply to Peter Vágner

@pvagner I know, I'm running a mail server myself. My toot was rather about the message text, not the code 😉 But thanks for the explanation, appreciate your being helpful! 🤗

For other readers:

* 5xx: permanent error
* 4xx: temporary error (try again)
* 3xx: further action required (by the client, not the human; like, "send the next package", or "go there to continue")
* 2xx: all fine

Peter Vágner reshared this.

Hear me out.

We fork Mumble server. We change the chat to be IRC. We use Obsidian IRC (web irc clone of discord) as the client. IRCv3 SASL EXTERNAL will let us auth the user using the same key identity mumble uses. Convert the Obsidian web to Tauri for cross platform desktop app.

That's it. Self-hosted Discord, now just improve the UI and invite people to rewrite in Rust and add storage backends for the chat history and nobody needs Discord ever again.

github.com/ObsidianIRC/Obsidia…

This entry was edited (2 weeks ago)

Peter Vágner reshared this.

in reply to anna, a criticality incident at the gender accelerator

@anna the certificates would still exist, I don't know if that can easily be ripped out as Mumble is using TLS client auth essentially to identify you. But we could hide it better and streamline account backup / admin capability to help people recover accounts.
Peter Vágner reshared this.

Gerade auf Droidblind gepostet: Nach mehr als 5 Jahren: Eloquence für Android kehr zurück droidblind.de/blog/eloquence64

Peter Vágner reshared this.

Peter Vágner reshared this.

Something very important to know in your threat model if you use Tor Browser on Windows:

By default it installs to your Desktop folder, which is by default mirrored to OneDrive at Microsoft. Microsoft has access to your OneDrive content for cybersecurity analysis via privacy carve outs. The Tor folder contains sensitive content.

The solution is to install at root of C: drive.

This entry was edited (2 weeks ago)

reshared this

Peter Vágner reshared this.

After testing github.com/shazow/wifitui, I’m convinced it’s a great alternative to running nm-applet all the time.

For setups like mine (Slackware + Fluxbox + Alacritty + tmux), there’s no reason to keep a GTK applet sitting in memory just to manage Wi-Fi.

wifitui is a fast and friendly terminal Wi-Fi interface written in Go that works perfectly with NetworkManager or iwd — no GUI,
no clutter, and full keyboard control.

Now I only open it when I need to change networks, and the rest of the time my system stays lighter and cleaner — exactly how I like it.

Soon we’ll have a SlackBuild for wifitui on SlackBuilds.org :)

Created by @shazow@fosstodon.org

Fits perfectly with the Slackware spirit. 🖤🐧

#slackware #slackbuilds #wifitui #wifi

This entry was edited (3 weeks ago)

reshared this

Peter Vágner reshared this.

Time to introduce my last new project for this year:

«Zeroform» ... is a tool for generating minimalistic, self-hostable forms, with a twist: It can generate both static (html/css/js) and/or dynamic (php augmented) online forms.

My main motivation for zeroform is to create tooling that helps me gather more precise feedback while designing and developing (especially) #faircamp and #hyper8, and to do this in a way that reflects the values of those projects: Independence, simplicity, minimalism, freedom from maintenance, absence of tracking, etc.

Basically you start with a thought, put it down as a plaintext blueprint of the form/questionnaire/doodle/survey you have in mind, zeroform turns it into finished code and design, you can upload it, use it as long as its useful/needed, and then you can just delete it.

Think of it as your own google forms, without bigtech, without dependence on any infrastructure besides the cheapest of hosting plans, commissioned and decommisioned in a mere minute.

I'm now one week into the project, since today I'm developing in the open at codeberg.org/simonrepp/zerofor…, and I will put it to use in the next days already! I have roughly one more week reserved until the end of the year for making this usable for the general public - I'll announce when it's ready. ʕ◜0ᴥ0ʔ

reshared this

Another nice talk at @OpenAlt starts at 12:00 in some 40 minutes.
Improve the world map with @MapComplete .
Watch it at this link if you like.
vhsky.cz/w/9Hdaqab9CvbPwhk1VnD…
Or see the schedule here: talks.openalt.cz/openalt-2025/…

reshared this

Peter Vágner reshared this.

And it is all accessible with VoiceOver on iOS. I presume TalkBack on Android as well. @delta chaos.social/@delta/1154793927…


We hereby challenge _all_ other messaging apps, FOSS or not, to provide a more convenient private onboarding experience than #deltachat

1. Install app
2. "Create new profile"
3. Enter nick name, tap "Agree and continue"
4. Tap "+" and "new contact" and provide/scan qr code/link

Voila! A secure private chat, familiar to those coming from Whatsapp or Telegram (without "AI", with #a11y).

Note: chat identities are private and can not be queried or discovered. Servers keep no track or metadata


Peter Vágner reshared this.

in reply to Peter Vágner

@pvagner The desktop app is quite decent, although it's an Electron app. The one thing it is mising is a quick way to move between the panes, like the message pane and individual chat message history, and the entry field, via the keyboard, and a more efficient way than pressing tab a zillion times. Arrow key navigation within those lists and chats is already there.

I've just discovered Michal Hrušecký is talking about @Delta Chat on the @OpenAlt conference.
The talk is in czech.
He had a similar talk a few weeks ago:
talks.openalt.cz/openalt-2025/…

OpenAlt reshared this.

Peter Vágner reshared this.

We hereby challenge _all_ other messaging apps, FOSS or not, to provide a more convenient private onboarding experience than #deltachat

1. Install app
2. "Create new profile"
3. Enter nick name, tap "Agree and continue"
4. Tap "+" and "new contact" and provide/scan qr code/link

Voila! A secure private chat, familiar to those coming from Whatsapp or Telegram (without "AI", with #a11y).

Note: chat identities are private and can not be queried or discovered. Servers keep no track or metadata

This entry was edited (3 weeks ago)

Peter Vágner reshared this.

in reply to Dgar

I worked for a while at a place that had some pretty cool CNC machines, so I took videos of exciting stuff like tool changing, and high speed machining, and put them on a spare USB drive.
Around this time I bought a brand new car, and driving on the freeway, I tried out the stereo by plugging in a USB drive.
After a few songs, I started hearing these clunking and grinding and high pitched squealing sounds, so I pulled over, stopped the car, and got out to see if I could spot the problem.
I actually called the dealership to discuss getting towed back to their workshop before I realised … 🤦‍♂️
Peter Vágner reshared this.

🪟 Windows 10 končí.

🖥️ Počítač nemusí běžet jen na Windows.
Existují otevřené systémy jako Linux, které zvládnou všechno od běžného používání po práci i kreativitu — a bez reklam, telemetrie nebo nucených účtů.

☁️ A data nemusí být v cizích rukou.
Služby jako Nextcloud umí nahradit Google Drive, Dropbox, Microsoft 365 i iCloud. Sdílení souborů, kalendář, kontakty, poznámky, chat, videohovory… všechno běží otevřeně a s respektem k uživatelům – tak, jak to děláme na Oscloud.cz.

💡 Oscloud.cz nabízí Nextcloud i další open-source aplikace pro běžné uživatele, firmy i komunity.
Bez reklam, bez sběru dat, s podporou v češtině.

Změna nemusí bolet. Jen začít pomalu — třeba od synchronizace souborů nebo kalendáře.
A zjistit, že svoboda není jen slovo, ale způsob, jak si technologie znovu přivlastnit.
oscloud.cz/
#opensource #nextcloud #linux #oscloud #privacy

This entry was edited (3 weeks ago)

reshared this

Peter Vágner reshared this.

#OpenAlt2025 was the first conference I took my six-year-old daughter to. She really enjoyed it. She wasn't interested in the talks, but she loved the swag at the booths. She'll grow into them, though. You have to start early to raise a new generation of open-source enthusiasts. 🙂

#openalt

Peter Vágner reshared this.

Peter Vágner reshared this.

Zítra nám držte palce. Čeká nás první velká streamovací akce. Ve spolupráci s @openalt budeme streamovat přednášky ze všech 7 místností konference #OpenAlt.
Pokud budete mít čas a nějaká přednáška v programu vás zaujme, zkuste se mrknout. Při sledování videa jej zároveň sdílíte s ostatními diváky jako u torrentu (pokud nejste na mobilním zařízení) a každý peer se tak počítá!

openalt.cz/2025/

#OpenAlt2025 #Brno

reshared this

Peter Vágner reshared this.

It’s hard to believe, but courtesy of @jcsteh today NVDA 64-bit alpha builds finally added something truly interesting and useful. Technically, it’s not listed under New Features but under Changes, and it says:
In browse mode in web browsers, NVDA no longer sometimes treats controls with 0 visual width or height as invisible. This technique is sometimes used to make content accessible to screen readers without it being visible visually. Such controls will now be accessible in browse mode where they weren't before. What this means in practice is that some previously inaccessible controls in browsers are now reachable. For example, when renewing my home internet plan, I had to complete a captcha. The audio option for it never appeared in NVDA, even with object navigation. I had to rely on Be My Eyes volunteers to read it for me. Now, with NVDA Alpha 53246, I can finally access that control and hear the audio captcha myself. Sometimes small changes make a huge difference.
github.com/nvaccess/nvda/pull/…
@NVAccess

reshared this

in reply to Amir

I don't get why it wouldn't have appeared in object navigation though. This change only stops browse mode rendering from ignoring 0 width/height objects, but object navigation never ignored those in the first place. Simple review might skip the object of interest for other reasons, but not 0 width/height, and disabling simple review should have picked it up. Still, it's much harder to find things that way on complicated websites.
Peter Vágner reshared this.

I have another sizable update to my Image Description Toolkit available. In addition to supporting geolocation when available on photos, this version allows for the specifying of a web page and having images downloaded and described. Read more on this at theideaplace.net/image-descrip….

reshared this

Peter Vágner reshared this.

{Edit: Numbered instructions.}
For anyone who does not want to use Vispero Accounts:
1. if needed, uninstall JAWS 2026 without removing shared components.
2. Create a new file named AdditionalSettings.ini in the same folder where you saved the setup package containing data starting from the ;.
3. launch the setup. 1/2

;; Source: J2026.2510.195.400-any.exe /ExtractAdditionalSettings AdditionalSettings.ini Default

;; Disable User Accounts support

[JAWS]MSIProperties=USERACCOUNTS=0

This entry was edited (3 weeks ago)

reshared this

in reply to Timothy Wynn

Thanks to @DavidGoldfield and @BTyson for reminding, to apply this file to an install, you must do the following:
1. This file must be named AdditionalSettings.ini.
2. This file must be copied into the same directory with the setup package before launching the install.
3. This file must be applied for every install and update. 2/2
This entry was edited (3 weeks ago)

I know this is not a support site or programming course but I can't figure this thing out. If you do know #rust perhaps you can give me a helping hand. I am trying to contribute to an app.

I'd like to parse ipv4 addresses given as command line argument values.
I have got two arguments accepting ipv4 address.
If I specify single such option all is fine.
If I specify both, I 'm getting error like this:

thread 'main' (624061) panicked at /home/peto/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-3.2.25/src/parser/matches/arg_matches.rs:1879:13:
Must use `Arg::allow_invalid_utf8` with `_os` lookups at `[hash: A8F400C40154F09]`

This is simplified version of my code showcasing the issue:
```
use std::net::{IpAddr, Ipv4Addr};
use clap::{App, AppSettings, Arg, value_parser};

#[tokio::main]
async fn main() -> Result<(), Error> {
let mut app = App::new("Server APP")
.about("My super cool app")
.setting(AppSettings::DeriveDisplayOrder)
.setting(AppSettings::SubcommandsNegateReqs)
.arg(
Arg::with_name("socket")
.required(true)
.takes_value(true)
.long("socket")
.help("Unix socket path"),
)
.arg(
Arg::with_name("relayaddress")
.required(false)
.takes_value(true)
.long("relay-address")
.value_parser(value_parser!(Ipv4Addr))
.help("External relay ipv4 address used together with --listen-address to run behind a nat"),
)
.arg(
Arg::with_name("listenaddress")
.required(false)
.takes_value(true)
.long("listen-address")
.value_parser(value_parser!(Ipv4Addr))
.help("Local listen ipv4 address used together with --relay-address to run behind a nat"),
);
let matches = app.clone().get_matches();
if matches.is_present("relayaddress") & matches.is_present("listenaddress") {
let external_ip = IpAddr::V4(matches.get_one::<Ipv4Addr>("relayaddress").expect("Invalid address"));
let local_ip = IpAddr::V4(
matches.get_one::<Ipv4Addr>("listenaddress").expect("Invalid address"));
println!("Listening on local IP: {local_ip}");
println!("Relaying through external IP: {external_ip}");
}}
```

#rust #rustlang #programming #fedihelp

fediGive Bot reshared this.

in reply to Peter Vágner

I know this is not a support site or programming course but I can't figure this thing out. If you do know #rust perhaps you can give me a helping hand. I am trying to contribute to an app.

Sensitive content

in reply to Federico Mena Quintero

I know this is not a support site or programming course but I can't figure this thing out. If you do know #rust perhaps you can give me a helping hand. I am trying to contribute to an app.
@Federico Mena Quintero Oh, huge thanks for taking a look. Yes it's clap 3. It's not my decision, I'm attempting to contribute to an existing project so if I can make it work without major changes that might be helpfull. As I don't feel qualified for making decisions when it comes to this. I'm novice when it comes to #rust.
--socket argument is required, other two arguments are supposed to be used together and this condition is tested at runtime.
So if I specify all three command line arguments, I am always getting that error.
I have attempted using os::str and casting but the issue remains. I am simply compiling the app with cargo build --release.
Have you been just adding stuff I may have overlooked when trying to simplify for posting or did you actually changed something please?
in reply to Federico Mena Quintero

I know this is not a support site or programming course but I can't figure this thing out. If you do know #rust perhaps you can give me a helping hand. I am trying to contribute to an app.
@Federico Mena Quintero I've figured it out finally. The issue was not parsing ipv4 addresses but using matches.from_os() on the socket argument.
I have changed it to use std::path::PathBuf and it's working fine for me now.
Huge thanks for friendly hint and looking at my code.
Peter Vágner reshared this.

I am the guest on this week's Penny Forward podcast. I talked about my journey in terms of finding work that aligned with my values as a blind person and attempted to give some general advice for blind people who are looking for work or looking for a job that better aligns with what they would like to be doing. I also talked a little about investing and about moving across the country. To be clear, nothing that I said was intended as a linear "if you do this, then you will find what you're looking for," but, from the point of view of doing what we can as individuals, it is about positioning ourselves to increase our chances of finding opportunities.

The podcast is available from pennyforward.org/podcast-2/, or search for "Penny Forward" wherever you get your podcasts.

reshared this

Peter Vágner reshared this.

Today, we were nicely surprised by @gianmarcogg03 with a new comprehensive (italian) #deltachat introduction video, going through initial setup, groups and chatting, second device setup, #webxdc apps, bots, calls and playing Quake -- all the nice things you can do these days :)

mastodon.uno/@gianmarcogg03/11…

containing peertube, odysee and youtube links (latter provides English subtitles)

Fun fact: devs noticed some tiny but embarrassing glitches in the UI which are now getting fixed as we speak :)

This entry was edited (3 weeks ago)

Peter Vágner reshared this.