Comments (4)
Thanks for chiming in on this and pointing out this behaviour (I don't use snaps myself even on my linux box - whichruns POPOS btw. Which I totally recommend and only uses flatpak and deb).
Tbh, snaps have been a total PITA to date and my original support for them was because of them being the default in Ubuntu though I've considerably soured on them since using them and then rejecting them myself. I have to admit I use flatpak or straight up .deb myself these days and by far the most alarming thing I am hearing in your report here is that an uninstall of the snap would nuke your config and log file. and result in data loss. I agree, that is absolutely unacceptable.
I'm going to see if there is a way to override writing the config and log file to the user home directory ~/.config/harsh
via snaps though worried this requires some sort of crazy approvals.
If not, I believe I will actually deprecate snap support completely (since it seems more about gui binary installs) and hook up nfps in the goreleaser github action to start building rpms and deb packages instead.
However, from my perspective on editing, I don't think the app (particularly one targeted at cli geeks) should have a feature easily trivially by most text editor in search and replace (heck, I'd use vim for this if it was in the right place... =] ).
from harsh.
@siriak
I am going to rewrite the docs to mention that if you do install the snaps version of the app (I am gonna add debs and rpms anyway, I think) that we highly recommend setting the ~/.config/harsh directory using the HARSHPATH
environment variable. As well as a warning about catastrophic deletion on uninstall if you don't.
So, the easy fix for you right now would be setting the HARSHPATH env variable.
I looked into setting up a PPA and it is a major pain for golang software for whatever reason, but will look at it after the deb and rpm binary setups (goreleaser is kinda great for that stuff.).
Keep in mind, the userbase is geeks. I have to admit, I may add convenience features like this in the future (actually theone on my mind most is changing the data format so it records the "last" periodicity so as you ramp up or down habits you get a better idea of how they're going longer term (and an easier calc and logic in the app) as well as being able to add comments with a #
after your response (cause sometimes I honestly forget things like... "whaaa? why did I skip that, that day?" when looking back... 😝
from harsh.
Alrighty, I'm going to close this ticket since HARSHPATH will take care of this. Just trying to figure out how to do that "warning sigil" in GH markup to make sure people see it when reading the docs. I am going to add in .deb and .rpm pakacges soon as I get some extra time on this.
Thanks again for bringing the snaps issue to my attention. Still a little shocked it works in that way, though I guess it's been mostly designed for putting in large gui binaries than these type of cli programs (though now wondering if flatpaks do the same sort of damage.
from harsh.
... I don't think the app (particularly one targeted at cli geeks) should have a feature ...
As a CLI geek, I used sed
to rename habits and I agree with you on that. My concern was primarily on behalf of other users because most of the popular apps never require editing their files directly, only through this app's GUI/CLI. If you are ok with losing non-geek users, this is fine by me too.
As for removing support for snap, will you make a PPA or something else to have automatic updates? Having to download a .deb file from GitHub to reinstall a new version is inconvenient :(
from harsh.
Related Issues (20)
- Incorrect validation in initial ask HOT 2
- Unexpected output of ask command HOT 1
- Unable to install on macOS 11.5.1 via Homebrew HOT 2
- Termux support HOT 3
- `harsh ask` doesn't work correctly between 1am and 2am just after DST happens HOT 8
- Also write an entry in a ledger journal file HOT 2
- log error HOT 8
- [FEATURE REQUEST] Add command to open harsh config files HOT 5
- add --no-color option HOT 3
- Nixpkg HOT 2
- Add frequency per time period programming for habit completion HOT 3
- Add quantity tracking HOT 5
- Confused about the frequency HOT 3
- Adjust the size of bars to the current terminal window
- Sorry! Please choose a valid number (0-7) Error on Windows HOT 7
- [FR] Support habits with quantity HOT 5
- Add data stats to view progress HOT 11
- Log padding sometimes isn't even for each habit (past a certain habit line length?) HOT 5
- Add an optional "ask when due" option in config HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from harsh.