chore(pkgs): add vocabsieve

This commit is contained in:
Mel 2024-12-23 17:27:08 +01:00
parent 0edb59a10b
commit d05b0f87d0
8 changed files with 140 additions and 51 deletions

View file

@ -1,2 +1,2 @@
[Desktop Entry]
Icon=bookmarks-blue
Icon=folder-txt

View file

@ -12,6 +12,7 @@
"audio"
"git"
"input"
"libvirtd"
"lp"
"networkmanager"
"scanner"

View file

@ -1,75 +1,97 @@
{ lib
, cmake
, ninja
, stdenv
, fetchFromGitLab
, kdePackages
{
lib,
stdenv,
fetchFromGitLab,
cmake,
extra-cmake-modules,
ninja,
kdePackages,
}:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
pname = "aerothemeplasma";
version = "1.0.0";
version = "1.0.0"; # TODO: add actual version
src = fetchFromGitLab {
domain = "gitgud.io";
owner = "wackyideas";
repo = "aerothemeplasma";
rev = "master";
sha256 = "sha256-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
repo = pname;
rev = "11fd4c740957accd2c81b3f8089997a59c004b3f";
sha256 = "sha256-cRpQVpXQTg3lDIvDuAAkOUiM6GgGLxqSEf9OI6We9Qg=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
ninja
kdePackages.wrapQtAppsHook # do I need this?
];
# extra libraries for compilation, some of these may be unessecary
buildInputs = [
kdePackages.kcmutils
kdePackages.qtstyleplugin-kvantum
kdePackages.qt6ct
kdePackages.kdecoration
kdePackages.qt6.qtbase
kdePackages.qt6.qtdeclarative
kdePackages.qtbase
kdePackages.qtdeclarative
kdePackages.kconfigwidgets
kdePackages.kconfig
kdePackages.kcoreaddons
kdePackages.kcolorscheme
kdePackages.kwindowsystem
kdePackages.kwayland
kdePackages.kwin
kdePackages.plasma5support
];
# propagatedUserEnvPkgs = [
# kvantum
# ];
postPatch =
/*
bash
*/
''
# Patch all `install.sh` scripts
find ./ -name "install.sh" | while read -r script; do
patchShebangs $script
substituteInPlace $script --replace-quiet /usr $out
done
'';
# buildPhase = ''
# runHook preBuild
# runHook postBuild
# '';
installPhase =
/*
bash
*/
''
runHook preInstall
installPhase = ''
runHook preInstall
mkdir -p $out/share/{color-schemes,icons,konsole,kwin,plasma,mime,sddm/themes,sounds}
mkdir -p $out/share/{color-schemes,konsole,kwin,plasma,sddm/themes}
# Run all `install.sh` scripts
find ./ -name "install.sh" | while read -r script; do
pushd "$(dirname $script)"
./install.sh
popd
done
# Plasma components
cp -a plasma/smod $out/share
cp -a plasma/{desktoptheme,look-and-feel,plasmoids,layout-templates,shells} $out/share/plasma
cp -a plasma/color_scheme/AeroColorScheme1.colors $out/share/color-schemes
cp -a plasma/sddm/sddm-theme-mod $out/share/sddm/themes
# Plasma components
cp -a plasma/smod $out/share
cp -a plasma/{desktoptheme,look-and-feel,plasmoids,layout-templates,shells} $out/share/plasma
cp -a plasma/color_scheme/AeroColorScheme1.colors $out/share/color-schemes
cp -a plasma/sddm/sddm-theme-mod $out/share/sddm/themes
# KWin components
cp -a kwin/{effects,tabbox,outline,scripts} $out/share/kwin
# KWin components
cp -a kwin/{effects,tabbox,outline,scripts} $out/share/kwin
# Misc components
cp -a misc/kvantum/Kvantum $out/share
# Misc components
cp -a misc/kvantum/Kvantum $out/share
cp - a misc/mimetype $out/share/mime/packages
tar -xzf misc/sounds/sounds.tar.gz -C $out/share/sounds
tar -xzf misc/icons/Windows 7 Aero.tar.gz -C $out/share/icons
tar -xzf misc/cursors/aero-drop.tar.gz -C $out/share/icons
runHook postInstall
'';
runHook postInstall
'';
meta = with lib; {
license = licenses.agpl3Only;
platforms = platforms.linux;
};
}
}

View file

@ -0,0 +1,66 @@
{
lib,
python3,
fetchFromGitHub,
gst_all_1,
qt5,
}:
python3.pkgs.buildPythonApplication rec {
pname = "vocabsieve";
version = "0.12.4";
format = "pyproject";
src = fetchFromGitHub {
owner = "FreeLanguageTools";
repo = "vocabsieve";
rev = "v${version}";
hash = "sha256-7POxaMo37brZes1dz/bteGYN9MIkhVPiRIDMBPxw39A=";
};
nativeBuildInputs = [
gst_all_1.gst-libav
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-vaapi
gst_all_1.gstreamer
python3.pkgs.setuptools
qt5.wrapQtAppsHook
];
propagatedBuildInputs = with python3.pkgs; [
beautifulsoup4
bidict
ebooklib
flask
flask-sqlalchemy
lxml
markdown
markdownify
mobi
packaging
pymorphy3
pyqt5
pyqtdarktheme
pyqtgraph
pystardict
pysubs2
readmdict
requests
sentence-splitter
simplemma
slpp
typing-extensions
];
postFixup = ''
makeWrapperArgs+=("''${qtWrapperArgs[@]}")
makeWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
'';
meta = with lib; {
description = "Simple sentence mining tool for language learning";
homepage = "https://github.com/FreeLanguageTools/vocabsieve";
license = licenses.gpl3Plus;
mainProgram = "vocabsieve";
};
}

View file

@ -12,7 +12,6 @@
diff = {}; # show diffs at the side
extra = {}; # extra config for mini modules
hipatterns = {
}; # mark words like TODO or FIXME
jump = {}; # f mappings
misc = {}; # extra features for coding

View file

@ -1,3 +1,7 @@
{pkgs, ...}: {
home.packages = [pkgs.anki-bin];
home.packages = with pkgs; [
anki-bin
vocabsieve
];
}

View file

@ -1,7 +1,4 @@
{
config,
...
}: let
{config, ...}: let
# mbsync = "${config.programs.mbsync.package}/bin/mbsync";
pass = "${config.programs.password-store.package}/bin/pass";
in {
@ -31,10 +28,10 @@ in {
neomutt = {
enable = true;
extraMailboxes = [
"Drafts"
"Junk"
"Sent"
"Trash"
"Drafts"
"Junk"
"Sent"
"Trash"
];
};
};
@ -50,7 +47,7 @@ in {
};
Service = # let
# gpgCmds = import ../cli/gpg-commands.nix {inherit pkgs;};
# in
# in
{
Type = "oneshot";
# ExecCondition = ''

View file

@ -17,7 +17,7 @@
settings.NoDisplay = "true";
};
};
services.kdeconnect = {
enable = true;
package = pkgs.kdePackages.kdeconnect-kde;