Thank you!
HN user
spieglt
https://github.com/spieglt
theron@spiegl.dev
I've been writing Objective-C recently to use macOS frameworks from Rust. I can just write C wrapper functions and compile as a static library. Otherwise I use Swift.
Update: tried postmarketOS again and it seems smoother and more stable. Dock works well though the HDMI screen still turns off and back on every few seconds.
Correct, Flying Carpet doesn't work for Apple-to-Apple transfers, but AirDrop already fills this need.
I haven't turned on my PinePhone in a long time because none of the OSes was usable for more than a week at a time. Maybe I should try postmarketOS again.
I have a project that's more like AirDrop, doesn't require a local network and configures the hotspot automatically: https://github.com/spieglt/flyingcarpet
Great to hear, thanks for letting me know it worked!
It's a very cool idea, but the first barrier that comes to mind would be that when the clients join the hotspots, they don't have internet access, so joining the network would mean losing internet, for laptops and phones without cellular data. I know the LocalOnlyHotspot API I use on Android doesn't offer internet tethering. I'm not sure how possible it is to ensure that on Windows and Linux devices that host hotspots. Also, the device that offers the hotspot in Flying Carpet is pretty much acting like a normal WiFi access point in infrastructure mode, so a real mesh network would probably look a lot different.
Thank you! Yeah, obviously the UI is a weak part. I'd like to improve it eventually but as a one-person project I don't want it to have as minimal of an interface as AirDrop. With all the ways transfers can go wrong, I want that information to be in the user's face so they can submit issues and I can help debug easily.
And no, it can't detect anything about the other device until they're on a WiFi network together, and that can't happen until it knows the peer's OS because it has to know whether it or the peer should be hosting the hotspot. Windows has precedence, then Linux, then Android. (The iOS version doesn't need to know the peer's OS because iOS and macOS can't stand up a hotspot programmatically anymore, so it always has to join.)
Mine does! https://github.com/spieglt/flyingcarpet
For most manufacturers, you can purchase access to the technical documentation for a short period. I paid Toyota $20 for 48 hours of access and got PDFs of the official instructions for how to remove the 4G module.
Biggest features that keep me on Firefox: decent search (whole word, match case) and proxy settings
https://github.com/spieglt/whatfiles may be useful to find such files
I removed the DCM from my RAV4. The annoying part is that it disables the front-right speaker.
I don't really know how many users I have, so I don't know how "meaningful" my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people's needs besides my own.
https://github.com/spieglt/flyingcarpet
https://github.com/spieglt/cloaker
https://github.com/spieglt/whatfiles
https://github.com/spieglt/winage
I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with "Learn Python the Hard Way" and "Automate the Boring Stuff with Python". Then got a job doing some Windows consulting stuff, and they said they'd hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I'd tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful/worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write "cross-platform AirDrop", which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that's a great project idea.
The Windows 10 screen recorder doesn't let you record Windows Explorer.
My PinePhone's About screen says `OS Name postmarketOS 1.25.0`. I've installed all available updates both through the Software app and `sudo apk upgrade`. I thought I was on stable but could be wrong. Any idea what I'm missing to upgrade to this service pack?
If you're physically close but not on the same network, please check out https://github.com/spieglt/FlyingCarpet.
Here's an alternative to AirDrop! https://github.com/spieglt/FlyingCarpet Linux, Mac, and Windows, requires no network, just two laptops with wireless cards.
I like making my side projects cross-platform when possible. But I'm done trying to get code signing to work, I won't pay Apple $100 to distribute free software, and I have no interest in using XCode, so I feel basically restricted to Linux and Windows only at this point.
I wrote github.com/spieglt/flyingcarpet because I needed AirDrop on my Linux and Windows machines, pretty much does the same thing as running a Python server but over ad hoc wifi.
Reminded me of this:
"In the strict sense, it is not true that one's character is unchangeable; rather, this popular tenet means only that during a man's short lifetime the motives affecting him cannot normally cut deeply enough to destroy the imprinted writing of many millennia. If a man eighty thousand years old were conceivable, his character would in fact be absolutely variable, so that out of him little by little an abundance of different individuals would develop. The brevity of human life misleads us to many an erroneous assertion about the qualities of man."
- Nietzsche, Human, All Too Human
I work on open source projects* when I have a need that other tools don't quite fill properly, and because I like to work with languages like Rust and C that I don't get to use at my day job. I'd like to have a "buy me a cup of coffee" button on my Github because I have put thousands of hours into my side projects, but have no idea how to monetize really. And I wouldn't want to use the monthly supporter model because often when I finish a project I want to take months off, and may not have another idea for a while.
*like https://github.com/spieglt/flyingcarpet
Patch merged.
Oh cool, was that you also? I will after work today.
Wow, thank you very much! I've thought about trying to get a few of my projects into distribution repos but was somewhat intimidated by the process.
I have strace'd whatfiles, in fact that was a very useful way to debug a couple things, so maybe? I have not been able to attach to the same process with both whatfiles and strace, however.
You're right, thanks. Fixed.
Exactly, it's a difference in degree, not in kind. Rust isn't perfect with regard to memory errors, it's just massively better than C. I don't think pml1 will be convinced, but I've been working on a C project lately and I've never appreciated Rust's memory virtues so much as when using valgrind to debug my string and hashmap implementations. Chased a memory leak for two evenings that was just having free() a few lines off in a function. Stupidly simple error, but my eyes just glazed over the code from having read it so many times. In Rust, it never would've happened because the borrow checker would've dropped the memory at the proper time.