Skip to main content

A shopping list app for Linux Mobile

Project description

Karoto Shopping List

A Linux mobile app that helps you with your groceries.

It is not just a fancy replacement for your notes app but instead works a bit like a stock management software. The heart of the app is a list with things you always want to have at home. Before you go to the grocery store or whereever you get your stuff from you can go through this list and check for every item how much you have in your storage. The app then generates the shopping list for you which makes it impossible to forget anything.

Additional features

  • only once: If you need something like a new knive or some new plates e.g. there is the "only once" option where the item automatically gets deleted as soon as you got it once.
  • tags: You can add tags to your items and filter for them. One example workflow could be to tag everything thats in the fridge with a tag called "Fridge" and when you check whats missing you filter for fridge stuff and only open the fridge once. The same can be done while shopping: Tag items for where you can get them and click on the tag when you are there.
  • hide temporary: Imagine you have a long shopping list but not enough money with you or some items would be to heavy/big to carry so you decide to get it next time. Now you can click on the Hide temporary button and the item disappears until you restart the app so it does not annoy you.

Screenshots

Storage Feed (you go through this list at home):

Storage Feed

Shopping Feed (for in the store e.g.):

Shopping Feed

Storage Feed filtered for the tag called Vegetables:

Tags

Installing

Karoto depends on python3 and PyQt6 to run. All instructions assume you have cloned the repository and are in its root folder:

git clone https://codeberg.org/DrRac27/karoto.git
cd karoto

No installing

Without installing you can use ./helper.sh run to start and test the app.

Flatpak (the easiest if you are not using Arch Linux)

Karoto is on Flathub: https://flathub.org/apps/details/page.codeberg.DrRac27.Karoto

Using pip

Note: It seems like the dependency PyQt6 is not (yet?) available for ARM via pip. You should be able to install it if you add --no-deps to the pip command and install the dependencies manually (your package manager probably has PyQt6).

First make sure you have pip installed and then:

sudo pip install karoto
sudo install -Dm 644 packaging/karoto.desktop /usr/share/applications/
sudo install -Dm 644 packaging/karoto.svg /usr/share/icons/hicolor/scalable/apps/

This will install it system-wide. If you want to install it for the user only use ~/.local/share/applications and ~/.icons for the commands above and omit the sudo.

postmarketOS / Alpine

There is an APKBUILD you can build using abuild in this repo. Follow the setup instructions for abuild and create the package using ./helper.sh postmarketos-package in the root folder of this project. You can now install the resulting package. Depending on how you set up abuild the command for this may be something like sudo apk add --allow-untrusted ~/packages/path/to/built/app.apk.

Arch Linux / Arch Linux ARM / DanctNIX / Kupfer / ...

There are the AUR packages karoto and karoto-git. If you e.g. use yay:

yay -S karoto

If you want to change something before installing there is also a PKGBUILD in packaging/archlinux (like for postmarketOS) that you can install using the helper script.

Roadmap aka some ideas that may get implemented soon™ (by you?)

  • Translation
  • Feedback via feedbackd
  • More styles? Dark style? Custom user styles?
  • Multiple lists to choose from via GUI (already supported via CLI)?
  • support for Android (F-Droid)? PRs welcome! (pyqtdeploy?)

Dev Notes

  • if you want git to stop annoying you with the changed tests/data files you can use
git update-index --assume-unchanged <file>

If you want to start tracking changes again:

git update-index --no-assume-unchanged <file>

(src)

License

This app is dual-licensed under MIT for people that care about licenses/legal stuff and under the anarchist license for those who don't.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

karoto-0.2.tar.gz (20.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

karoto-0.2-py3-none-any.whl (23.0 kB view details)

Uploaded Python 3

File details

Details for the file karoto-0.2.tar.gz.

File metadata

  • Download URL: karoto-0.2.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.0 CPython/3.11.4 Linux/6.3.4-sdm845

File hashes

Hashes for karoto-0.2.tar.gz
Algorithm Hash digest
SHA256 2049ee953cdf912208061fe76cc8a70cac9b4aa0549acd8b39d97979ac46dbf8
MD5 43b4db8e734ca18aabdfc73317d83ee1
BLAKE2b-256 4bdd6ad07a5671e36bd635575a6139ee98d32b9e688dde33bcaa264741956249

See more details on using hashes here.

File details

Details for the file karoto-0.2-py3-none-any.whl.

File metadata

  • Download URL: karoto-0.2-py3-none-any.whl
  • Upload date:
  • Size: 23.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.0 CPython/3.11.4 Linux/6.3.4-sdm845

File hashes

Hashes for karoto-0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 27da2127a55e0750d0a6ee02842d03a8fd7e6868216104906567af0e52b63531
MD5 75d859e376724a8ae1f5a0e86d870858
BLAKE2b-256 032d8b8f81ed623fc136218da2944e58318cb397af36090d35d0be4d24e6ec6b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page