Package Details: smassh 3.1.3-2

Git Clone URL: https://aur.archlinux.org/smassh.git (read-only, click to copy)
Package Base: smassh
Description: TUI based typing test application inspired by MonkeyType
Upstream URL: https://github.com/kraanzu/smassh
Licenses: GPL-3.0-only
Submitter: kraanzu
Maintainer: kraanzu (jaxvanyang)
Last Packager: kraanzu
Votes: 2
Popularity: 0.72
First Submitted: 2024-01-26 19:44 (UTC)
Last Updated: 2024-03-26 17:55 (UTC)

Pinned Comments

jaxvanyang commented on 2024-03-27 01:39 (UTC)

As discussed, smassh has been turned into a source package. The pyinstaller binary can be installed with the smassh-bin package. If you want the binary released on GitHub, you should install smassh-bin instead. But normally, these two make no difference.

Latest Comments

1 2 Next › Last »

kraanzu commented on 2024-03-27 08:16 (UTC)

Yes I updated the readme on github as well!

Thanks :)

jaxvanyang commented on 2024-03-27 01:39 (UTC)

As discussed, smassh has been turned into a source package. The pyinstaller binary can be installed with the smassh-bin package. If you want the binary released on GitHub, you should install smassh-bin instead. But normally, these two make no difference.

kraanzu commented on 2024-03-26 17:56 (UTC)

@jaxvanyang

I updated the code and it works!!! Thanks a lot <3

kraanzu commented on 2024-03-26 14:38 (UTC)

@jaxvanyang

Oh oops, my bad. It was not the themes Yea, we can move it no worries!

I should probably use the cache folder (~/.cache/smassh/style.css). What do you think?

jaxvanyang commented on 2024-03-26 13:28 (UTC)

@kraanzu

No need to rush, I also get busy sometimes. The option you mention is probably --add-data for pyinstaller. There is no need to do that for the source package, because it includes all source file like PyPI package. The problem is that when you install it as a system package, all files are owned by root.

Problem code is in css_generator.py, only the write code crash, read is fine. If this file can be moved to the config directory, I can try to fix it.

kraanzu commented on 2024-03-26 10:56 (UTC)

@jaxvanyang

Hmm... There should be an option somewhere to include files like how I do for the binary.

I'm a little busy now so I'll check it and update you in like... 4-5 hrs

jaxvanyang commented on 2024-03-26 09:38 (UTC)

@kraanzu

smassh can be built and installed with this PKGBUILD:

# Maintainer: Jax Young <jaxvanyang@gmail.com>
# Maintainer: Murli Tawari <kraanzu@gmail.com>

pkgname=smassh
pkgver=3.1.2
pkgrel=2
pkgdesc="TUI based typing test application inspired by MonkeyType"
url="https://github.com/kraanzu/smassh"
arch=('any')
license=('GPL-3.0-only')
depends=(
        'python>=3.8'
        'python-textual>=0.52.1'
        'python-appdirs>=1.4.4'
        'python-click>=8.1.7'
        'python-requests>=2.31.0'
)
makedepends=(
        'python-build'
        'python-installer'
        'python-wheel'
        'python-poetry-core>=1.0.0'
)
source=("$pkgname-$pkgver.tar.gz::${url}/archive/v$pkgver.tar.gz")
sha256sums=('c7cde89ba0442c56f9c8953a0cdd4653c276f7ded3398874f45812b12384a011')

build() {
        cd "$pkgname-$pkgver"
        python -m build --wheel --no-isolation
}

package() {
        cd "$pkgname-$pkgver"
        python -m installer --destdir "$pkgdir" dist/*.whl
}

But when I ran it, I got:

Traceback (most recent call last):
  File "/usr/sbin/smassh", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/usr/lib/python3.11/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/click/core.py", line 1666, in invoke
    rv = super().invoke(ctx)
         ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/click/decorators.py", line 33, in new_func
    return f(get_current_context(), *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/smassh/__main__.py", line 24, in main
    Smassh().run()
    ^^^^^^^^
  File "/usr/lib/python3.11/site-packages/smassh/ui/tui.py", line 89, in __init__
    self.action_theme(config_parser.get("theme"))
  File "/usr/lib/python3.11/site-packages/smassh/ui/tui.py", line 115, in action_theme
    generate_theme_file(theme)
  File "/usr/lib/python3.11/site-packages/smassh/src/css_generator.py", line 25, in generate_theme_file
    with open(target_file, "w") as target:
         ^^^^^^^^^^^^^^^^^^^^^^
PermissionError: [Errno 13] Permission denied: '/usr/lib/python3.11/site-packages/smassh/ui/css/styles.tcss'

This is because smassh use a system path for the merged theme file. Maybe we can make it stored in ~/.config/smassh like the config.

kraanzu commented on 2024-03-26 09:01 (UTC)

Hey Hey @jaxvanyang!

Sorry for the delayed response, Yea it works

You can change the PKGBUILD/SRCINFO for the non-binary/source and I can review/test it as well

Thank you so much :)

jaxvanyang commented on 2024-03-24 12:02 (UTC)

I have created the smassh-bin package, and added you as comaintainer. If that looks good to you, I'll begin making smassh built from source.

jaxvanyang commented on 2024-03-24 11:45 (UTC)

@kraanzu

I suppose we can't rename the packages? If you need to create new packages for source/binary feel free to do so and you can add me as a co-maintainer there :)

Yes, we can't. So I will create a -bin package first, then make this smassh package built from source, and pin a comment here to notice people who wants -bin package.