Flatpak have their own set of issues. One thing is, that Flatpak applications do not integrate that easily and perfect like a native package. Either rights are to given, you need to know what rights are needed and how to set it up. Theming can be an issue, because it uses its own libraries in the Flatpak eco system instead your current distributions theme and desktop environment.
But on the other hand, they have actually a permission system and are a little bit sandbox compared to normal applications. Packages often are distributed quickly and are up to date directly from the developers, and usually are not installed with root rights.
I'm pretty much a CLI guy as well and prefer native packages (Arch based, plus the AUR). But I also use Flatpaks for various reasons, alongside with AppImages.
I like get triggered. This reminds me that I'm alive.
I think before this happens, a company would purchase Oracle, because all the tech they have. Oracle has a lot of enterprise and database stuff that I'm not familiar with. The only thing that counts to me is Java. So which companies has the money and knowledge and interest to buy Java rights?
I'm not sure if this would be a good idea, but I can see Google to buy Java. The Android system is based on Java and they need the stability of the rights to not get in conflict with Oracle or any other company again. Also this would give Java some better development I guess.
Beyond raw horsepower, 7-Zip quietly tightens its handling of several legacy formats. Support for ZIP, CcPIO, and FAT archives has been refined, smoothing edge-case extractions that previously required third-party tools.
Over the years there was a few .zip archives that 7z could not handle for whatever reason. For these cases I had to use another application, but don't know the reason. And my bad to not keeping copies of these files for future testing.
This is a really good introduction.
You mean alignment of arguments or multiline strings in example? If they are not on their own line, then it does not matter to me. If they start on their own line, then mixing spaces and tabs isn't a good idea to me. In example for function calls with a bit more complex calls and multiple arguments, I put them in their own line each. They are indented and therefore indentation level plays. If they are on the same line, I never align them and if I would, it would be spaces. In general:
function() {
....var = 1
....another_var = 2
....indented(arg, arg2, arg3)
....indented(arg,
.............arg2,
.............arg3)
}
BTW, my personal note about the tabstops for indentation is, I wish everyone would use it over spaces. Because it would make it much easier to display the file differently without changing it. Also parsing it would make it easier too probably. But since spaces are the standard, I exclusively use space for indentation.
Mhm wait a moment, Final Fantasy 14 is not free, its subscription based.
Its again one of those times when I lost 100% on Steam. I already own the game, so cannot make savings by getting it free, therefore I lost the money that I would have saved. If this keeps happening I am broke very soon.
Just a clarification in case someone sees this comment after the time expired: The game is free to keep if you get it before 10th July. It's just a typo in this postings title.
RIP for those who was still playing this. I tried the game a few years back on Game Pass (or was it a different service?) where I could try it without paying extra. Played 1 or 2 hours or so. It was an okay experience for a disaster game, but got bored quickly. The controls are actually really good and is the reason why this game can be played at all.
^(update: just added a new link)^
- Neovim supports multiple ways to fold: https://neovim.io/doc/user/fold.html
- marker based folding: https://neovim.io/doc/user/fold.html#fold-marker
- introduction what folding is: https://neovim.io/doc/user/usr_28.html#usr_28.txt
The way you describe and show it, is called foldmethod "marker". The advantage of markers are, that they are built into the file. The disadvantage is, its built into the file. I rather like having the source independent from folding markers. The good news is, you can change the foldingmethod in Neovim and ignore the marker comments and instead use your own method.
A simple one is just "manual", where you set what is foldable and not. There are some automatic ones, like based on indentation and such. I was never a folding guy anyway, so don't really know all the differences when to use and how they differ. Neovim has following foldmethod: manual, indent, expr, syntax, diff, marker. The "expr" method even allows you a custom code and logic.
My rule of thumb is, use short names if the context makes it clear. But do not make names too long and complicated (especially with Python :D). For me having unique names is also important, so I don't get confused. So not only too similar names are bad, especially if they all start like "path_aaa", "path_bbb" and such, then the eye can't distinguish them quickly and clearly. And searching (and maybe replace) without an IDE is easier with unique and descriptive names.
Sometimes its better to come up with a new name, instead adding a modification and make the name longer. This could be in a for loop, where inner loops edit variables and create a variation of it. Instead adding something like "_modified", try to find what the modification is and change from "date" to "now" instead "date_current".
Nintendoesn't
It's depressing how dominant Nvidia.
Not only Capcom.
I use Thunderbird for a decade, not sure maybe less, but it feels like a long time. I use Thunderbird exclusively for mail. But feels like this is the wrong place to ask, isn't it?
Also Thunderbird is Mozilla's most successful product. Meaning it is self sustainable.
It's not GUI, but I want to mention another alternative, as people mention commandline applications here too: kdotool, works under KDE Wayland without with normal user rights (no root). They still work on a few features, but it can do lot of windowing stuff already. A good addition to ydotool
.
Python Tutorial: argparse advanced-help with additional options - thing.py

Example script: https://gist.github.com/thingsiplay/ae9a26322cd5830e52b036ab411afd1f
Hi all. I just wanted to share a way to handle a so called advanced help menu, where additional options are listed that are otherwise hidden with regular help. Hidden options should still function. This is just to have less clutter in normal view.
I've researched the web to see how people does it, and this is the way I like most so far. If you think this is problematic, please share your thoughts. This is for a commandline terminal application, that could also be automated through a script.
How it works on a high level
Before the ArgumentParser()
is called, we check the sys.argv
for the trigger option --advanced-help
. Depending on this we set a variable to true or false. Then with the setup of the parser after the ArgumenParser()
call, we add the --advanced-help
option to the list of regular help.
```python advanced_help = False for arg in sys.argv: if arg == "--": break if arg == "--advanced-help": advanced_help = True
parser = argparse.ArgumentParser() ```
Continue setting up your options as usual. But for the help description of those you want to exclude when using just regular -h
, add an inline if else statement (ternary statement). This statement will put the help description only if advanced_help
variable is true, otherwise it puts argparse.SUPPRESS
to hide the option. Do this with all the options you want to hide.
python parser.add_argument( "-c", "--count", action="store_true", default=False, help="print only a count of matching items per list, output file unaffected" if advanced_help else argparse.SUPPRESS, )
At last we need to actually parse what you just setup. For this we need to assign our custom list, that is based on the sys.argv
, plus the regular --help
option. This way we can use --advanced-help
without the need for -h
or --help
in addition to show any help message.
python if advanced_help: args = parser.parse_args(sys.argv[0:0] + ["--help"] + sys.argv[1:]) else: args = parser.parse_args()
Run following program once with ./thing.py -h
and ./thing.py --advanced-help
.
YouTube Video
Click to view this content.
Watch on YouTube: https://youtu.be/_Pqfjer8-O4
Watch on SkipVids: https://skipvids.com/?v=_Pqfjer8-O4 (watch YouTube without using YouTube directly, and without ads)
Video Description:
---
Inside your smartphone, there are billions of transistors, but have you ever wondered how they actually work and how they can be combined to perform tasks like multiplying two numbers together? One rather interesting thing is that transistors are a lot like Lego Bricks assembled together to build a massive Lego set, which we’ll explore further. In this video, we dive into the nanoscopic world of transistors. First, we'll see how an individual transistor works, then we’ll see how they are connected together and organized into logic gates such as an inverter or an AND gate. Finally, we’ll see how logic gates are connected together into large Macrocells capable of performing arithmetic.
Table of Contents:
00:00 - Inside your Desktop Computer 00:26 - Transistors are like Lego Pieces 01:09 - Lego Bricks vs Transistors and Standard Cells 02:12 - Examining the Inverter Standard Cell 03:24 - How do Basic Transistors work? 09:09 - Schematic for an Inverter Standard Cell 10:45 - Exploring the Macrocell 13:20 - Conceptualizing how a CPU Works 15:11 - Brilliant Sponsorship 16:55 - The NAND Standard Cell 20:35 - A Surprisingly Hard Script to Write 21:42 - The AND Standard Cell 23:16 - The Exclusive OR Standard Cell 23:54 - CMOS Circuit 24:27 - Understanding Picoseconds 25:51 - Special Thank You and Outro
I desperately need some Python help. In short, i want to use multiple keys at once for sorting a dictionary. I have a list of keys and don't know how to convert it to the required list.
This is a single key. The self.items
is a list of dictionaries, where d[key]
is resolved to the actual key name such as "core_name", that the list is then sorted as. This works as expected for single sort, but not for multiple.
key = "core_name" self.items = sorted(self.items, key=lambda d: d[key]) key = "label" self.items = sorted(self.items, key=lambda d: d[key])
Problem is, sorting it multiple times gives me wrong results. The keys need to be called in one go. I can do that manually like this:
self.items = sorted(self.items, key=lambda d: (d["core_name"], d["label"]))
But need it programmatically to assign a list of keys. The following does not work (obviously). I don't know how to convert this into the required form:
```
Not working!
keys = ["core_name", "label"] self.items = sorted(self.items, key=lambda d: d[keys]) ```
I somehow need something like a map function I guess? Something that d[keys]
is replaced by "convert each key in keys into a list of d[key]". This is needed inside the lambda, because the key/value pair is dynamically read from self.items
.
Is it understandable what I try to do? Has anyone an idea?
---
Edit: Solution by Fred: https://beehaw.org/post/20656674/4826725
Just use comprehension and create a tuple in place: sorted(items, key=lambda d: tuple(d[k] for k in keys))
Regular call to fzf, but output the index number of the selected entry, instead the text itself. It's a pretty niche use case, but there was a few times in the past when I needed it. You can use options for fzf just normally too.
bash fzn() { nl | fzf --with-nth 2.. "${@}" | awk '{print $1}' }
Usage:
bash find . -maxdepth 1 -type d | fzn -e -m
I always forget how to do this manually, so I made this simple function for Bash. Just copy this like an alias into your .bashrc and use it like any other command in a pipe.
It only works with the first command in the recorded history, not with any sub shells or chained commands.
``` #!/usr/bin/env bash
1. history and $HISTFILE do not work in scripts. Therefore cat with a direct
path is needed.
2. awk gets the first part of the command name.
3. List is then sorted and duplicate entries are removed.
4. type -P will expand command names to paths, similar to which. But it will
also expand aliases and functions.
5. Final output is then sorted again.
type -P $(cat ~/.bash_history | awk '{print $1}' | sort | uniq) | sort ```
After reading a blog post, I had this script in mind to see if its possible. This is just for fun and I don't have an actual use for it. Maybe some parts of it might inspire you to do something too. So have fun.
Edit 1:
After some suggestions from the comments, here is a little shorter version. sort | uniq
can be replaced by sort -u
, as the output of them should be identical in this case (in certain circumstances they can have different effect!). Also someone pointed out my useless cat
, as the file can be used directly with awk
. And for good reason. :D Enjoy, and thanks for all.
type -P $(awk '{print $1}' ~/.bash_history | sort -u) | sort
I still have no real use case for this one liner, its mainly just for fun.
The multinational scientific collaboration COSMOS releases the largest map of the universe, going back to almost the beginning of time

Direct link to the image in the browser: https://cosmos2025.iap.fr/fitsmap/?ra=150.1203188&dec=2.1880050&zoom=2
Article copied:
---
In the name of open science, the multinational scientific collaboration COSMOS on Thursday has released the data behind the largest map of the universe. Called the COSMOS-Web field, the project, with data collected by the James Webb Space Telescope (JWST), consists of all the imaging and a catalog of nearly 800,000 galaxies spanning nearly all of cosmic time. And it’s been challenging existing notions of the infant universe.
“Our goal was to construct this deep field of space on a physical scale that far exceeded anything that had been done before,” said UC Santa Barbara physics professor Caitlin Casey, who co-leads the COSMOS collaboration with Jeyhan Kartaltepe of the Rochester Institute of Technology. “If you had a printout of the Hubble Ultra Deep Field on a standard piece of paper,” she said, referring to the iconic view of nearly 10,000 galaxies released by NASA in 2004, “our image would be slightly larger than a 13-foot by 13-foot-wide mural, at the same depth. So it’s really strikingly large.” An animated zoom-out from the center of the COSMOS-Web field to a full-size comparison between COSMOS-Web and the Hubble Ultra Deep Field
The COSMOS-Web composite image reaches back about 13.5 billion years; according to NASA, the universe is about 13.8 billion years old, give or take one hundred million years. That covers about 98% of all cosmic time. The objective for the researchers was not just to see some of the most interesting galaxies at the beginning of time but also to see the wider view of cosmic environments that existed during the early universe, during the formation of the first stars, galaxies and black holes.
“The cosmos is organized in dense regions and voids,” Casey explained. “And we wanted to go beyond finding the most distant galaxies; we wanted to get that broader context of where they lived.” A 'big surprise'
And what a cosmic neighborhood it turned out to be. Before JWST turned on, Casey said, she and fellow astronomers made their best predictions about how many more galaxies the space telescope would be able to see, given its 6.5 meter (21 foot) diameter light-collecting primary mirror, about six times larger than Hubble’s 2.4 meter (7 foot, 10 in) diameter mirror. The best measurements from Hubble suggested that galaxies within the first 500 million years would be incredibly rare, she said.
“It makes sense — the Big Bang happens and things take time to gravitationally collapse and form, and for stars to turn on. There’s a timescale associated with that,” Casey explained. “And the big surprise is that with JWST, we see roughly 10 times more galaxies than expected at these incredible distances. We’re also seeing supermassive black holes that are not even visible with Hubble.” And they’re not just seeing more, they’re seeing different types of galaxies and black holes, she added.
“Since the telescope turned on we’ve been wondering ‘Are these JWST datasets breaking the cosmological model? Because the universe was producing too much light too early; it had only about 400 million years to form something like a billion solar masses of stars. We just do not know how to make that happen."
'Lots of unanswered questions'
While the COSMOS-Web images and catalog answer many questions astronomers have had about the early universe, they also spark more questions.
“Since the telescope turned on we’ve been wondering ‘Are these JWST datasets breaking the cosmological model? Because the universe was producing too much light too early; it had only about 400 million years to form something like a billion solar masses of stars. We just do not know how to make that happen,” Casey said. “So, lots of details to unpack, and lots of unanswered questions.”
In releasing the data to the public, the hope is that other astronomers from all over the world will use it to, among other things, further refine our understanding of how the early universe was populated and how everything evolved to the present day. The dataset may also provide clues to other outstanding mysteries of the cosmos, such as dark matter and physics of the early universe that may be different from what we know today.
“A big part of this project is the democratization of science and making tools and data from the best telescopes accessible to the broader community,” Casey said. The data was made public almost immediately after it was gathered, but only in its raw form, useful only to those with the specialized technical knowledge and the supercomputer access to process and interpret it. The COSMOS collaboration has worked tirelessly for the past two years to convert raw data into broadly usable images and catalogs. In creating these products and releasing them, the researchers hope that even undergraduate astronomers could dig into the material and learn something new.
“Because the best science is really done when everyone thinks about the same data set differently,” Casey said. “It’s not just for one group of people to figure out the mysteries.” Image Caitlin Casey wears a puffy coat in front of a lake Photo Credit Courtesy Photo Caitlin Casey
Caitlin Casey is an observational astronomer with expertise in high-redshift galaxies. She uses the most massive and unusual galaxies at early times to test fundamental properties of galaxy assembly (including their gas, stars, and dust) within a ΛCDM cosmological framework. Read more
For the COSMOS collaboration, the exploration continues. They’ve headed back to the deep field to further map and study it.
“We have more data collection coming up,” she said. “We think we have identified the earliest galaxies in the image, but we need to verify that.” To do so, they’ll be using spectroscopy, which breaks up light from galaxies into a prism, to confirm the distance of these sources (more distant = older). “As a byproduct,” Casey added, “we’ll get to understand the interstellar chemistry in these systems through tracing nitrogen, carbon and oxygen. There’s a lot left to learn and we’re just beginning to scratch the surface.”
The COSMOS-Web image is available to browse interactively ; the accompanying scientific papers have been submitted to the Astrophysical Journal and Astronomy & Astrophysics.
YouTube Video
Click to view this content.
I like listening to oldschool videogame music. Recently I listened to some music of games I never played and one song in particular blew my mind. Its wonderful and since it lives rent free in my head, coming back to it over and over again. I'm loving it.
Listen on:
"Sacred Somnom Woods" in Mario & Luigi - Dream Team for the Nintendo 3DS. The composer is the well known Yoko Shimomura, also known for work on Street Fighter 2, Kingdom Hearts and many more legendary games.
To me this track has this Breath of the Wild or Tears of the Kingdom vibes to it. Because I did not play the actual Mario & Luigi games, I always interpret this as a Zelda song now. Its name does contribute to this factor too! Do you also have sometimes game music that captures you?
- Purchases have been restored & the system is working - If you're still missing items contact Support ( support.splitgate.com ) - XP is now active (we've also turned on Double XP) - Sometimes XP is delayed but it is still going through - The Beta now supports players on Linux thru Proton - We're wo...

cross-posted from: https://beehaw.org/post/20234081
> 2 days ago I made a post that the game would not run on a Linux desktop PC (but it would on the Steam Deck). 10 hours ago they released an update that resolves this issue and makes the game run through Proton on a Linux desktop PC. > > > \- The Beta now supports players on Linux thru Proton > > I can confirm it does run and I just did the short tutorial. I still have to play more, but wanted to inform anyone who is interested into the game.
- Purchases have been restored & the system is working - If you're still missing items contact Support ( support.splitgate.com ) - XP is now active (we've also turned on Double XP) - Sometimes XP is delayed but it is still going through - The Beta now supports players on Linux thru Proton - We're wo...

2 days ago I made a post that the game would not run on a Linux desktop PC (but it would on the Steam Deck). 10 hours ago they released an update that resolves this issue and makes the game run through Proton on a Linux desktop PC.
> \- The Beta now supports players on Linux thru Proton
I can confirm it does run and I just did the short tutorial. I still have to play more, but wanted to inform anyone who is interested into the game.
I want to share some thoughts that I had recently about YouTube spam comments. We all know these early bots in the YouTube comment section, with those "misleading" profile pictures and obvious bot like comments. Those comments are often either random about any topic or copied from other users.
OK, why am I telling you that? Well, I think these bots are there to be recognized as bots. Their job is to be seen as a bot and be deleted and ignored. In that case everyone feels safe, thinking all bots are now deleted. But in reality there are more sophisticated bots under us. So the easy bots job is to get delete and basically mislead us, so we don't think that any is left, because they are deleted.
What do you think? Sounds plausible, doesn't it? Or do I have paranoia? :D
Splitgate 2 is the only free-to-play shooter with portals, delivering next-level gunplay, fluid movement, and a constantly evolving experience, featuring a new Battle Royale where you can portal between unique worlds. Welcome to the future of sport.

Splitgate 2 opened the public beta since today or yesterday. Unfortunately the game does not run on desktop PC with a Linux operating system. Others have the same problem.
But whats weird is, people claim it works on Steam Deck and even the official blog post from the devs says they support the Steam Deck. There is no word about general Linux desktops.
So does the developers treat the Steam Deck like a console and make their games not playable on general purpose Linux desktops? Its weird, because otherwise it is playable on a general desktop with Windows too. Even the previous game Splitgate 1 (which they shut off) worked on desktop Linux. It makes no sense!
I'm totally disappointed right now. Because I was excited for this game. It got some hero abilities (I like that) and even a map creator.
YouTube Video
Click to view this content.
Alternative link: https://skipvids.com/?v=BA_HMsznNKg (Ad-free and does not use YouTube directly)
Technical explanation of why almost all Nintendo 64 games looked so blurry. Kaze Emanuar is an expert in this field and does lot of Romhacks and Mods and creates his own Super Mario 64 games with it. So he is quiet knowledgeable.
Note: I recommend watching the video at 1.4x speed, or at the very minimum at 1.25x speed.
YouTube Video
Click to view this content.
Video description:
---
In this video, we'll talk about NVIDIA's last several months of pressure to talk about DLSS more frequently in reviews, plus MFG 4X pressure from the company. NVIDIA has repeatedly made comments to GN that interviews, technical discussion, and access to engineers unrelated to MFG 4X and DLSS are made possible by talking about MFG 4X and DLSS. NVIDIA has explicitly stated that this type of content is made "possible" by benchmarking MFG 4X in reviews specifically, despite us separately and independently covering it in other videos, and has made repeated attempts to get multiplied framerate numbers into its benchmark charts. We will not play those games. In the time since, NVIDIA has offered certain unqualified media outlets access to drivers which actual qualified reviewers do not have access to, but allegedly only under the premise of publishing "previews" of the RTX 5060 in advance of its launch. Some outlets were given access to drivers specifically to publish what we believe are puff pieces and marketing while reviewers were blocked.
TIMESTAMPS
00:00 - Giving Access, Then Threatening It 04:29 - Quid Pro Quo 08:28 - Social Manipulation 09:44 - It's Never Good Enough for NVIDIA 12:08 - NVIDIA is Vindictive 14:28 - Stevescrimination 17:38 - Not The First Time 19:00 - Gamers Are Entitled
https://browseraudit.com/
I just downloaded Tor browser (which is a configured Firefox browser BTW) using the torbrowser-launcher that automatically downloads and manages the browser. And I thought for funs sake, checking and comparing some tests from browseraudit against my current personal Firefox setup. And to my surprise I got more warnings with Tor Browser v14.5 (based on Mozilla Firefox 128.9.0esr) vs My personal setup of Firefox Browser v137.0.2 (custom configurations and plugins installed). Both at the most up to date version in their official version.
I just found this interesting and wanted to share with you.
Tor Browser
My Firefox Browser
Print CRC-32 (binary mode) checksums with Python on Linux. - thingsiplay/crc32sum

cross-posted from: https://beehaw.org/post/19564932
> https://github.com/thingsiplay/crc32sum
>
> > # usage: crc32sum [-h] [-r] [-i] [-u] [--version] [path ...] > > crc32sum *.sfc > 2d206bf7 Chrono Trigger (USA).sfc >
>
> Previously I used a Bash script to filter out the checksum from 7z output. That felt always a bit hacky and the output was not very flexible. Plus the Python script does not rely on any external module or program too. Also the underlying 7z program call would automatically search for all files in sub directories recursively when a directory was given as input. This would require some additional rework, but I decided it is a better idea to start from scratch in a programming language. So I finally wrote this, to have a bit better control. My previous Bash script can be found here, in case you are curious: https://gist.github.com/thingsiplay/5f07e82ec4138581c6802907c74d4759
>
> BTW, believe it or not, the Bash script running multiple commands starts and executes faster than the Python instance. But the difference is negligible, and the programmable control in Python is much more important to me.
>
> ---
>
> ## What is this program for?
>
> Calculates the CRC hash for each given file, using Python's integrated zlib module. It has a similar use like MD5 or SHA, but is way, way weaker and simpler. It's a quick and easy method to verify the integrity of files, in example after downloading from the web, to check data corruption from your external drives or when creating expected files.
>
> It is important to know and understand that CRC-32 is not secure and should never be used cryptographically. It's use is limited for very simple use cases.
>
> Linux does not have a standard program to calculate the CRC. This is a very simple program to have a similar output like md5sum offers by default.
> Why use CRC at all?
> Usually and most of the time CRC is not required to be used. In fact, I favor MD5 or SHA when possible. But sometimes, only a CRC is provided (often used by the retro emulation gaming scene). Theoretically CRC should also be faster than the other methods, but no performance comparison has been made (frankly the difference doesn't matter to me).
>
Print CRC-32 (binary mode) checksums with Python on Linux. - thingsiplay/crc32sum

https://github.com/thingsiplay/crc32sum
```
usage: crc32sum [-h] [-r] [-i] [-u] [--version] [path ...]
crc32sum *.sfc 2d206bf7 Chrono Trigger (USA).sfc ```
Previously I used a Bash script to filter out the checksum from 7z output. That felt always a bit hacky and the output was not very flexible. Plus the Python script does not rely on any external module or program too. Also the underlying 7z program call would automatically search for all files in sub directories recursively when a directory was given as input. This would require some additional rework, but I decided it is a better idea to start from scratch in a programming language. So I finally wrote this, to have a bit better control. My previous Bash script can be found here, in case you are curious: https://gist.github.com/thingsiplay/5f07e82ec4138581c6802907c74d4759
BTW, believe it or not, the Bash script running multiple commands starts and executes faster than the Python instance. But the difference is negligible, and the programmable control in Python is much more important to me.
---
What is this program for?
Calculates the CRC hash for each given file, using Python's integrated zlib module. It has a similar use like MD5 or SHA, but is way, way weaker and simpler. It's a quick and easy method to verify the integrity of files, in example after downloading from the web, to check data corruption from your external drives or when creating expected files.
It is important to know and understand that CRC-32 is not secure and should never be used cryptographically. It's use is limited for very simple use cases.
Linux does not have a standard program to calculate the CRC. This is a very simple program to have a similar output like md5sum offers by default. Why use CRC at all? Usually and most of the time CRC is not required to be used. In fact, I favor MD5 or SHA when possible. But sometimes, only a CRC is provided (often used by the retro emulation gaming scene). Theoretically CRC should also be faster than the other methods, but no performance comparison has been made (frankly the difference doesn't matter to me).
crc32sum - Calculate CRC32 for each file (Bash using 7z) - crc32sum

Hi all. This is an update on my script extracting CRC32 checksum from the 7z commandline tool. The output should be similar to how the md5sum tool outputs, the checksum and the file name/path.
The initial version of this script was actually broken. It would not output all files if a directory was included (wrong counting of files through argument number). Also filenames that contained a space would only output the first part until the space character. All of this rookie mistakes are solved. Plus there is a progress bar showing what files are processed at the moment, instead showing a blank screen until command is finished. This is useful if there are a lot of files or some big files to process.
Yes, I'm aware there are other ways to accomplish this task. I would be happy to see your solution too. And if you encounter a problem, please report.
(Note: Beehaw does not like the "less than" character and breaks the post completley. So replace the line cat %%EOF
with ! or copy it from the Github Gist link below:)
``` #!/usr/bin/env bash
if [[ "${#}" -eq 0 ]] || [[ "${1}" == '-h' ]]; then self="${0##*/}" cat %%EOF usage: ${self} files...
Calculate CRC32 for each file.
positional arguments: file or dir one or multiple file names or paths, if this is a directory then traverse it recursively to find all files EOF exit 0 fi
7z h -bsp2 -- "${@}" | \grep -v -E '^[ \t]+.*/' | \sed -n -e '/^-------- ------------- ------------$/,$p' | \sed '1d' | \grep --before-context "9999999" '^-------- ------------- ------------$' | \head -n -1 | \awk '$2=""; {print $0}'
```
YouTube Video
Click to view this content.
Marathon looks like an Ai agent would create. Art style, gameplay and story wise.
This is the next game from the Destiny creator Bungie. A multiplayer extraction shooter. It has nothing to do with the original Marathon game its based on, an old single player game. Those who could hands on the game describe it as a Destiny like controls and animation, but as an extraction shooter mode.
As for me, I would probably even check the game out, if it was free to play (its full price game, like Concord) and if it would be playable on Linux. Bungie is anti Linux, so not for me anyway.
Download one package size: 355 MB Unpacked size: 2.3 GBSNES Mods and Romhacks Collection March 26, 2025 (850 pre-patched + description)by...

cross-posted from: https://beehaw.org/post/19102607
> Faster downloads from Gofile, in case Internet Archive is slow or not available: https://gofile.io/d/EFyn1q > > Internet Archive for preservation: https://archive.org/details/snes_mods_and_romhacks_collection_20250326_patched > > --- > > This is the first time I am uploading patched Roms, unlike previously where I uploaded only the patch files. My personal collection of Super Nintendo Romhacks in ready to play patched Roms in .sfc and .smc formats, complete with a descriptive text document. Most, if not all, files are patched by myself, but I did not test every game yet. Some old Romhacks do not work in accurate emulators. > > Please share this everywhere where Rom files are allowed to be shared. I am only sharing here at the moment. > > This collection comes in two variants: flat structure, and sub structure. > "flat" just means all Roms and documents are saved in one single directory. > "sub" means, every game got its own dedicated directory, where only related > Romhacks and Mods are saved. > > > snes_mods_and_romhacks_collection_20250326_patched_flat.7z: (View Contents) > > snes_mods_and_romhacks_collection_20250326/ > Super Metroid_Nature v1.03.smc > Super Metroid_Nature v1.03.txt > > > snes_mods_and_romhacks_collection_20250326_patched_sub.7z: (View Contents) > > Super Nintendo Mods and Romhacks Collection 2025-03-26/ > Documents/ > Super Metroid/ > Nature v1.03.txt > Games/ > Super Metroid/ > Nature v1.03.smc
Download one package size: 355 MB Unpacked size: 2.3 GBSNES Mods and Romhacks Collection March 26, 2025 (850 pre-patched + description)by...

Faster downloads from Gofile, in case Internet Archive is slow or not available: https://gofile.io/d/EFyn1q
Internet Archive for preservation: https://archive.org/details/snes_mods_and_romhacks_collection_20250326_patched
---
This is the first time I am uploading patched Roms, unlike previously where I uploaded only the patch files. My personal collection of Super Nintendo Romhacks in ready to play patched Roms in .sfc and .smc formats, complete with a descriptive text document. Most, if not all, files are patched by myself, but I did not test every game yet. Some old Romhacks do not work in accurate emulators.
Please share this everywhere where Rom files are allowed to be shared. I am only sharing here at the moment.
This collection comes in two variants: flat structure, and sub structure. "flat" just means all Roms and documents are saved in one single directory. "sub" means, every game got its own dedicated directory, where only related Romhacks and Mods are saved.
snes_mods_and_romhacks_collection_20250326_patched_flat.7z: (View Contents)
snes_mods_and_romhacks_collection_20250326/ Super Metroid_Nature v1.03.smc Super Metroid_Nature v1.03.txt
snes_mods_and_romhacks_collection_20250326_patched_sub.7z: (View Contents)
Super Nintendo Mods and Romhacks Collection 2025-03-26/ Documents/ Super Metroid/ Nature v1.03.txt Games/ Super Metroid/ Nature v1.03.smc

- https://thingsiplay.game.blog/
- https://github.com/thingsiplay
I'm here to stay.