Free and Open Source Software

18078 readers
3 users here now

If it's free and open source and it's also software, it can be discussed here. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
1
 
 

I'm using a moto g34 phone with android 14. You guys know any open source program that can do basic photo editing? I tried Simple Gallery, but it shows a lot of ads :/

2
60
submitted 2 days ago by xilliah to c/foss
3
7
submitted 2 days ago* (last edited 2 days ago) by thingsiplay to c/foss
 
 

0.58.0

Release highlights: https://junegunn.github.io/fzf/releases/0.58.0/

This version introduces three new border types, --list-border, --input-border, and --header-border, offering much greater flexibility for customizing the user interface.

Also, fzf now offers "style presets" for quick customization, which can be activated using the --style option.

Preset Screenshot
default https://raw.githubusercontent.com/junegunn/i/master/fzf-style-default.png
full https://raw.githubusercontent.com/junegunn/i/master/fzf-style-full.png
minimal https://raw.githubusercontent.com/junegunn/i/master/fzf-style-minimal.png
  • Style presets (#4160)
    • --style=full[:BORDER_STYLE]
    • --style=default
    • --style=minimal
  • Border and label for the list section (#4148)
    • Options
      • --list-border[=STYLE]
      • --list-label=LABEL
      • --list-label-pos=COL[:bottom]
    • Colors
      • list-fg
      • list-bg
      • list-border
      • list-label
    • Actions
      • change-list-label
      • transform-list-label
  • Border and label for the input section (prompt line and info line) (#4154)
    • Options
      • --input-border[=STYLE]
      • --input-label=LABEL
      • --input-label-pos=COL[:bottom]
    • Colors
      • input-fg (query)
      • input-bg
      • input-border
      • input-label
    • Actions
      • change-input-label
      • transform-input-label
  • Border and label for the header section (#4159)
    • Options
      • --header-border[=STYLE]
      • --header-label=LABEL
      • --header-label-pos=COL[:bottom]
    • Colors
      • header-fg (header)
      • header-bg
      • header-border
      • header-label
    • Actions
      • change-header-label
      • transform-header-label
  • Added --preview-border[=STYLE] as short for --preview-window=border[-STYLE]
  • Added new preview border style line which draws a single separator line between the preview window and the rest of the interface
  • fzf will now render a dashed line (┈┈) in each --gap for better visual separation.
    # All bash/zsh functions, highlighted
    declare -f |
      perl -0 -pe 's/^}\n/}\0/gm' |
      bat --plain --language bash --color always |
      fzf --read0 --ansi --layout reverse --multi --highlight-line --gap
    
    • You can customize the line using --gap-line[=STR].
  • You can specify border-native to --tmux so that native tmux border is used instead of --border. This can be useful if you start a different program from inside the popup.
    fzf --tmux border-native --bind 'enter:execute:less {}'
    
  • Added toggle-multi-line action
  • Added toggle-hscroll action
  • Added change-nth action for dynamically changing the value of the --nth option
    # Start with --nth 1, then 2, then 3, then back to the default, 1
    echo 'foo foobar foobarbaz' | fzf --bind 'space:change-nth(2|3|)' --nth 1 -q foo
    
  • --nth parts of each line can now be rendered in a different text style
    # nth in a different style
    ls -al | fzf --nth -1 --color nth:italic
    ls -al | fzf --nth -1 --color nth:reverse
    ls -al | fzf --nth -1 --color nth:reverse:bold
    
    # Dim the other parts
    ls -al | fzf --nth -1 --color nth:regular,fg:dim
    
    # With 'change-nth'. The current nth option is exported as $FZF_NTH.
    ps -ef | fzf --reverse --header-lines 1 --header-border bottom --input-border \
               --color nth:regular,fg:dim \
               --bind 'ctrl-n:change-nth(8..|1|2|3|4|5|6|7|)' \
               --bind 'result:transform-prompt:echo "${FZF_NTH}> "'
    
  • A single-character delimiter is now treated as a plain string delimiter rather than a regular expression delimiter, even if it's a regular expression meta-character.
    • This means you can just write --delimiter '|' instead of escaping it as --delimiter '\|'
  • Bug fixes
  • Bug fixes and improvements in fish scripts (thanks to @bitraid)
4
17
Hands-on graphics without X11 (blogsystem5.substack.com)
submitted 3 days ago by jaypatelani@lemmy.ml to c/foss
5
19
submitted 1 week ago* (last edited 1 week ago) by buskill@lemmy.sdf.org to c/foss
 
 

This post contains a canary message that's cryptographically signed by the official BusKill PGP release key

BusKill Canary #009
The BusKill project just published their Warrant Canary #009

For more information about BusKill canaries, see:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Status: All good
Release: 2025-01-14
Period: 2025-01-01 to 2025-06-01
Expiry: 2025-06-30

Statements
==========

The BusKill Team who have digitally signed this file [1]
state the following:

1. The date of issue of this canary is January 14, 2025.

2. The current BusKill Signing Key (2020.07) is

   E0AF FF57 DC00 FBE0 5635  8761 4AE2 1E19 36CE 786A

3. We positively confirm, to the best of our knowledge, that the 
   integrity of our systems are sound: all our infrastructure is in our 
   control, we have not been compromised or suffered a data breach, we 
   have not disclosed any private keys, we have not introduced any 
   backdoors, and we have not been forced to modify our system to allow 
   access or information leakage to a third party in any way.

4. We plan to publish the next of these canary statements before the
   Expiry date listed above. Special note should be taken if no new
   canary is published by that time or if the list of statements changes
   without plausible explanation.

Special announcements
=====================

None.

Disclaimers and notes
=====================

This canary scheme is not infallible. Although signing the 
declaration makes it very difficult for a third party to produce 
arbitrary declarations, it does not prevent them from using force or 
other means, like blackmail or compromising the signers' laptops, to 
coerce us to produce false declarations.

The news feeds quoted below (Proof of freshness) serves to 
demonstrate that this canary could not have been created prior to the 
date stated. It shows that a series of canaries was not created in 
advance.

This declaration is merely a best effort and is provided without any 
guarantee or warranty. It is not legally binding in any way to 
anybody. None of the signers should be ever held legally responsible 
for any of the statements made here.

Proof of freshness
==================

14 Jan 25 01:01:33 UTC

Source: DER SPIEGEL - International (https://www.spiegel.de/international/index.rss)
A Miracle? Pope Francis Helps Transsexual Prostitutes in Rome
Boost for the Right Wing: Why Did a German Newspaper Help Elon Musk Interfere in German Politics?

Source: NYT > World News (https://rss.nytimes.com/services/xml/rss/nyt/World.xml)
What an Upended Mideast Means for Trump and U.S. Gulf Allies
Russia and Ukraine Battle Inside Kursk, With Waves of Tanks, Drones and North Koreans

Source: BBC News - World (https://feeds.bbci.co.uk/news/world/rss.xml)
Gaza ceasefire deal being finalised, Palestinian official tells BBC
Watch: Moment man is saved from burning LA home

Source: Bitcoin Blockchain (https://blockchain.info/q/latesthash)
0000000000000000000042db9e17f012dcd01f3425aa403e29c28c0dc1d16470

Footnotes
=========

[1] https://docs.buskill.in/buskill-app/en/stable/security/pgpkeys.html

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEeY3BEB897EKK3hJNaLi8sMUCOQUFAmeFuPcACgkQaLi8sMUC
OQXctQ//Zv7RZXPKMMyjMjfE2LjrL6RVESIZMT2tUO/y0wx8XTXKBpgOA7fTh2eC
BHkLajpU/S3LOb+wBniuo29tpGJHG5MBWDwyNUAWXqZfJ/A9YNikNYq9lOn6nKSH
oHyLB8h2nP9rfQ2wXUtN6lFJVKWU5Ef5pjMQb8flJO2kbou7QpgcOzxvRqrXOUcN
UumjSlDTtwIOYOX+Ee8SamI4LyApOlwxIGMbFcbRMcJNhtioS4qCGNGw1pqhvqmF
pi1kIaqd79I8y1U9ufncvC+pbCEvRdo+wb7ZsXA9ZYpYfJSQJzSkdCGgkbe0b1Tx
6CNlcgoXIVaEH6/W+C2DFlyG1u4JuH22eXIrloYnjOxlqSJCd0Dw1EeO33tg3xg3
tfeO9pGOcZPOwlBL509VlE9z6W3czyKJk7Z4RwYXCFYWWi8vlHvRQg0LNu0C4Jyw
fRV2LlMSeUgBz9xyE62jh/BUNZzXsD0ntprR1eRTkeW4kOGEc6Wql4lBKE08sajT
YdgTi4ojrcfTdS7Sgzh1Onh5h/nF7hoyCX0lINgyTrJFMynC6qadTZtiJ2yO8GT+
Ovk9ZJMggBMNr4Vbw6CyrU/4yYMyrEd5dzXYZLZ41lMMpjwM8OBJ/yp1pcGo9vk4
NTAjUQUvOj6nrA/r3j2ywFMDZtFR/jBjXULWE77ca3iJmc/FUdg=
=xahN
-----END PGP SIGNATURE-----

To view all past canaries, see:

What is BusKill?

BusKill is a laptop kill-cord. It's a USB cable with a magnetic breakaway that you attach to your body and connect to your computer.

What is BusKill? (Explainer Video)
Watch the BusKill Explainer Video for more info youtube.com/v/qPwyoD_cQR4

If the connection between you to your computer is severed, then your device will lock, shutdown, or shred its encryption keys -- thus keeping your encrypted data safe from thieves that steal your device.

6
 
 

At the moment I am currently using Cloudflare as a way to provide SSL to my self-hosted site. The site sits behind a residential connection that blocks incoming data on commonly used ports including 80 and 443. It's a perfectly fine and reasonable solution which does what I want. But I'm looking to try something different.

What I would like to try is using Let's Encrypt on a non standard port. I understand there are plenty of good reasons not do this, mainly that some places such as workplaces may block higher number ports for security reasons. That's fair but I am still interested in learning how to encrypt uncommon ports with Let's Encrypt.

Currently I am using Nginx Proxy Manager to handle Let's Encrypt certificates. It's able to complete the DNS Challenge required to prove I own the domain name and handles automated certificate renewals as well. Currently I have NPM acting as a reverse proxy guiding outside connections from Cloudflare on port 5050 to port 80 on NPM. Then the connection gets sent out locally to port 81 which is the admin web page for NPM (I'm just using it as a page to test if the connection is secured).

Whenever I enable Let's Encrypt SSL and try to connect to my site, the connection times out and nothing happens. I'm not sure if Let's Encrypt is expecting to reach ports 80/443 or if there is something wrong with my reverse proxy settings that breaks the encryption along the way. Most discussions just assume ports 80/443 are open which is fair since that's the most common situation. The few sites discussing the use of uncommon ports are either many years dated or people talking about success without sharing any details. I'm sort of at the end of what I can search at this point.

What I'm hoping to learn out of all this is how encryption and reverse proxies work together because those two things have been a struggle for me to understand as a whole throughout this whole learning process. I would appreciate it a lot of anyone had any resources or experiences to share about this.

7
8
 
 

In my subjective opinion, NovelWriter is one of the finest FOSS writing programs out there. It has enough features for organizing, notes, etc, to be more usable than a text editor, but without the (IMO) unneeded complexity of bigger programs such as Scrivener. It really gets out of your way and lets you get to writing.

It also has been extremely stable and glitch-free in my experience.

If you're okay with not having a WYSIWYG rich text editor, I'd highly recommend giving it a shot. :)

9
10
11
 
 

I have been looking for alternative to Google products, including Google Maps and Waze. The best I've found is Organic Maps and OsmAnd. But I'm missing two features: public transport routes and live trafic.

For the latter point, I have used Magic Earth which uses OSM. But the app itself is not FOSS.

Does anyone know what their business model is? They don't charge for the app or service and the privacy policy does not seem like they commercialize data... What is their deal as a company?

12
173
submitted 3 weeks ago* (last edited 3 weeks ago) by schleudersturz to c/foss
 
 

I spent the morning trying to work out why all the Electron applications on my desktop (vscodium, the Signal client …) were once-a-fuc•ing-gain showing me clunky, foreign file-open and file-save dialogues (presumably from gtk) instead of correctly showing KDE's dialogues via the very-cursed XDG-desktop-portal mechanism.

I'm on Gentoo. Had I, perhaps, broken something?

Nope. It's just yet another regression up-stream, in Electron:

Once again, despite knowing that nobody has support for something because that thing has not been released as stable at all, yet, the whole Electron stack follows the belief that it's perfectly OK to release a change that depends on that thing and, without it, breaks every KDE user's desktop integration.

Then they blame it on xdg-desktop-portal not having released, yet. And won't roll the change back because December is their "quiet month" – neither will they fix it nor make a work-around, seemingly.

Anyway. Writing this post has served to exhaust my ire. One day, we'll see the back of Electron for good – I can only hope!

Let it also serve as a PSA: don't bother trying to work out if you've accidentally broken something on your Linux desktop – particularly if you're on Gentoo, Arch, Slackware or other hacker-friendly distribution. It's not you. It's not your system. It's just fuc•ing Electron – again!

13
14
15
 
 

I'm looking for an FOSS alternative to google forms that doesn't require people to sign in. If anybody has a suggestion that would be much appreciated

16
 
 

Well I just replaced my aging LG G6 with a new Google Pixel 8a running GrapheneOS. The G6 was based on Android 9 which was initially released in August 2018, and my last update was January 2019. The big issue, after 6 years since OS initial release, apps are starting to not support Android 9. Add to that, my USB-C plug was getting questionable in terms of retaining charging cables and my fingerprint reader has not worked for years.

So how to replace the G6? Well I choose a new Google Pixel 8a and GrapheneOS. The Google Pixel is one of the better supported hardware devices in the after market ROM landscape and GrapheneOS seems to be one of the most popular ROMs.

It took me about a week to do the transition. Lot of that was just normal when moving everything to a new phone and not using the vendors automatic tools. The actual initial setup and flashing though was pretty straight forward. It was a bit emotionally difficult to take new $400 hardware and then just simply re-flash it risking say bricking. This turned out to be a non-issue.

Benefits I see from doing this:

  • Lack of Cruft. The lack of all the vendor loaded cruft was very nice. My old G6 has about 17 apps that I could never really delete because they were flashed into the ROM. Many of them fairly large Google suite apps.
  • Profiles. The new phone can fully use user and work profiles, plus with Android 15 it has the Private Space feature. GrapheneOS also supports up to 31 user profiles, not the 4 supported by most distributions. I actually use the Private Space to contain my Google Play Services and Google Play Apps and otherwise just the owner profile. Might have been better to look at some of the other options, not sure.
  • Storage Scopes are really useful. One can restrict App access to only certain folders. I have already used that a few times, probably more in the future.
  • Backup. GrapheneOS allows one to do App backups to your own media or cloud storage. For stock systems normally only Google Drive is allowed, which I would never use.
  • Sandboxed Google Play. I like the idea of sandboxing Google play. Presumably it should be more compatible then MicroG and some Apps require Google play. Interestingly the number that do seems fairly small. I actually further placed all my Play Services related stuff in a Private Space so I know what apps can actually use it.
  • Device Integrity Check. Verified boot and some other device integrity checks are properly supported and so many apps that required them should run, though not all. This is not always the case with third party ROMs.
  • Wifi Calling and Messaging seems more stable then my old G6. Maybe just the difference between Android 9 and 15.
  • Updates should be supported for a full 7 years from initial device release which as of late 2024 is about another 6.5 years. My original G6 had about 1 year of updates.
  • Hardening. Graphene has a bunch of hardening features not in typical distributions. Storage Scopes and really good Profile support are a couple I've mentioned, but there are many others.

One question that took me a while to consider is where to get Apps from. There are pros and cons and a lot of discussions about this. In the end, I used the GrapheneOS App Store, F-Droid, Accrescent, Obtanium, and the Aurora Store in that order for my owner profile, then installed sandboxed Google Play Services and the Google Play app in my Private Space.

As of now my limited experience with GrapheneOS has all been positive. The one App that I have had issues with is the UPS app for some reason. For that I'll just use their website for now. Not sure if the UPS app can be made to run or not. My understanding too is that Google Wallet may not fully function though I have not tried it and have never used it before anyway.

If your interested in GraphneneOS and have any specific questions, feel free to ask. All the best.

17
 
 

In preparation for the new year, I've been looking for a "better" way to manage what I'm "doing" and looking for a better task-board / ticket manager / project management solution to replace my current unholy and very-cursed mess involving paper notes on a whiteboard (magnets FTW), issues in Gitea (self-hosted) and a whole bunch of .md files in a git repository.

I tried out self-hosting Leantime in my development Docker environment. That was a waste of effort. It's crowded chock-full of "premium" links that just take you to the paid plugin store. I fully expect artificial limits and nerfs to be enforced, too, if one doesn't pay. (Their "pricing" page even alludes to this, stating that "self-hosted" includes the same as their cloud's "free" tier. That would be 150 tasks. That's borderline useless!)

Why ever would I self-host that? Even if I did, how could I trust it to remain free for the features I need, if it paywalls features in the self-hosted scenario? If I self-host it, I'd also want to be free to hack on it and potentially push merge-requests to an open-source project – why would I ever do that for a paywalled app I don't get paid to work on?

My Docker dev. environment runs off a tmpfs so the daemon got stopped, umount /var/tmp/docker, and that shall be the last I ever see of Leantime. Good riddance.

The search continues. I'm open to suggestions of what's worth trying, though. Lemmy, what would YOU actually trust?

18
 
 

Xfce 4.20 has been released with experimental Wayland support for most of the critical components, whilst a few pieces of functionality aren't working or at least not fully, it can be used by 'advanced' users, but expect bugs and some functionality missing.

19
 
 

cross-posted from: https://lemmy.ml/post/23494331

Today KDE community are releasing KDE ⚙️ Gear 24.12 with new versions of classics such as Dolphin, our feature-rich file manager and explorer; Kate, the developer-friendly text editor; Itinerary, a travel assistant that will get you safely to your destination. …and much, much more!

These apps exist thanks to KDE's volunteers and donors. You too can contribute and express support for your favorite apps by adopting them!

Let's take a look at just a few of the applications — some updated and some brand new — which will be landing on your desktop in just a few days.

20
21
15
The Quick and Easy Guide to Jabber/XMPP (contrapunctus.codeberg.page)
submitted 1 month ago by contrapunctus@lemmy.cafe to c/foss
22
23
 
 

cross-posted from: https://lemm.ee/post/49505707

Izzy

PhotonCamera uses advanced algorithms for capturing and processing raw images which give unmatched HDR outputs. PhotonCamera is currently in beta stage and is having rapid development.

Features:

HDRX - This functionality enables advanced stacking of many underexposed images and creates beautiful outputs.

Utilize each camera lens, by the main, wide, macro, telephoto or even IR, a functionality not available in other open source apps.

Manual Control - Easy to use knobs to control Focus, Shutter Speed and ISO on the go.

Configurable Settings :

Number of frames(maximum)

Sharpness

Saturation

Shadow Strength

Interactive viewfinder

Enabling the grid

Enabling viewfinder rounding

Advanced mode settings

Save separate settings for each camera lens

Wide range of supported devices.

24
 
 

cross-posted from: https://lemm.ee/post/49343322

Widelands is a free, open source real-time strategy game with singleplayer campaigns and a multiplayer mode. The game was inspired by Settlers II™ (© Bluebyte) but has significantly more variety and depth to it.

Source - Website

25
view more: next ›