about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorAlexis Hildebrandt <afh@surryhill.net>2024-06-07 09:40:42 +0200
committerAlexis Hildebrandt <afh@surryhill.net>2024-06-09 23:04:51 +0200
commitbf995e3641950f4183c1dd9010349263dfa0123b (patch)
treecdb6db94fa2bb9b53816b83136da42eca5a3ee8b /pkgs/development
parent55ce7a10b66819d96ffce66df9df73b4846cbb92 (diff)
treewide: Remove ending period from meta.description
nix run nixpkgs#silver-searcher -- -G '\.nix$' -0l 'description.*".*\.";' pkgs \
  | xargs -0 nix run nixpkgs#gnused -- -i '' -Ee 's/(description.*)\.";/\1";/'
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/armips/default.nix2
-rw-r--r--pkgs/development/compilers/elm/packages/node/default.nix4
-rw-r--r--pkgs/development/compilers/elm/packages/node/elm-pages/default.nix2
-rw-r--r--pkgs/development/compilers/jetbrains-jdk/default.nix2
-rw-r--r--pkgs/development/compilers/opensmalltalk-vm/default.nix2
-rw-r--r--pkgs/development/coq-modules/CoLoR/default.nix2
-rw-r--r--pkgs/development/coq-modules/coq-elpi/default.nix2
-rw-r--r--pkgs/development/coq-modules/math-classes/default.nix2
-rw-r--r--pkgs/development/cuda-modules/modules/generic/manifests/feature/outputs.nix10
-rw-r--r--pkgs/development/cuda-modules/modules/generic/types/default.nix12
-rw-r--r--pkgs/development/idris-modules/config.nix2
-rw-r--r--pkgs/development/idris-modules/containers.nix2
-rw-r--r--pkgs/development/idris-modules/patricia.nix2
-rw-r--r--pkgs/development/idris-modules/posix.nix2
-rw-r--r--pkgs/development/interpreters/picolisp/default.nix2
-rw-r--r--pkgs/development/interpreters/wasm3/default.nix2
-rw-r--r--pkgs/development/libraries/bc-decaf/default.nix2
-rw-r--r--pkgs/development/libraries/belcard/default.nix2
-rw-r--r--pkgs/development/libraries/belle-sip/default.nix2
-rw-r--r--pkgs/development/libraries/belr/default.nix2
-rw-r--r--pkgs/development/libraries/bzrtp/default.nix2
-rw-r--r--pkgs/development/libraries/example-robot-data/default.nix2
-rw-r--r--pkgs/development/libraries/glibc/mtrace.nix2
-rw-r--r--pkgs/development/libraries/gtkextra/default.nix2
-rw-r--r--pkgs/development/libraries/java/commons/daemon/default.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/libfolia.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/ticcutils.nix2
-rw-r--r--pkgs/development/libraries/lcrq/default.nix2
-rw-r--r--pkgs/development/libraries/libglibutil/default.nix2
-rw-r--r--pkgs/development/libraries/libjaylink/default.nix2
-rw-r--r--pkgs/development/libraries/libjxl/default.nix2
-rw-r--r--pkgs/development/libraries/librist/default.nix2
-rw-r--r--pkgs/development/libraries/lime/default.nix2
-rw-r--r--pkgs/development/libraries/mediastreamer/msopenh264.nix2
-rw-r--r--pkgs/development/libraries/mtxclient/default.nix2
-rw-r--r--pkgs/development/libraries/nghttp3/default.nix2
-rw-r--r--pkgs/development/libraries/ngtcp2/default.nix2
-rw-r--r--pkgs/development/libraries/ngtcp2/gnutls.nix2
-rw-r--r--pkgs/development/libraries/openslide/default.nix2
-rw-r--r--pkgs/development/libraries/ortp/default.nix2
-rw-r--r--pkgs/development/libraries/rapidyaml/default.nix2
-rw-r--r--pkgs/development/libraries/science/math/tensorflow-lite/default.nix2
-rw-r--r--pkgs/development/libraries/science/robotics/edgetpu-compiler/default.nix2
-rw-r--r--pkgs/development/libraries/soci/bc-soci.nix2
-rw-r--r--pkgs/development/libraries/uthenticode/default.nix2
-rw-r--r--pkgs/development/libraries/xtensor/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/bap/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/bisect_ppx/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/dtoa/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/junit/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/mccs/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/msat/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/ocaml-protoc-plugin/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/ppx_deriving/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/ppx_gen_rec/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/wtf8/default.nix2
-rw-r--r--pkgs/development/php-packages/grpc/default.nix2
-rw-r--r--pkgs/development/php-packages/pcov/default.nix2
-rw-r--r--pkgs/development/php-packages/phalcon/default.nix2
-rw-r--r--pkgs/development/php-packages/protobuf/default.nix2
-rw-r--r--pkgs/development/php-packages/psysh/default.nix2
-rw-r--r--pkgs/development/php-packages/vld/default.nix2
-rw-r--r--pkgs/development/python-modules/agate-sql/default.nix2
-rw-r--r--pkgs/development/python-modules/agent-py/default.nix2
-rw-r--r--pkgs/development/python-modules/allure-behave/default.nix2
-rw-r--r--pkgs/development/python-modules/altair/default.nix2
-rw-r--r--pkgs/development/python-modules/ansible-navigator/default.nix2
-rw-r--r--pkgs/development/python-modules/ansible-vault-rw/default.nix2
-rw-r--r--pkgs/development/python-modules/ansimarkup/default.nix2
-rw-r--r--pkgs/development/python-modules/area/default.nix2
-rw-r--r--pkgs/development/python-modules/aspy-refactor-imports/default.nix2
-rw-r--r--pkgs/development/python-modules/azure-multiapi-storage/default.nix2
-rw-r--r--pkgs/development/python-modules/backports-shutil-get-terminal-size/default.nix2
-rw-r--r--pkgs/development/python-modules/bap/default.nix2
-rw-r--r--pkgs/development/python-modules/bespon/default.nix2
-rw-r--r--pkgs/development/python-modules/betacode/default.nix2
-rw-r--r--pkgs/development/python-modules/bidict/default.nix2
-rw-r--r--pkgs/development/python-modules/blessed/default.nix2
-rw-r--r--pkgs/development/python-modules/catkin-pkg/default.nix2
-rw-r--r--pkgs/development/python-modules/chex/default.nix2
-rw-r--r--pkgs/development/python-modules/cleanlab/default.nix2
-rw-r--r--pkgs/development/python-modules/click-datetime/default.nix2
-rw-r--r--pkgs/development/python-modules/coapthon3/default.nix2
-rw-r--r--pkgs/development/python-modules/conda-libmamba-solver/default.nix2
-rw-r--r--pkgs/development/python-modules/conda-package-streaming/default.nix2
-rw-r--r--pkgs/development/python-modules/configparser/default.nix2
-rw-r--r--pkgs/development/python-modules/construct-classes/default.nix2
-rw-r--r--pkgs/development/python-modules/criticality-score/default.nix2
-rw-r--r--pkgs/development/python-modules/dateutils/default.nix2
-rw-r--r--pkgs/development/python-modules/deepdish/default.nix2
-rw-r--r--pkgs/development/python-modules/deepmerge/default.nix2
-rw-r--r--pkgs/development/python-modules/distro/default.nix2
-rw-r--r--pkgs/development/python-modules/django-crispy-forms/default.nix2
-rw-r--r--pkgs/development/python-modules/django-markup/default.nix2
-rw-r--r--pkgs/development/python-modules/django-payments/default.nix2
-rw-r--r--pkgs/development/python-modules/django-pglocks/default.nix2
-rw-r--r--pkgs/development/python-modules/django/4.nix2
-rw-r--r--pkgs/development/python-modules/django/5.nix2
-rw-r--r--pkgs/development/python-modules/dm-haiku/default.nix2
-rw-r--r--pkgs/development/python-modules/dm-tree/default.nix2
-rw-r--r--pkgs/development/python-modules/docker-pycreds/default.nix2
-rw-r--r--pkgs/development/python-modules/empy/default.nix2
-rw-r--r--pkgs/development/python-modules/etesync/default.nix2
-rw-r--r--pkgs/development/python-modules/euclid3/default.nix2
-rw-r--r--pkgs/development/python-modules/eval-type-backport/default.nix2
-rw-r--r--pkgs/development/python-modules/experiment-utilities/default.nix2
-rw-r--r--pkgs/development/python-modules/feedgen/default.nix2
-rw-r--r--pkgs/development/python-modules/flask-bootstrap/default.nix2
-rw-r--r--pkgs/development/python-modules/flask-expects-json/default.nix2
-rw-r--r--pkgs/development/python-modules/flask-mailman/default.nix2
-rw-r--r--pkgs/development/python-modules/flask-wtf/default.nix2
-rw-r--r--pkgs/development/python-modules/flit-scm/default.nix2
-rw-r--r--pkgs/development/python-modules/fontparts/default.nix2
-rw-r--r--pkgs/development/python-modules/ghdiff/default.nix2
-rw-r--r--pkgs/development/python-modules/gin-config/default.nix2
-rw-r--r--pkgs/development/python-modules/grad-cam/default.nix2
-rw-r--r--pkgs/development/python-modules/halo/default.nix2
-rw-r--r--pkgs/development/python-modules/heapdict/default.nix2
-rw-r--r--pkgs/development/python-modules/hole/default.nix2
-rw-r--r--pkgs/development/python-modules/infinity/default.nix2
-rw-r--r--pkgs/development/python-modules/iocapture/default.nix2
-rw-r--r--pkgs/development/python-modules/iopath/default.nix2
-rw-r--r--pkgs/development/python-modules/ipython-sql/default.nix2
-rw-r--r--pkgs/development/python-modules/ipyvuetify/default.nix2
-rw-r--r--pkgs/development/python-modules/jaxlib/default.nix2
-rw-r--r--pkgs/development/python-modules/jmp/default.nix2
-rw-r--r--pkgs/development/python-modules/kivy-garden/default.nix2
-rw-r--r--pkgs/development/python-modules/kivy/default.nix2
-rw-r--r--pkgs/development/python-modules/korean-lunar-calendar/default.nix2
-rw-r--r--pkgs/development/python-modules/lazy-imports/default.nix2
-rw-r--r--pkgs/development/python-modules/ledger-bitcoin/default.nix2
-rw-r--r--pkgs/development/python-modules/ledgercomm/default.nix2
-rw-r--r--pkgs/development/python-modules/libgpuarray/default.nix2
-rw-r--r--pkgs/development/python-modules/lima/default.nix2
-rw-r--r--pkgs/development/python-modules/log-symbols/default.nix2
-rw-r--r--pkgs/development/python-modules/mdx-truly-sane-lists/default.nix2
-rw-r--r--pkgs/development/python-modules/memestra/default.nix2
-rw-r--r--pkgs/development/python-modules/mercadopago/default.nix2
-rw-r--r--pkgs/development/python-modules/meshio/default.nix2
-rw-r--r--pkgs/development/python-modules/minexr/default.nix2
-rw-r--r--pkgs/development/python-modules/mkdocs-drawio-exporter/default.nix2
-rw-r--r--pkgs/development/python-modules/mkdocs-exclude/default.nix2
-rw-r--r--pkgs/development/python-modules/mkdocs-gitlab-plugin/default.nix2
-rw-r--r--pkgs/development/python-modules/mkdocs-macros/default.nix2
-rw-r--r--pkgs/development/python-modules/mkdocs-minify-plugin/default.nix2
-rw-r--r--pkgs/development/python-modules/ml-collections/default.nix2
-rw-r--r--pkgs/development/python-modules/mohawk/default.nix2
-rw-r--r--pkgs/development/python-modules/mouseinfo/default.nix2
-rw-r--r--pkgs/development/python-modules/mpyq/default.nix2
-rw-r--r--pkgs/development/python-modules/msg-parser/default.nix2
-rw-r--r--pkgs/development/python-modules/mujoco/default.nix2
-rw-r--r--pkgs/development/python-modules/mwtypes/default.nix2
-rw-r--r--pkgs/development/python-modules/myhdl/default.nix2
-rw-r--r--pkgs/development/python-modules/myst-docutils/default.nix2
-rw-r--r--pkgs/development/python-modules/nbexec/default.nix2
-rw-r--r--pkgs/development/python-modules/ome-zarr/default.nix2
-rw-r--r--pkgs/development/python-modules/online-judge-tools/default.nix2
-rw-r--r--pkgs/development/python-modules/ordered-set/default.nix2
-rw-r--r--pkgs/development/python-modules/orderedmultidict/default.nix2
-rw-r--r--pkgs/development/python-modules/outcome/default.nix2
-rw-r--r--pkgs/development/python-modules/pagelabels/default.nix2
-rw-r--r--pkgs/development/python-modules/parsley/default.nix2
-rw-r--r--pkgs/development/python-modules/patch-ng/default.nix2
-rw-r--r--pkgs/development/python-modules/pathlib2/default.nix2
-rw-r--r--pkgs/development/python-modules/pdfrw/default.nix2
-rw-r--r--pkgs/development/python-modules/pdm-backend/default.nix2
-rw-r--r--pkgs/development/python-modules/pdm-pep517/default.nix2
-rw-r--r--pkgs/development/python-modules/pdoc3/default.nix2
-rw-r--r--pkgs/development/python-modules/pika-pool/default.nix2
-rw-r--r--pkgs/development/python-modules/pkgutil-resolve-name/default.nix2
-rw-r--r--pkgs/development/python-modules/poetry-semver/default.nix2
-rw-r--r--pkgs/development/python-modules/pooch/default.nix2
-rw-r--r--pkgs/development/python-modules/powerline-mem-segment/default.nix2
-rw-r--r--pkgs/development/python-modules/prompthub-py/default.nix2
-rw-r--r--pkgs/development/python-modules/py-air-control/default.nix2
-rw-r--r--pkgs/development/python-modules/py4j/default.nix2
-rw-r--r--pkgs/development/python-modules/pyautogui/default.nix2
-rw-r--r--pkgs/development/python-modules/pycuda/default.nix2
-rw-r--r--pkgs/development/python-modules/pyeclib/default.nix2
-rw-r--r--pkgs/development/python-modules/pygetwindow/default.nix2
-rw-r--r--pkgs/development/python-modules/pygments-better-html/default.nix2
-rw-r--r--pkgs/development/python-modules/pyinstaller-versionfile/default.nix2
-rw-r--r--pkgs/development/python-modules/pylpsd/default.nix2
-rw-r--r--pkgs/development/python-modules/pyls-flake8/default.nix2
-rw-r--r--pkgs/development/python-modules/pynamecheap/default.nix2
-rw-r--r--pkgs/development/python-modules/pynut2/default.nix2
-rw-r--r--pkgs/development/python-modules/pyquaternion/default.nix2
-rw-r--r--pkgs/development/python-modules/pyro-api/default.nix2
-rw-r--r--pkgs/development/python-modules/pysc2/default.nix2
-rw-r--r--pkgs/development/python-modules/pyscreeze/default.nix2
-rw-r--r--pkgs/development/python-modules/pysim/default.nix2
-rw-r--r--pkgs/development/python-modules/pysmf/default.nix2
-rw-r--r--pkgs/development/python-modules/pytest-catchlog/default.nix2
-rw-r--r--pkgs/development/python-modules/pytest-fixture-config/default.nix2
-rw-r--r--pkgs/development/python-modules/pytest-tornado/default.nix2
-rw-r--r--pkgs/development/python-modules/pytest-virtualenv/default.nix2
-rw-r--r--pkgs/development/python-modules/python-constraint/default.nix2
-rw-r--r--pkgs/development/python-modules/python-hglib/default.nix2
-rw-r--r--pkgs/development/python-modules/python-ironicclient/default.nix2
-rw-r--r--pkgs/development/python-modules/python-musicpd/default.nix2
-rw-r--r--pkgs/development/python-modules/python-string-utils/default.nix2
-rw-r--r--pkgs/development/python-modules/pytools/default.nix2
-rw-r--r--pkgs/development/python-modules/pyzbar/default.nix2
-rw-r--r--pkgs/development/python-modules/qiskit-terra/default.nix2
-rw-r--r--pkgs/development/python-modules/ramlfications/default.nix2
-rw-r--r--pkgs/development/python-modules/regress/default.nix2
-rw-r--r--pkgs/development/python-modules/remote-pdb/default.nix2
-rw-r--r--pkgs/development/python-modules/requests-hawk/default.nix2
-rw-r--r--pkgs/development/python-modules/requestsexceptions/default.nix2
-rw-r--r--pkgs/development/python-modules/reretry/default.nix2
-rw-r--r--pkgs/development/python-modules/rfc7464/default.nix2
-rw-r--r--pkgs/development/python-modules/roku/default.nix2
-rw-r--r--pkgs/development/python-modules/routeros-api/default.nix2
-rw-r--r--pkgs/development/python-modules/s2clientprotocol/default.nix2
-rw-r--r--pkgs/development/python-modules/seekpath/default.nix2
-rw-r--r--pkgs/development/python-modules/sjcl/default.nix2
-rw-r--r--pkgs/development/python-modules/snap-helpers/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-issues/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-mdinclude/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-rtd-dark-mode/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinx-tabs/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-devhelp/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-jsmath/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-qthelp/default.nix2
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-serializinghtml/default.nix2
-rw-r--r--pkgs/development/python-modules/spinners/default.nix2
-rw-r--r--pkgs/development/python-modules/stashy/default.nix2
-rw-r--r--pkgs/development/python-modules/stemming/default.nix2
-rw-r--r--pkgs/development/python-modules/stups-cli-support/default.nix2
-rw-r--r--pkgs/development/python-modules/stups-fullstop/default.nix2
-rw-r--r--pkgs/development/python-modules/stups-tokens/default.nix2
-rw-r--r--pkgs/development/python-modules/stups-zign/default.nix2
-rw-r--r--pkgs/development/python-modules/tblib/default.nix2
-rw-r--r--pkgs/development/python-modules/tensorboard-plugin-profile/default.nix2
-rw-r--r--pkgs/development/python-modules/tensorboard-plugin-wit/default.nix2
-rw-r--r--pkgs/development/python-modules/tensorflow-estimator/bin.nix2
-rw-r--r--pkgs/development/python-modules/throttler/default.nix2
-rw-r--r--pkgs/development/python-modules/tiktoken/default.nix2
-rw-r--r--pkgs/development/python-modules/tlslite-ng/default.nix2
-rw-r--r--pkgs/development/python-modules/translatehtml/default.nix2
-rw-r--r--pkgs/development/python-modules/treeo/default.nix2
-rw-r--r--pkgs/development/python-modules/txgithub/default.nix2
-rw-r--r--pkgs/development/python-modules/txrequests/default.nix2
-rw-r--r--pkgs/development/python-modules/vowpalwabbit/default.nix2
-rw-r--r--pkgs/development/python-modules/xml-marshaller/default.nix2
-rw-r--r--pkgs/development/python-modules/zeroc-ice/default.nix2
-rw-r--r--pkgs/development/python-modules/zict/default.nix2
-rw-r--r--pkgs/development/python2-modules/configparser/default.nix2
-rw-r--r--pkgs/development/skaware-packages/nsss/default.nix2
-rw-r--r--pkgs/development/tools/allure/default.nix2
-rw-r--r--pkgs/development/tools/analysis/rizin/default.nix2
-rw-r--r--pkgs/development/tools/bingo/default.nix2
-rw-r--r--pkgs/development/tools/click/default.nix2
-rw-r--r--pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix2
-rw-r--r--pkgs/development/tools/database/surrealdb-migrations/default.nix2
-rw-r--r--pkgs/development/tools/devbox/default.nix2
-rw-r--r--pkgs/development/tools/documentation/antora/default.nix2
-rw-r--r--pkgs/development/tools/espup/default.nix2
-rw-r--r--pkgs/development/tools/fermyon-spin/default.nix2
-rw-r--r--pkgs/development/tools/fprettify/default.nix2
-rw-r--r--pkgs/development/tools/fsautocomplete/default.nix2
-rw-r--r--pkgs/development/tools/gi-crystal/default.nix2
-rw-r--r--pkgs/development/tools/gocover-cobertura/default.nix2
-rw-r--r--pkgs/development/tools/hostess/default.nix2
-rw-r--r--pkgs/development/tools/language-servers/verible/default.nix2
-rw-r--r--pkgs/development/tools/misc/pest-ide-tools/default.nix2
-rw-r--r--pkgs/development/tools/mix2nix/default.nix2
-rw-r--r--pkgs/development/tools/rcodesign/default.nix2
-rw-r--r--pkgs/development/tools/rover/default.nix2
-rw-r--r--pkgs/development/tools/rust/bootimage/default.nix2
-rw-r--r--pkgs/development/tools/rust/cargo-hakari/default.nix2
-rw-r--r--pkgs/development/tools/rust/cargo-risczero/default.nix2
-rw-r--r--pkgs/development/tools/rust/cargo2junit/default.nix2
-rw-r--r--pkgs/development/tools/rust/crate2nix/default.nix2
-rw-r--r--pkgs/development/tools/rust/duckscript/default.nix2
-rw-r--r--pkgs/development/tools/scenebuilder/default.nix2
-rw-r--r--pkgs/development/tools/scenic-view/default.nix2
-rw-r--r--pkgs/development/tools/subxt/default.nix2
-rw-r--r--pkgs/development/tools/turbogit/default.nix2
-rw-r--r--pkgs/development/tools/turso-cli/default.nix2
-rw-r--r--pkgs/development/tools/worker-build/default.nix2
-rw-r--r--pkgs/development/tools/yamlfmt/default.nix2
-rw-r--r--pkgs/development/tools/yarn-berry/default.nix2
-rw-r--r--pkgs/development/web/publii/default.nix2
284 files changed, 294 insertions, 294 deletions
diff --git a/pkgs/development/compilers/armips/default.nix b/pkgs/development/compilers/armips/default.nix
index 6e3a3ef4d964b..1f0094a203cf9 100644
--- a/pkgs/development/compilers/armips/default.nix
+++ b/pkgs/development/compilers/armips/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/Kingcom/armips";
-    description = "Assembler for various ARM and MIPS platforms.";
+    description = "Assembler for various ARM and MIPS platforms";
     mainProgram = "armips";
     license = licenses.mit;
     maintainers = with maintainers; [ marius851000 ];
diff --git a/pkgs/development/compilers/elm/packages/node/default.nix b/pkgs/development/compilers/elm/packages/node/default.nix
index 6d4d38a6d199c..a20cb9b9264ef 100644
--- a/pkgs/development/compilers/elm/packages/node/default.nix
+++ b/pkgs/development/compilers/elm/packages/node/default.nix
@@ -70,7 +70,7 @@ with self; with elmLib; {
   elm-graphql =
     nodePkgs."@dillonkearns/elm-graphql" // {
       meta = with lib; nodePkgs."@dillonkearns/elm-graphql".meta // {
-        description = " Autogenerate type-safe GraphQL queries in Elm.";
+        description = " Autogenerate type-safe GraphQL queries in Elm";
         license = licenses.bsd3;
         maintainers = [ maintainers.pedrohlc ];
       };
@@ -125,7 +125,7 @@ with self; with elmLib; {
     in
     patched.override (old: {
       meta = with lib; nodePkgs."elm-land".meta // {
-        description = "A production-ready framework for building Elm applications.";
+        description = "A production-ready framework for building Elm applications";
         homepage = "https://elm.land/";
         license = licenses.bsd3;
         maintainers = [ maintainers.zupo ];
diff --git a/pkgs/development/compilers/elm/packages/node/elm-pages/default.nix b/pkgs/development/compilers/elm/packages/node/elm-pages/default.nix
index 5502e26b415dd..a606fb0e06d4c 100644
--- a/pkgs/development/compilers/elm/packages/node/elm-pages/default.nix
+++ b/pkgs/development/compilers/elm/packages/node/elm-pages/default.nix
@@ -19,7 +19,7 @@ nodePkgs."elm-pages".overrideAttrs (
     '';
 
     meta = with lib; nodePkgs."elm-pages".meta // {
-      description = "A statically typed site generator for Elm.";
+      description = "A statically typed site generator for Elm";
       homepage = "https://github.com/dillonkearns/elm-pages";
       license = licenses.bsd3;
       maintainers = [ maintainers.turbomack maintainers.jali-clarke ];
diff --git a/pkgs/development/compilers/jetbrains-jdk/default.nix b/pkgs/development/compilers/jetbrains-jdk/default.nix
index 76d4079baafbf..db3f474f0e135 100644
--- a/pkgs/development/compilers/jetbrains-jdk/default.nix
+++ b/pkgs/development/compilers/jetbrains-jdk/default.nix
@@ -132,7 +132,7 @@ openjdk17.overrideAttrs (oldAttrs: rec {
   nativeBuildInputs = [ git autoconf unzip rsync ] ++ oldAttrs.nativeBuildInputs;
 
   meta = with lib; {
-    description = "An OpenJDK fork to better support Jetbrains's products.";
+    description = "An OpenJDK fork to better support Jetbrains's products";
     longDescription = ''
       JetBrains Runtime is a runtime environment for running IntelliJ Platform
       based products on Windows, Mac OS X, and Linux. JetBrains Runtime is
diff --git a/pkgs/development/compilers/opensmalltalk-vm/default.nix b/pkgs/development/compilers/opensmalltalk-vm/default.nix
index a049e3e8abecf..275ae4ee63250 100644
--- a/pkgs/development/compilers/opensmalltalk-vm/default.nix
+++ b/pkgs/development/compilers/opensmalltalk-vm/default.nix
@@ -103,7 +103,7 @@ let
       '';
 
       meta = {
-        description = "The cross-platform virtual machine for Squeak, Pharo, Cuis, and Newspeak.";
+        description = "The cross-platform virtual machine for Squeak, Pharo, Cuis, and Newspeak";
         mainProgram = scriptName;
         homepage = "https://opensmalltalk.org/";
         license = with lib.licenses; [ mit ];
diff --git a/pkgs/development/coq-modules/CoLoR/default.nix b/pkgs/development/coq-modules/CoLoR/default.nix
index 618ba3fd0a46e..6e59dda15a6a4 100644
--- a/pkgs/development/coq-modules/CoLoR/default.nix
+++ b/pkgs/development/coq-modules/CoLoR/default.nix
@@ -29,7 +29,7 @@ mkCoqDerivation {
 
   meta = {
     homepage = "https://github.com/fblanqui/color";
-    description = "CoLoR is a library of formal mathematical definitions and proofs of theorems on rewriting theory and termination whose correctness has been mechanically checked by the Coq proof assistant.";
+    description = "CoLoR is a library of formal mathematical definitions and proofs of theorems on rewriting theory and termination whose correctness has been mechanically checked by the Coq proof assistant";
     maintainers = with lib.maintainers; [ jpas jwiegley ];
   };
 }
diff --git a/pkgs/development/coq-modules/coq-elpi/default.nix b/pkgs/development/coq-modules/coq-elpi/default.nix
index db82458f4a20f..04dea2feaf60a 100644
--- a/pkgs/development/coq-modules/coq-elpi/default.nix
+++ b/pkgs/development/coq-modules/coq-elpi/default.nix
@@ -70,7 +70,7 @@ in mkCoqDerivation {
   propagatedBuildInputs = [ coq.ocamlPackages.findlib elpi ];
 
   meta = {
-    description = "Coq plugin embedding ELPI.";
+    description = "Coq plugin embedding ELPI";
     maintainers = [ maintainers.cohencyril ];
     license = licenses.lgpl21Plus;
   };
diff --git a/pkgs/development/coq-modules/math-classes/default.nix b/pkgs/development/coq-modules/math-classes/default.nix
index 4630f14dea02f..eb8f55a791f8c 100644
--- a/pkgs/development/coq-modules/math-classes/default.nix
+++ b/pkgs/development/coq-modules/math-classes/default.nix
@@ -21,7 +21,7 @@ mkCoqDerivation {
 
   meta = {
     homepage = "https://math-classes.github.io";
-    description = "A library of abstract interfaces for mathematical structures in Coq.";
+    description = "A library of abstract interfaces for mathematical structures in Coq";
     maintainers = with lib.maintainers; [ siddharthist jwiegley ];
   };
 }
diff --git a/pkgs/development/cuda-modules/modules/generic/manifests/feature/outputs.nix b/pkgs/development/cuda-modules/modules/generic/manifests/feature/outputs.nix
index 6f2fafac9ffc0..40093c2bb0033 100644
--- a/pkgs/development/cuda-modules/modules/generic/manifests/feature/outputs.nix
+++ b/pkgs/development/cuda-modules/modules/generic/manifests/feature/outputs.nix
@@ -4,7 +4,7 @@ let
 in
 # https://github.com/ConnorBaker/cuda-redist-find-features/blob/603407bea2fab47f2dfcd88431122a505af95b42/cuda_redist_find_features/manifest/feature/package/package.py
 options.mkOption {
-  description = "A set of outputs that a package can provide.";
+  description = "A set of outputs that a package can provide";
   example = {
     bin = true;
     dev = true;
@@ -16,7 +16,7 @@ options.mkOption {
   type = types.submodule {
     options = {
       bin = options.mkOption {
-        description = "A `bin` output requires that we have a non-empty `bin` directory containing at least one file with the executable bit set.";
+        description = "A `bin` output requires that we have a non-empty `bin` directory containing at least one file with the executable bit set";
         type = types.bool;
       };
       dev = options.mkOption {
@@ -44,15 +44,15 @@ options.mkOption {
         type = types.bool;
       };
       lib = options.mkOption {
-        description = "A `lib` output requires that we have a non-empty lib directory containing at least one shared library.";
+        description = "A `lib` output requires that we have a non-empty lib directory containing at least one shared library";
         type = types.bool;
       };
       sample = options.mkOption {
-        description = "A `sample` output requires that we have a non-empty `samples` directory.";
+        description = "A `sample` output requires that we have a non-empty `samples` directory";
         type = types.bool;
       };
       static = options.mkOption {
-        description = "A `static` output requires that we have a non-empty lib directory containing at least one static library.";
+        description = "A `static` output requires that we have a non-empty lib directory containing at least one static library";
         type = types.bool;
       };
     };
diff --git a/pkgs/development/cuda-modules/modules/generic/types/default.nix b/pkgs/development/cuda-modules/modules/generic/types/default.nix
index 59ea07521c546..618ef677ff572 100644
--- a/pkgs/development/cuda-modules/modules/generic/types/default.nix
+++ b/pkgs/development/cuda-modules/modules/generic/types/default.nix
@@ -6,34 +6,34 @@ in
   options.generic.types = options.mkOption {
     type = types.attrsOf types.optionType;
     default = { };
-    description = "A set of generic types.";
+    description = "A set of generic types";
   };
   config.generic.types = {
     cudaArch = types.strMatching "^sm_[[:digit:]]+[a-z]?$" // {
       name = "cudaArch";
-      description = "A CUDA architecture name.";
+      description = "A CUDA architecture name";
     };
     # https://github.com/ConnorBaker/cuda-redist-find-features/blob/c841980e146f8664bbcd0ba1399e486b7910617b/cuda_redist_find_features/types/_lib_so_name.py
     libSoName = types.strMatching ".*\\.so(\\.[[:digit:]]+)*$" // {
       name = "libSoName";
-      description = "The name of a shared object file.";
+      description = "The name of a shared object file";
     };
 
     majorMinorVersion = types.strMatching "^([[:digit:]]+)\\.([[:digit:]]+)$" // {
       name = "majorMinorVersion";
-      description = "A version number with a major and minor component.";
+      description = "A version number with a major and minor component";
     };
 
     majorMinorPatchVersion = types.strMatching "^([[:digit:]]+)\\.([[:digit:]]+)\\.([[:digit:]]+)$" // {
       name = "majorMinorPatchVersion";
-      description = "A version number with a major, minor, and patch component.";
+      description = "A version number with a major, minor, and patch component";
     };
 
     majorMinorPatchBuildVersion =
       types.strMatching "^([[:digit:]]+)\\.([[:digit:]]+)\\.([[:digit:]]+)\\.([[:digit:]]+)$"
       // {
         name = "majorMinorPatchBuildVersion";
-        description = "A version number with a major, minor, patch, and build component.";
+        description = "A version number with a major, minor, patch, and build component";
       };
   };
 }
diff --git a/pkgs/development/idris-modules/config.nix b/pkgs/development/idris-modules/config.nix
index 49c6efdd737e5..53d423f728f01 100644
--- a/pkgs/development/idris-modules/config.nix
+++ b/pkgs/development/idris-modules/config.nix
@@ -20,7 +20,7 @@ build-idris-package  {
   };
 
   meta = {
-    description = "Parsers for various configuration files written in Idris.";
+    description = "Parsers for various configuration files written in Idris";
     homepage = "https://github.com/benclifford/idris-config";
     license = lib.licenses.bsd3;
     maintainers = [ lib.maintainers.brainrape ];
diff --git a/pkgs/development/idris-modules/containers.nix b/pkgs/development/idris-modules/containers.nix
index dfe85aa7b8af9..2b3ee40437362 100644
--- a/pkgs/development/idris-modules/containers.nix
+++ b/pkgs/development/idris-modules/containers.nix
@@ -18,7 +18,7 @@ build-idris-package  {
   };
 
   meta = {
-    description = "Various data structures for use in the Idris Language.";
+    description = "Various data structures for use in the Idris Language";
     homepage = "https://github.com/jfdm/idris-containers";
     license = lib.licenses.bsd3;
     maintainers = [ lib.maintainers.brainrape ];
diff --git a/pkgs/development/idris-modules/patricia.nix b/pkgs/development/idris-modules/patricia.nix
index a5cb0c6af00ed..21907f15da810 100644
--- a/pkgs/development/idris-modules/patricia.nix
+++ b/pkgs/development/idris-modules/patricia.nix
@@ -17,7 +17,7 @@ build-idris-package  {
   };
 
   meta = {
-    description = "Immutable map from integer keys to values based on patricia tree. Basically persistent array.";
+    description = "Immutable map from integer keys to values based on patricia tree. Basically persistent array";
     homepage = "https://github.com/ChShersh/idris-patricia";
     license = lib.licenses.mit;
     maintainers = [ lib.maintainers.brainrape ];
diff --git a/pkgs/development/idris-modules/posix.nix b/pkgs/development/idris-modules/posix.nix
index 13588155989ab..cc34c9007272f 100644
--- a/pkgs/development/idris-modules/posix.nix
+++ b/pkgs/development/idris-modules/posix.nix
@@ -17,7 +17,7 @@ build-idris-package  {
   doCheck = false;
 
   meta = {
-    description = "System POSIX bindings for Idris.";
+    description = "System POSIX bindings for Idris";
     homepage = "https://github.com/idris-hackers/idris-posix";
     maintainers = [ lib.maintainers.brainrape ];
   };
diff --git a/pkgs/development/interpreters/picolisp/default.nix b/pkgs/development/interpreters/picolisp/default.nix
index 8f8d0b764fdaa..0cfc49c880687 100644
--- a/pkgs/development/interpreters/picolisp/default.nix
+++ b/pkgs/development/interpreters/picolisp/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with lib; {
-    description = "A pragmatic programming language.";
+    description = "A pragmatic programming language";
     homepage = "https://picolisp.com/";
     license = licenses.mit;
     maintainers = with maintainers; [ nat-418 ];
diff --git a/pkgs/development/interpreters/wasm3/default.nix b/pkgs/development/interpreters/wasm3/default.nix
index d5df9e66ebf4c..6dd68462d1be4 100644
--- a/pkgs/development/interpreters/wasm3/default.nix
+++ b/pkgs/development/interpreters/wasm3/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/wasm3/wasm3";
-    description = "The fastest WebAssembly interpreter, and the most universal runtime.";
+    description = "The fastest WebAssembly interpreter, and the most universal runtime";
     platforms = platforms.all;
     maintainers = with maintainers; [ malbarbo ];
     license = licenses.mit;
diff --git a/pkgs/development/libraries/bc-decaf/default.nix b/pkgs/development/libraries/bc-decaf/default.nix
index c73f28e4e93ae..162eb8a4dd251 100644
--- a/pkgs/development/libraries/bc-decaf/default.nix
+++ b/pkgs/development/libraries/bc-decaf/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DENABLE_STATIC=NO" "-DENABLE_STRICT=NO" ];
 
   meta = with lib; {
-    description = "Elliptic curve library supporting Ed448-Goldilocks and Curve25519. Belledonne Communications' fork for Linphone.";
+    description = "Elliptic curve library supporting Ed448-Goldilocks and Curve25519. Belledonne Communications' fork for Linphone";
     homepage = "https://gitlab.linphone.org/BC/public/bctoolbox";
     license = licenses.mit;
     maintainers = with maintainers; [ thibaultlemaire ];
diff --git a/pkgs/development/libraries/belcard/default.nix b/pkgs/development/libraries/belcard/default.nix
index 0b6cd66cae386..cb16a3fe0fd86 100644
--- a/pkgs/development/libraries/belcard/default.nix
+++ b/pkgs/development/libraries/belcard/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "C++ library to manipulate VCard standard format. Part of the Linphone project.";
+    description = "C++ library to manipulate VCard standard format. Part of the Linphone project";
     homepage = "https://gitlab.linphone.org/BC/public/belcard";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix
index b4b5629cdafb0..efc62bc9a5a1f 100644
--- a/pkgs/development/libraries/belle-sip/default.nix
+++ b/pkgs/development/libraries/belle-sip/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://linphone.org/technical-corner/belle-sip";
-    description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers. Part of the Linphone project.";
+    description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers. Part of the Linphone project";
     mainProgram = "belle_sip_tester";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/belr/default.nix b/pkgs/development/libraries/belr/default.nix
index 7296a9d952754..95517eabed26c 100644
--- a/pkgs/development/libraries/belr/default.nix
+++ b/pkgs/development/libraries/belr/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DENABLE_STATIC=NO" ];
 
   meta = with lib; {
-    description = "Belledonne Communications' language recognition library. Part of the Linphone project.";
+    description = "Belledonne Communications' language recognition library. Part of the Linphone project";
     homepage = "https://gitlab.linphone.org/BC/public/belr";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/bzrtp/default.nix b/pkgs/development/libraries/bzrtp/default.nix
index 6cbe6fc1899da..5bf75c9a2d189 100644
--- a/pkgs/development/libraries/bzrtp/default.nix
+++ b/pkgs/development/libraries/bzrtp/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "An opensource implementation of ZRTP keys exchange protocol. Part of the Linphone project.";
+    description = "An opensource implementation of ZRTP keys exchange protocol. Part of the Linphone project";
     homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/example-robot-data/default.nix b/pkgs/development/libraries/example-robot-data/default.nix
index 45abd392230c7..67e1de59891d0 100644
--- a/pkgs/development/libraries/example-robot-data/default.nix
+++ b/pkgs/development/libraries/example-robot-data/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
   ];
 
   meta = with lib; {
-    description = "Set of robot URDFs for benchmarking and developed examples.";
+    description = "Set of robot URDFs for benchmarking and developed examples";
     homepage = "https://github.com/Gepetto/example-robot-data";
     license = licenses.bsd3;
     maintainers = with maintainers; [ nim65s wegank ];
diff --git a/pkgs/development/libraries/glibc/mtrace.nix b/pkgs/development/libraries/glibc/mtrace.nix
index 926c0d91cdf0b..c9d5369e13c2f 100644
--- a/pkgs/development/libraries/glibc/mtrace.nix
+++ b/pkgs/development/libraries/glibc/mtrace.nix
@@ -35,7 +35,7 @@ glibc.overrideAttrs (oldAttrs: {
   separateDebugInfo = false;
 
   meta = oldAttrs.meta // {
-    description = "Perl script used to interpret and provide human readable output of the trace log contained in the file mtracedata, whose contents were produced by mtrace(3).";
+    description = "Perl script used to interpret and provide human readable output of the trace log contained in the file mtracedata, whose contents were produced by mtrace(3)";
     mainProgram = "mtrace";
   };
 })
diff --git a/pkgs/development/libraries/gtkextra/default.nix b/pkgs/development/libraries/gtkextra/default.nix
index ed860b7dde3fc..66516add6d9cf 100644
--- a/pkgs/development/libraries/gtkextra/default.nix
+++ b/pkgs/development/libraries/gtkextra/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://gtkextra.sourceforge.net/";
-    description = "GtkExtra is a useful set of widgets for creating GUI's for GTK+.";
+    description = "GtkExtra is a useful set of widgets for creating GUI's for GTK+";
     license = licenses.lgpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ tesq0 ];
diff --git a/pkgs/development/libraries/java/commons/daemon/default.nix b/pkgs/development/libraries/java/commons/daemon/default.nix
index be61630d17f4f..68b1c924214db 100644
--- a/pkgs/development/libraries/java/commons/daemon/default.nix
+++ b/pkgs/development/libraries/java/commons/daemon/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage    = "https://commons.apache.org/proper/commons-daemon";
-    description = "Apache Commons Daemon software is a set of utilities and Java support classes for running Java applications as server processes.";
+    description = "Apache Commons Daemon software is a set of utilities and Java support classes for running Java applications as server processes";
     maintainers = with lib.maintainers; [ rsynnest ];
     sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
     license     = lib.licenses.asl20;
diff --git a/pkgs/development/libraries/languagemachines/libfolia.nix b/pkgs/development/libraries/languagemachines/libfolia.nix
index ec7129396540f..7eb01c4cf4b9c 100644
--- a/pkgs/development/libraries/languagemachines/libfolia.nix
+++ b/pkgs/development/libraries/languagemachines/libfolia.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   CXXFLAGS = [ "-DU_USING_ICU_NAMESPACE=1" ];
 
   meta = with lib; {
-    description = "A C++ API for FoLiA documents; an XML-based linguistic annotation format.";
+    description = "A C++ API for FoLiA documents; an XML-based linguistic annotation format";
     mainProgram = "folialint";
     homepage    = "https://proycon.github.io/folia/";
     license     = licenses.gpl3;
diff --git a/pkgs/development/libraries/languagemachines/ticcutils.nix b/pkgs/development/libraries/languagemachines/ticcutils.nix
index 0b5fef292fcff..8fd3749ba1c3e 100644
--- a/pkgs/development/libraries/languagemachines/ticcutils.nix
+++ b/pkgs/development/libraries/languagemachines/ticcutils.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   preConfigure = "sh bootstrap.sh";
 
   meta = with lib; {
-    description = "This module contains useful functions for general use in the TiCC software stack and beyond.";
+    description = "This module contains useful functions for general use in the TiCC software stack and beyond";
     homepage    = "https://github.com/LanguageMachines/ticcutils";
     license     = licenses.gpl3;
     platforms   = platforms.all;
diff --git a/pkgs/development/libraries/lcrq/default.nix b/pkgs/development/libraries/lcrq/default.nix
index 865ec4697326f..3829bbff6ce51 100644
--- a/pkgs/development/libraries/lcrq/default.nix
+++ b/pkgs/development/libraries/lcrq/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = {
     changelog = "https://codeberg.org/librecast/lcrq/src/tag/v${finalAttrs.version}/CHANGELOG.md";
-    description = "Librecast RaptorQ library.";
+    description = "Librecast RaptorQ library";
     homepage = "https://librecast.net/lcrq.html";
     license = [ lib.licenses.gpl2 lib.licenses.gpl3 ];
     maintainers = with lib.maintainers; [ albertchae aynish DMills27 jasonodoom jleightcap ];
diff --git a/pkgs/development/libraries/libglibutil/default.nix b/pkgs/development/libraries/libglibutil/default.nix
index d96b3505bcb96..59434902d78d5 100644
--- a/pkgs/development/libraries/libglibutil/default.nix
+++ b/pkgs/development/libraries/libglibutil/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "Library of glib utilities.";
+    description = "Library of glib utilities";
     homepage = "https://git.sailfishos.org/mer-core/libglibutil";
     license = lib.licenses.bsd3;
     platforms = lib.platforms.linux;
diff --git a/pkgs/development/libraries/libjaylink/default.nix b/pkgs/development/libraries/libjaylink/default.nix
index 5d461940dcea9..f313241d6d865 100644
--- a/pkgs/development/libraries/libjaylink/default.nix
+++ b/pkgs/development/libraries/libjaylink/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://gitlab.zapb.de/libjaylink/libjaylink";
-    description = "libjaylink is a shared library written in C to access SEGGER J-Link and compatible devices.";
+    description = "libjaylink is a shared library written in C to access SEGGER J-Link and compatible devices";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ felixsinger ];
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/libjxl/default.nix b/pkgs/development/libraries/libjxl/default.nix
index ab9ff488b3518..1b0888348c594 100644
--- a/pkgs/development/libraries/libjxl/default.nix
+++ b/pkgs/development/libraries/libjxl/default.nix
@@ -140,7 +140,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/libjxl/libjxl";
-    description = "JPEG XL image format reference implementation.";
+    description = "JPEG XL image format reference implementation";
     license = licenses.bsd3;
     maintainers = with maintainers; [ nh2 ];
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/librist/default.nix b/pkgs/development/libraries/librist/default.nix
index 3f56ff3248767..8d891fcd18d03 100644
--- a/pkgs/development/libraries/librist/default.nix
+++ b/pkgs/development/libraries/librist/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "A library that can be used to easily add the RIST protocol to your application.";
+    description = "A library that can be used to easily add the RIST protocol to your application";
     homepage = "https://code.videolan.org/rist/librist";
     license = with licenses; [ bsd2 mit isc ];
     maintainers = with maintainers; [ raphaelr sebtm ];
diff --git a/pkgs/development/libraries/lime/default.nix b/pkgs/development/libraries/lime/default.nix
index 0ac3e0f81ecd3..d40ac0a05c540 100644
--- a/pkgs/development/libraries/lime/default.nix
+++ b/pkgs/development/libraries/lime/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "End-to-end encryption library for instant messaging. Part of the Linphone project.";
+    description = "End-to-end encryption library for instant messaging. Part of the Linphone project";
     homepage = "https://www.linphone.org/technical-corner/lime";
     license = licenses.gpl3Only;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/mediastreamer/msopenh264.nix b/pkgs/development/libraries/mediastreamer/msopenh264.nix
index 353dcd4aafdf1..55ae2c8d9899e 100644
--- a/pkgs/development/libraries/mediastreamer/msopenh264.nix
+++ b/pkgs/development/libraries/mediastreamer/msopenh264.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "H.264 encoder/decoder plugin for mediastreamer2. Part of the Linphone project.";
+    description = "H.264 encoder/decoder plugin for mediastreamer2. Part of the Linphone project";
     homepage = "https://www.linphone.org/technical-corner/mediastreamer2";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/development/libraries/mtxclient/default.nix b/pkgs/development/libraries/mtxclient/default.nix
index 1c589f1af6d54..fb3709d2e0e2d 100644
--- a/pkgs/development/libraries/mtxclient/default.nix
+++ b/pkgs/development/libraries/mtxclient/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "Client API library for the Matrix protocol.";
+    description = "Client API library for the Matrix protocol";
     homepage = "https://github.com/Nheko-Reborn/mtxclient";
     license = licenses.mit;
     maintainers = with maintainers; [ fpletz pstn ];
diff --git a/pkgs/development/libraries/nghttp3/default.nix b/pkgs/development/libraries/nghttp3/default.nix
index bb7e56ee42404..4981e1f0e85a9 100644
--- a/pkgs/development/libraries/nghttp3/default.nix
+++ b/pkgs/development/libraries/nghttp3/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/ngtcp2/nghttp3";
-    description = "nghttp3 is an implementation of HTTP/3 mapping over QUIC and QPACK in C.";
+    description = "nghttp3 is an implementation of HTTP/3 mapping over QUIC and QPACK in C";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ izorkin ];
diff --git a/pkgs/development/libraries/ngtcp2/default.nix b/pkgs/development/libraries/ngtcp2/default.nix
index ada0ab55dfd6f..e3b8d5813b15c 100644
--- a/pkgs/development/libraries/ngtcp2/default.nix
+++ b/pkgs/development/libraries/ngtcp2/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/ngtcp2/ngtcp2";
-    description = "ngtcp2 project is an effort to implement QUIC protocol which is now being discussed in IETF QUICWG for its standardization.";
+    description = "ngtcp2 project is an effort to implement QUIC protocol which is now being discussed in IETF QUICWG for its standardization";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ izorkin ];
diff --git a/pkgs/development/libraries/ngtcp2/gnutls.nix b/pkgs/development/libraries/ngtcp2/gnutls.nix
index d0e060c64058e..cec26300cf8be 100644
--- a/pkgs/development/libraries/ngtcp2/gnutls.nix
+++ b/pkgs/development/libraries/ngtcp2/gnutls.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://github.com/ngtcp2/ngtcp2";
-    description = "an effort to implement RFC9000 QUIC protocol.";
+    description = "an effort to implement RFC9000 QUIC protocol";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ vcunat/* for knot-dns */ ];
diff --git a/pkgs/development/libraries/openslide/default.nix b/pkgs/development/libraries/openslide/default.nix
index 71c2017f9e5a5..3a8c2b2b9d867 100644
--- a/pkgs/development/libraries/openslide/default.nix
+++ b/pkgs/development/libraries/openslide/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     homepage = "https://openslide.org";
-    description = "A C library that provides a simple interface to read whole-slide images.";
+    description = "A C library that provides a simple interface to read whole-slide images";
     license = licenses.lgpl21;
     platforms = platforms.unix;
     maintainers = with maintainers; [ lromor ];
diff --git a/pkgs/development/libraries/ortp/default.nix b/pkgs/development/libraries/ortp/default.nix
index 3c61e7b5c9d99..51db095846e67 100644
--- a/pkgs/development/libraries/ortp/default.nix
+++ b/pkgs/development/libraries/ortp/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake ];
 
   meta = with lib; {
-    description = "A Real-Time Transport Protocol (RFC3550) stack. Part of the Linphone project.";
+    description = "A Real-Time Transport Protocol (RFC3550) stack. Part of the Linphone project";
     mainProgram = "ortp_tester";
     homepage = "https://linphone.org/technical-corner/ortp";
     license = licenses.gpl3Plus;
diff --git a/pkgs/development/libraries/rapidyaml/default.nix b/pkgs/development/libraries/rapidyaml/default.nix
index 1275f2fa5452b..00d79cd06254f 100644
--- a/pkgs/development/libraries/rapidyaml/default.nix
+++ b/pkgs/development/libraries/rapidyaml/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake git ];
 
   meta = with lib; {
-    description = "A library to parse and emit YAML, and do it fast.";
+    description = "A library to parse and emit YAML, and do it fast";
     homepage = "https://github.com/biojppm/rapidyaml";
     license = licenses.mit;
     maintainers = with maintainers; [ martfont ];
diff --git a/pkgs/development/libraries/science/math/tensorflow-lite/default.nix b/pkgs/development/libraries/science/math/tensorflow-lite/default.nix
index 1bee7f46d37ca..139540b7f1f37 100644
--- a/pkgs/development/libraries/science/math/tensorflow-lite/default.nix
+++ b/pkgs/development/libraries/science/math/tensorflow-lite/default.nix
@@ -99,7 +99,7 @@ buildBazelPackage rec {
   configurePlatforms = [];
 
   meta = with lib; {
-    description = "An open source deep learning framework for on-device inference.";
+    description = "An open source deep learning framework for on-device inference";
     homepage = "https://www.tensorflow.org/lite";
     license = licenses.asl20;
     maintainers = with maintainers; [ mschwaig cpcloud ];
diff --git a/pkgs/development/libraries/science/robotics/edgetpu-compiler/default.nix b/pkgs/development/libraries/science/robotics/edgetpu-compiler/default.nix
index 07d978641663d..f18695662f48d 100644
--- a/pkgs/development/libraries/science/robotics/edgetpu-compiler/default.nix
+++ b/pkgs/development/libraries/science/robotics/edgetpu-compiler/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "A command line tool that compiles a TensorFlow Lite model into an Edge TPU compatible file.";
+    description = "A command line tool that compiles a TensorFlow Lite model into an Edge TPU compatible file";
     mainProgram = "edgetpu_compiler";
     homepage = "https://coral.ai/docs/edgetpu/compiler";
     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
diff --git a/pkgs/development/libraries/soci/bc-soci.nix b/pkgs/development/libraries/soci/bc-soci.nix
index d728d61a8f57e..a3c967d80fe40 100644
--- a/pkgs/development/libraries/soci/bc-soci.nix
+++ b/pkgs/development/libraries/soci/bc-soci.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with lib; {
-    description = "Database access library for C++. Belledonne Communications' fork for Linphone.";
+    description = "Database access library for C++. Belledonne Communications' fork for Linphone";
     homepage = "https://gitlab.linphone.org/BC/public/external/soci";
     license = licenses.boost;
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/uthenticode/default.nix b/pkgs/development/libraries/uthenticode/default.nix
index 68a896d136499..6ccb0ba1b83a7 100644
--- a/pkgs/development/libraries/uthenticode/default.nix
+++ b/pkgs/development/libraries/uthenticode/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   checkPhase = "test/uthenticode_test";
 
   meta = with lib; {
-    description = "A small cross-platform library for verifying Authenticode digital signatures.";
+    description = "A small cross-platform library for verifying Authenticode digital signatures";
     homepage = "https://github.com/trailofbits/uthenticode";
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/xtensor/default.nix b/pkgs/development/libraries/xtensor/default.nix
index 678f87af74cfa..f62be138f2c07 100644
--- a/pkgs/development/libraries/xtensor/default.nix
+++ b/pkgs/development/libraries/xtensor/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
   checkTarget = "xtest";
 
   meta = with lib; {
-    description = "Multi-dimensional arrays with broadcasting and lazy computing.";
+    description = "Multi-dimensional arrays with broadcasting and lazy computing";
     homepage = "https://github.com/xtensor-stack/xtensor";
     license = licenses.bsd3;
     maintainers = with maintainers; [ cpcloud ];
diff --git a/pkgs/development/ocaml-modules/bap/default.nix b/pkgs/development/ocaml-modules/bap/default.nix
index a56bce316ef6d..bdbf9b65c3c01 100644
--- a/pkgs/development/ocaml-modules/bap/default.nix
+++ b/pkgs/development/ocaml-modules/bap/default.nix
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--enable-everything ${disableIda} ${disableGhidra}" "--with-llvm-config=${llvm.dev}/bin/llvm-config" ];
 
   meta = with lib; {
-    description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages.";
+    description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages";
     homepage = "https://github.com/BinaryAnalysisPlatform/bap/";
     license = licenses.mit;
     maintainers = [ maintainers.maurer ];
diff --git a/pkgs/development/ocaml-modules/bisect_ppx/default.nix b/pkgs/development/ocaml-modules/bisect_ppx/default.nix
index 4d01125188dc7..ae70482fd4b2e 100644
--- a/pkgs/development/ocaml-modules/bisect_ppx/default.nix
+++ b/pkgs/development/ocaml-modules/bisect_ppx/default.nix
@@ -19,7 +19,7 @@ buildDunePackage rec {
   ];
 
   meta = with lib; {
-    description = "Bisect_ppx is a code coverage tool for OCaml and Reason. It helps you test thoroughly by showing what's not tested.";
+    description = "Bisect_ppx is a code coverage tool for OCaml and Reason. It helps you test thoroughly by showing what's not tested";
     homepage = "https://github.com/aantron/bisect_ppx";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/ocaml-modules/dtoa/default.nix b/pkgs/development/ocaml-modules/dtoa/default.nix
index 866375cc5bae1..c3297b9a525bd 100644
--- a/pkgs/development/ocaml-modules/dtoa/default.nix
+++ b/pkgs/development/ocaml-modules/dtoa/default.nix
@@ -17,7 +17,7 @@ buildDunePackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/flowtype/ocaml-dtoa";
-    description = "Converts OCaml floats into strings (doubles to ascii, \"d to a\"), using the efficient Grisu3 algorithm.";
+    description = "Converts OCaml floats into strings (doubles to ascii, \"d to a\"), using the efficient Grisu3 algorithm";
     license = licenses.mit;
     maintainers = [ maintainers.eqyiel ];
   };
diff --git a/pkgs/development/ocaml-modules/junit/default.nix b/pkgs/development/ocaml-modules/junit/default.nix
index b71712aba9992..ff3c31519ed45 100644
--- a/pkgs/development/ocaml-modules/junit/default.nix
+++ b/pkgs/development/ocaml-modules/junit/default.nix
@@ -17,7 +17,7 @@ buildDunePackage (rec {
   doCheck = true;
 
   meta = with lib; {
-    description = "ocaml-junit is an OCaml package for the creation of JUnit XML reports, proving a typed API to produce valid reports acceptable to Jenkins, comes with packages supporting OUnit and Alcotest.";
+    description = "ocaml-junit is an OCaml package for the creation of JUnit XML reports, proving a typed API to produce valid reports acceptable to Jenkins, comes with packages supporting OUnit and Alcotest";
     license = licenses.lgpl3Plus;
     maintainers = with maintainers; [ ];
     homepage = "https://github.com/Khady/ocaml-junit";
diff --git a/pkgs/development/ocaml-modules/mccs/default.nix b/pkgs/development/ocaml-modules/mccs/default.nix
index 50abdf631db89..11886a3b09cdf 100644
--- a/pkgs/development/ocaml-modules/mccs/default.nix
+++ b/pkgs/development/ocaml-modules/mccs/default.nix
@@ -20,7 +20,7 @@ buildDunePackage rec {
   doCheck = true;
 
   meta = with lib; {
-    description = "A library providing a multi criteria CUDF solver, part of MANCOOSI project.";
+    description = "A library providing a multi criteria CUDF solver, part of MANCOOSI project";
     downloadPage = "https://github.com/AltGr/ocaml-mccs";
     homepage = "https://www.i3s.unice.fr/~cpjm/misc/";
     license = with licenses; [ lgpl21 gpl3 ];
diff --git a/pkgs/development/ocaml-modules/msat/default.nix b/pkgs/development/ocaml-modules/msat/default.nix
index d5893dc55e043..adbd39539b8e5 100644
--- a/pkgs/development/ocaml-modules/msat/default.nix
+++ b/pkgs/development/ocaml-modules/msat/default.nix
@@ -28,7 +28,7 @@ buildDunePackage rec {
   nativeCheckInputs = [ mdx.bin ];
 
   meta = {
-    description = "A modular sat/smt solver with proof output.";
+    description = "A modular sat/smt solver with proof output";
     homepage = "https://gbury.github.io/mSAT/";
     license = lib.licenses.asl20;
     maintainers = [ lib.maintainers.vbgl ];
diff --git a/pkgs/development/ocaml-modules/ocaml-protoc-plugin/default.nix b/pkgs/development/ocaml-modules/ocaml-protoc-plugin/default.nix
index 067b61212acec..c89d9d7219ac7 100644
--- a/pkgs/development/ocaml-modules/ocaml-protoc-plugin/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-protoc-plugin/default.nix
@@ -39,7 +39,7 @@ buildDunePackage rec {
   nativeCheckInputs = [ protobuf ];
 
   meta = {
-    description = "Maps google protobuf compiler to Ocaml types.";
+    description = "Maps google protobuf compiler to Ocaml types";
     homepage = "https://github.com/issuu/ocaml-protoc-plugin";
     license = lib.licenses.asl20;
     longDescription = ''
diff --git a/pkgs/development/ocaml-modules/ppx_deriving/default.nix b/pkgs/development/ocaml-modules/ppx_deriving/default.nix
index 314f52f40fc0a..1e79e8a1ffa88 100644
--- a/pkgs/development/ocaml-modules/ppx_deriving/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_deriving/default.nix
@@ -51,7 +51,7 @@ buildDunePackage rec {
   ];
 
   meta = with lib; {
-    description = "deriving is a library simplifying type-driven code generation on OCaml >=4.02.";
+    description = "deriving is a library simplifying type-driven code generation on OCaml >=4.02";
     maintainers = [ maintainers.maurer ];
     license = licenses.mit;
   };
diff --git a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
index 1da8a55225c22..a1743949054eb 100644
--- a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix
@@ -16,7 +16,7 @@ buildDunePackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/flowtype/ocaml-ppx_gen_rec";
-    description = "A ppx rewriter that transforms a recursive module expression into a struct.";
+    description = "A ppx rewriter that transforms a recursive module expression into a struct";
     license = licenses.mit;
     maintainers = with maintainers; [ frontsideair ];
   };
diff --git a/pkgs/development/ocaml-modules/wtf8/default.nix b/pkgs/development/ocaml-modules/wtf8/default.nix
index fec6c433604eb..bc071f9305f80 100644
--- a/pkgs/development/ocaml-modules/wtf8/default.nix
+++ b/pkgs/development/ocaml-modules/wtf8/default.nix
@@ -15,7 +15,7 @@ buildDunePackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/flowtype/ocaml-wtf8";
-    description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates.";
+    description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates";
     license = licenses.mit;
     maintainers = [ maintainers.eqyiel ];
   };
diff --git a/pkgs/development/php-packages/grpc/default.nix b/pkgs/development/php-packages/grpc/default.nix
index 5dcd2a4a33ef3..c501418993b6d 100644
--- a/pkgs/development/php-packages/grpc/default.nix
+++ b/pkgs/development/php-packages/grpc/default.nix
@@ -22,7 +22,7 @@ buildPecl {
   doCheck = true;
 
   meta = {
-    description = "A high performance, open source, general RPC framework that puts mobile and HTTP/2 first.";
+    description = "A high performance, open source, general RPC framework that puts mobile and HTTP/2 first";
     homepage = "https://github.com/grpc/grpc/tree/master/src/php/ext/grpc";
     license = lib.licenses.asl20;
     maintainers = lib.teams.php.members;
diff --git a/pkgs/development/php-packages/pcov/default.nix b/pkgs/development/php-packages/pcov/default.nix
index ccce782c168ab..325f968e2f6b5 100644
--- a/pkgs/development/php-packages/pcov/default.nix
+++ b/pkgs/development/php-packages/pcov/default.nix
@@ -24,7 +24,7 @@ buildPecl {
 
   meta = with lib; {
     changelog = "https://github.com/krakjoe/pcov/releases/tag/v${version}";
-    description = "A self contained php-code-coverage compatible driver for PHP.";
+    description = "A self contained php-code-coverage compatible driver for PHP";
     license = licenses.php301;
     homepage = "https://github.com/krakjoe/pcov";
     maintainers = teams.php.members;
diff --git a/pkgs/development/php-packages/phalcon/default.nix b/pkgs/development/php-packages/phalcon/default.nix
index 09d35a40f0a3f..86252ec028e0a 100644
--- a/pkgs/development/php-packages/phalcon/default.nix
+++ b/pkgs/development/php-packages/phalcon/default.nix
@@ -29,7 +29,7 @@ buildPecl rec {
   sourceRoot = "${src.name}/build/phalcon";
 
   meta = with lib; {
-    description = "Phalcon is a full stack PHP framework offering low resource consumption and high performance.";
+    description = "Phalcon is a full stack PHP framework offering low resource consumption and high performance";
     license = licenses.bsd3;
     homepage = "https://phalcon.io";
     maintainers = teams.php.members ++ [ maintainers.krzaczek ];
diff --git a/pkgs/development/php-packages/protobuf/default.nix b/pkgs/development/php-packages/protobuf/default.nix
index 4d84d91832143..2ce7b4e374556 100644
--- a/pkgs/development/php-packages/protobuf/default.nix
+++ b/pkgs/development/php-packages/protobuf/default.nix
@@ -13,7 +13,7 @@ buildPecl {
   buildInputs = [ pcre2 ];
 
   meta = with lib; {
-    description = "Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.";
+    description = "Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data";
     license = licenses.bsd3;
     homepage = "https://developers.google.com/protocol-buffers/";
     maintainers = teams.php.members;
diff --git a/pkgs/development/php-packages/psysh/default.nix b/pkgs/development/php-packages/psysh/default.nix
index 1e75910a496c6..6bcb55ebb712a 100644
--- a/pkgs/development/php-packages/psysh/default.nix
+++ b/pkgs/development/php-packages/psysh/default.nix
@@ -20,7 +20,7 @@ php.buildComposerProject (finalAttrs: {
 
   meta = {
     changelog = "https://github.com/bobthecow/psysh/releases/tag/v${finalAttrs.version}";
-    description = "PsySH is a runtime developer console, interactive debugger and REPL for PHP.";
+    description = "PsySH is a runtime developer console, interactive debugger and REPL for PHP";
     mainProgram = "psysh";
     license = lib.licenses.mit;
     homepage = "https://psysh.org/";
diff --git a/pkgs/development/php-packages/vld/default.nix b/pkgs/development/php-packages/vld/default.nix
index 6ae6a60005f2c..d980ecd839416 100644
--- a/pkgs/development/php-packages/vld/default.nix
+++ b/pkgs/development/php-packages/vld/default.nix
@@ -24,7 +24,7 @@ buildPecl {
 
   meta = {
     changelog = "https://github.com/derickr/vld/releases/tag/${version}";
-    description = "The Vulcan Logic Dumper hooks into the Zend Engine and dumps all the opcodes (execution units) of a script.";
+    description = "The Vulcan Logic Dumper hooks into the Zend Engine and dumps all the opcodes (execution units) of a script";
     homepage = "https://github.com/derickr/vld";
     license = lib.licenses.bsd2;
     maintainers = with lib.maintainers; [ gaelreyrol ];
diff --git a/pkgs/development/python-modules/agate-sql/default.nix b/pkgs/development/python-modules/agate-sql/default.nix
index e0449f27c0f7b..7d357f49ff105 100644
--- a/pkgs/development/python-modules/agate-sql/default.nix
+++ b/pkgs/development/python-modules/agate-sql/default.nix
@@ -36,7 +36,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "agatesql" ];
 
   meta = with lib; {
-    description = "Adds SQL read/write support to agate.";
+    description = "Adds SQL read/write support to agate";
     homepage = "https://github.com/wireservice/agate-sql";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ vrthra ];
diff --git a/pkgs/development/python-modules/agent-py/default.nix b/pkgs/development/python-modules/agent-py/default.nix
index 3bcb124337b0b..7107829b8f6a0 100644
--- a/pkgs/development/python-modules/agent-py/default.nix
+++ b/pkgs/development/python-modules/agent-py/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "A python wrapper around the Agent REST API.";
+    description = "A python wrapper around the Agent REST API";
     homepage = "https://github.com/ispysoftware/agent-py";
     license = licenses.asl20;
     maintainers = with maintainers; [ jamiemagee ];
diff --git a/pkgs/development/python-modules/allure-behave/default.nix b/pkgs/development/python-modules/allure-behave/default.nix
index ed238e86961ba..4b80c97c8777d 100644
--- a/pkgs/development/python-modules/allure-behave/default.nix
+++ b/pkgs/development/python-modules/allure-behave/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Allure behave integration.";
+    description = "Allure behave integration";
     homepage = "https://github.com/allure-framework/allure-python";
     license = licenses.asl20;
     maintainers = with maintainers; [ happysalada ];
diff --git a/pkgs/development/python-modules/altair/default.nix b/pkgs/development/python-modules/altair/default.nix
index 3dd6eca6de469..252ba7a38af66 100644
--- a/pkgs/development/python-modules/altair/default.nix
+++ b/pkgs/development/python-modules/altair/default.nix
@@ -68,7 +68,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A declarative statistical visualization library for Python.";
+    description = "A declarative statistical visualization library for Python";
     homepage = "https://altair-viz.github.io";
     downloadPage = "https://github.com/altair-viz/altair";
     changelog = "https://altair-viz.github.io/releases/changes.html";
diff --git a/pkgs/development/python-modules/ansible-navigator/default.nix b/pkgs/development/python-modules/ansible-navigator/default.nix
index 326d5f51943aa..a646b097a89c9 100644
--- a/pkgs/development/python-modules/ansible-navigator/default.nix
+++ b/pkgs/development/python-modules/ansible-navigator/default.nix
@@ -40,7 +40,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "A text-based user interface (TUI) for Ansible.";
+    description = "A text-based user interface (TUI) for Ansible";
     homepage = "https://ansible.readthedocs.io/projects/navigator/";
     license = licenses.asl20;
     maintainers = with maintainers; [ melkor333 ];
diff --git a/pkgs/development/python-modules/ansible-vault-rw/default.nix b/pkgs/development/python-modules/ansible-vault-rw/default.nix
index 1deb67f015bb9..1a772b3c639f9 100644
--- a/pkgs/development/python-modules/ansible-vault-rw/default.nix
+++ b/pkgs/development/python-modules/ansible-vault-rw/default.nix
@@ -40,7 +40,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [ pytestCheckHook ];
 
   meta = with lib; {
-    description = "This project aim to R/W an ansible-vault yaml file.";
+    description = "This project aim to R/W an ansible-vault yaml file";
     homepage = "https://github.com/tomoh1r/ansible-vault";
     changelog = "https://github.com/tomoh1r/ansible-vault/blob/master/CHANGES.txt";
     license = licenses.gpl3;
diff --git a/pkgs/development/python-modules/ansimarkup/default.nix b/pkgs/development/python-modules/ansimarkup/default.nix
index 06d84f4c6f52e..1753c2f4c987c 100644
--- a/pkgs/development/python-modules/ansimarkup/default.nix
+++ b/pkgs/development/python-modules/ansimarkup/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ansimarkup" ];
 
   meta = with lib; {
-    description = "An XML-like markup for producing colored terminal text.";
+    description = "An XML-like markup for producing colored terminal text";
     homepage = "https://github.com/gvalkov/python-ansimarkup";
     license = licenses.bsd3;
     maintainers = with maintainers; [ cpcloud ];
diff --git a/pkgs/development/python-modules/area/default.nix b/pkgs/development/python-modules/area/default.nix
index d1e072de8d87a..39b0ccd26cc26 100644
--- a/pkgs/development/python-modules/area/default.nix
+++ b/pkgs/development/python-modules/area/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Calculate the area inside of any GeoJSON geometry. This is a port of Mapbox’s geojson-area for Python.";
+    description = "Calculate the area inside of any GeoJSON geometry. This is a port of Mapbox’s geojson-area for Python";
     homepage = "https://github.com/scisco/area";
     license = licenses.bsd2;
   };
diff --git a/pkgs/development/python-modules/aspy-refactor-imports/default.nix b/pkgs/development/python-modules/aspy-refactor-imports/default.nix
index 7271669c8ff31..bcfb80b32e814 100644
--- a/pkgs/development/python-modules/aspy-refactor-imports/default.nix
+++ b/pkgs/development/python-modules/aspy-refactor-imports/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   disabledTests = lib.optionals stdenv.isDarwin [ "test_application_directory_case" ];
 
   meta = with lib; {
-    description = "Utilities for refactoring imports in python-like syntax.";
+    description = "Utilities for refactoring imports in python-like syntax";
     homepage = "https://github.com/asottile/aspy.refactor_imports";
     license = licenses.mit;
     maintainers = with maintainers; [ gador ];
diff --git a/pkgs/development/python-modules/azure-multiapi-storage/default.nix b/pkgs/development/python-modules/azure-multiapi-storage/default.nix
index a3697ae4564d0..d03aaf12f9caf 100644
--- a/pkgs/development/python-modules/azure-multiapi-storage/default.nix
+++ b/pkgs/development/python-modules/azure-multiapi-storage/default.nix
@@ -47,7 +47,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Microsoft Azure Storage Client Library for Python with multi API version support.";
+    description = "Microsoft Azure Storage Client Library for Python with multi API version support";
     homepage = "https://github.com/Azure/azure-sdk-for-python";
     license = licenses.mit;
     maintainers = with maintainers; [ jonringer ];
diff --git a/pkgs/development/python-modules/backports-shutil-get-terminal-size/default.nix b/pkgs/development/python-modules/backports-shutil-get-terminal-size/default.nix
index 644ccaf657dd1..24ab9e08ff568 100644
--- a/pkgs/development/python-modules/backports-shutil-get-terminal-size/default.nix
+++ b/pkgs/development/python-modules/backports-shutil-get-terminal-size/default.nix
@@ -29,7 +29,7 @@ else
     nativeCheckInputs = [ pytest ];
 
     meta = with lib; {
-      description = "A backport of the get_terminal_size function from Python 3.3’s shutil.";
+      description = "A backport of the get_terminal_size function from Python 3.3’s shutil";
       homepage = "https://github.com/chrippa/backports.shutil_get_terminal_size";
       license = with licenses; [ mit ];
       maintainers = teams.sage.members;
diff --git a/pkgs/development/python-modules/bap/default.nix b/pkgs/development/python-modules/bap/default.nix
index 67460f40751bd..f598b1aa7907c 100644
--- a/pkgs/development/python-modules/bap/default.nix
+++ b/pkgs/development/python-modules/bap/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages.";
+    description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages";
     homepage = "https://github.com/BinaryAnalysisPlatform/bap/";
     maintainers = [ maintainers.maurer ];
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/bespon/default.nix b/pkgs/development/python-modules/bespon/default.nix
index 212c32543da7e..2721bd0b4b1dc 100644
--- a/pkgs/development/python-modules/bespon/default.nix
+++ b/pkgs/development/python-modules/bespon/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
 
   pythonImportsCheck = [ "bespon" ];
   meta = with lib; {
-    description = "Encodes and decodes data in the BespON format.";
+    description = "Encodes and decodes data in the BespON format";
     homepage = "https://github.com/gpoore/bespon_py";
     license = licenses.bsd3;
     maintainers = with maintainers; [ synthetica ];
diff --git a/pkgs/development/python-modules/betacode/default.nix b/pkgs/development/python-modules/betacode/default.nix
index 225d7501787d2..c72174308a8b3 100644
--- a/pkgs/development/python-modules/betacode/default.nix
+++ b/pkgs/development/python-modules/betacode/default.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ pygtrie ];
   meta = {
     homepage = "https://github.com/matgrioni/betacode";
-    description = "A small python package to flexibly convert from betacode to unicode and back.";
+    description = "A small python package to flexibly convert from betacode to unicode and back";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ kmein ];
   };
diff --git a/pkgs/development/python-modules/bidict/default.nix b/pkgs/development/python-modules/bidict/default.nix
index 4856e8fa26deb..ffd6f3d153dc6 100644
--- a/pkgs/development/python-modules/bidict/default.nix
+++ b/pkgs/development/python-modules/bidict/default.nix
@@ -48,7 +48,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://bidict.readthedocs.io";
     changelog = "https://bidict.readthedocs.io/changelog.html";
-    description = "The bidirectional mapping library for Python.";
+    description = "The bidirectional mapping library for Python";
     license = licenses.mpl20;
     maintainers = with maintainers; [
       jab
diff --git a/pkgs/development/python-modules/blessed/default.nix b/pkgs/development/python-modules/blessed/default.nix
index e78b9b0975243..ce64357d4b15b 100644
--- a/pkgs/development/python-modules/blessed/default.nix
+++ b/pkgs/development/python-modules/blessed/default.nix
@@ -38,7 +38,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/jquast/blessed";
-    description = "A thin, practical wrapper around terminal capabilities in Python.";
+    description = "A thin, practical wrapper around terminal capabilities in Python";
     maintainers = with maintainers; [ eqyiel ];
     license = licenses.mit;
   };
diff --git a/pkgs/development/python-modules/catkin-pkg/default.nix b/pkgs/development/python-modules/catkin-pkg/default.nix
index c9ddf02b05f47..cc1b3a938c0d9 100644
--- a/pkgs/development/python-modules/catkin-pkg/default.nix
+++ b/pkgs/development/python-modules/catkin-pkg/default.nix
@@ -37,7 +37,7 @@ buildPythonPackage rec {
   disabledTestPaths = [ "test/test_flake8.py" ];
 
   meta = {
-    description = "Library for retrieving information about catkin packages.";
+    description = "Library for retrieving information about catkin packages";
     homepage = "http://wiki.ros.org/catkin_pkg";
     license = lib.licenses.bsd3;
     maintainers = with lib.maintainers; [ jnsgruk ];
diff --git a/pkgs/development/python-modules/chex/default.nix b/pkgs/development/python-modules/chex/default.nix
index b9271d63d29a9..803c352c71549 100644
--- a/pkgs/development/python-modules/chex/default.nix
+++ b/pkgs/development/python-modules/chex/default.nix
@@ -49,7 +49,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Chex is a library of utilities for helping to write reliable JAX code.";
+    description = "Chex is a library of utilities for helping to write reliable JAX code";
     homepage = "https://github.com/deepmind/chex";
     changelog = "https://github.com/google-deepmind/chex/releases/tag/v${version}";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/cleanlab/default.nix b/pkgs/development/python-modules/cleanlab/default.nix
index 1d42c24609f8b..2e9087fdb6121 100644
--- a/pkgs/development/python-modules/cleanlab/default.nix
+++ b/pkgs/development/python-modules/cleanlab/default.nix
@@ -85,7 +85,7 @@ buildPythonPackage rec {
   ];
 
   meta = {
-    description = "The standard data-centric AI package for data quality and machine learning with messy, real-world data and labels.";
+    description = "The standard data-centric AI package for data quality and machine learning with messy, real-world data and labels";
     homepage = "https://github.com/cleanlab/cleanlab";
     changelog = "https://github.com/cleanlab/cleanlab/releases/tag/v${version}";
     license = lib.licenses.agpl3Only;
diff --git a/pkgs/development/python-modules/click-datetime/default.nix b/pkgs/development/python-modules/click-datetime/default.nix
index 54f531693588d..2203bfb829637 100644
--- a/pkgs/development/python-modules/click-datetime/default.nix
+++ b/pkgs/development/python-modules/click-datetime/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "click_datetime" ];
 
   meta = with lib; {
-    description = "Datetime type support for click.";
+    description = "Datetime type support for click";
     homepage = "https://github.com/click-contrib/click-datetime";
     license = licenses.mit;
     maintainers = with maintainers; [ hexa ];
diff --git a/pkgs/development/python-modules/coapthon3/default.nix b/pkgs/development/python-modules/coapthon3/default.nix
index 8d175e419c5b0..b565349584b38 100644
--- a/pkgs/development/python-modules/coapthon3/default.nix
+++ b/pkgs/development/python-modules/coapthon3/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     inherit (src.meta) homepage;
-    description = "Python3 library to the CoAP protocol compliant with the RFC.";
+    description = "Python3 library to the CoAP protocol compliant with the RFC";
     license = licenses.mit;
     maintainers = with maintainers; [ urbas ];
   };
diff --git a/pkgs/development/python-modules/conda-libmamba-solver/default.nix b/pkgs/development/python-modules/conda-libmamba-solver/default.nix
index 050b99fe83b05..68b9d4db091f2 100644
--- a/pkgs/development/python-modules/conda-libmamba-solver/default.nix
+++ b/pkgs/development/python-modules/conda-libmamba-solver/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
   pythonRemoveDeps = [ "conda" ];
 
   meta = {
-    description = "The libmamba based solver for conda.";
+    description = "The libmamba based solver for conda";
     homepage = "https://github.com/conda/conda-libmamba-solver";
     license = lib.licenses.bsd3;
     maintainers = [ lib.maintainers.ericthemagician ];
diff --git a/pkgs/development/python-modules/conda-package-streaming/default.nix b/pkgs/development/python-modules/conda-package-streaming/default.nix
index e849195f8461c..72e234aeda4dc 100644
--- a/pkgs/development/python-modules/conda-package-streaming/default.nix
+++ b/pkgs/development/python-modules/conda-package-streaming/default.nix
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "conda_package_streaming" ];
 
   meta = {
-    description = "An efficient library to read from new and old format .conda and .tar.bz2 conda packages.";
+    description = "An efficient library to read from new and old format .conda and .tar.bz2 conda packages";
     homepage = "https://github.com/conda/conda-package-streaming";
     license = lib.licenses.bsd3;
     maintainers = [ lib.maintainers.ericthemagician ];
diff --git a/pkgs/development/python-modules/configparser/default.nix b/pkgs/development/python-modules/configparser/default.nix
index 644f24a4573a2..a8b4e2002a749 100644
--- a/pkgs/development/python-modules/configparser/default.nix
+++ b/pkgs/development/python-modules/configparser/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Updated configparser from Python 3.7 for Python 2.6+.";
+    description = "Updated configparser from Python 3.7 for Python 2.6+";
     homepage = "https://github.com/jaraco/configparser";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/construct-classes/default.nix b/pkgs/development/python-modules/construct-classes/default.nix
index e9daba610be8b..14026a1957f1e 100644
--- a/pkgs/development/python-modules/construct-classes/default.nix
+++ b/pkgs/development/python-modules/construct-classes/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "construct_classes" ];
 
   meta = with lib; {
-    description = "Parse your binary data into dataclasses.";
+    description = "Parse your binary data into dataclasses";
     homepage = "https://github.com/matejcik/construct-classes";
     license = licenses.mit;
     maintainers = with maintainers; [ prusnak ];
diff --git a/pkgs/development/python-modules/criticality-score/default.nix b/pkgs/development/python-modules/criticality-score/default.nix
index 41b6b301f370e..dba803fe81279 100644
--- a/pkgs/development/python-modules/criticality-score/default.nix
+++ b/pkgs/development/python-modules/criticality-score/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "criticality_score" ];
 
   meta = with lib; {
-    description = "Python tool for computing the Open Source Project Criticality Score.";
+    description = "Python tool for computing the Open Source Project Criticality Score";
     mainProgram = "criticality_score";
     homepage = "https://github.com/ossf/criticality_score";
     changelog = "https://github.com/ossf/criticality_score/releases/tag/v${version}";
diff --git a/pkgs/development/python-modules/dateutils/default.nix b/pkgs/development/python-modules/dateutils/default.nix
index 00fdccfffe8b2..9dbe3654a4019 100644
--- a/pkgs/development/python-modules/dateutils/default.nix
+++ b/pkgs/development/python-modules/dateutils/default.nix
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "dateutils" ];
 
   meta = with lib; {
-    description = "Utilities for working with datetime objects.";
+    description = "Utilities for working with datetime objects";
     homepage = "https://github.com/jmcantrell/python-dateutils";
     license = licenses.bsd0;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/deepdish/default.nix b/pkgs/development/python-modules/deepdish/default.nix
index 419a338d31cf0..04062db872a79 100644
--- a/pkgs/development/python-modules/deepdish/default.nix
+++ b/pkgs/development/python-modules/deepdish/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Flexible HDF5 saving/loading and other data science tools from the University of Chicago.";
+    description = "Flexible HDF5 saving/loading and other data science tools from the University of Chicago";
     mainProgram = "ddls";
     homepage = "https://github.com/uchicago-cs/deepdish";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/deepmerge/default.nix b/pkgs/development/python-modules/deepmerge/default.nix
index eb60165178403..48706d5b4c012 100644
--- a/pkgs/development/python-modules/deepmerge/default.nix
+++ b/pkgs/development/python-modules/deepmerge/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     changelog = "https://github.com/toumorokoshi/deepmerge/releases/tag/v${version}";
-    description = "A toolset to deeply merge python dictionaries.";
+    description = "A toolset to deeply merge python dictionaries";
     downloadPage = "https://github.com/toumorokoshi/deepmerge";
     homepage = "http://deepmerge.readthedocs.io/en/latest/";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/distro/default.nix b/pkgs/development/python-modules/distro/default.nix
index d32e5cac5d124..9c4a7a9e70ab3 100644
--- a/pkgs/development/python-modules/distro/default.nix
+++ b/pkgs/development/python-modules/distro/default.nix
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/nir0s/distro";
-    description = "Linux Distribution - a Linux OS platform information API.";
+    description = "Linux Distribution - a Linux OS platform information API";
     mainProgram = "distro";
     license = licenses.asl20;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/django-crispy-forms/default.nix b/pkgs/development/python-modules/django-crispy-forms/default.nix
index 8fbda6206e7c6..cc8191f34d9ab 100644
--- a/pkgs/development/python-modules/django-crispy-forms/default.nix
+++ b/pkgs/development/python-modules/django-crispy-forms/default.nix
@@ -41,7 +41,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "crispy_forms" ];
 
   meta = with lib; {
-    description = "The best way to have DRY Django forms.";
+    description = "The best way to have DRY Django forms";
     homepage = "https://django-crispy-forms.readthedocs.io/en/latest/";
     license = licenses.mit;
     maintainers = with maintainers; [ ambroisie ];
diff --git a/pkgs/development/python-modules/django-markup/default.nix b/pkgs/development/python-modules/django-markup/default.nix
index c67cab8ad47a5..6d7dd7f594535 100644
--- a/pkgs/development/python-modules/django-markup/default.nix
+++ b/pkgs/development/python-modules/django-markup/default.nix
@@ -61,7 +61,7 @@ buildPythonPackage rec {
   env.DJANGO_SETTINGS_MODULE = "django_markup.tests";
 
   meta = with lib; {
-    description = "Generic Django application to convert text with specific markup to html.";
+    description = "Generic Django application to convert text with specific markup to html";
     homepage = "https://github.com/bartTC/django-markup";
     changelog = "https://github.com/bartTC/django-markup/blob/v${version}/CHANGELOG.rst";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/django-payments/default.nix b/pkgs/development/python-modules/django-payments/default.nix
index da8d85d1a3228..714bc0253bfec 100644
--- a/pkgs/development/python-modules/django-payments/default.nix
+++ b/pkgs/development/python-modules/django-payments/default.nix
@@ -67,7 +67,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "Universal payment handling for Django.";
+    description = "Universal payment handling for Django";
     homepage = "https://github.com/jazzband/django-payments/";
     changelog = "https://github.com/jazzband/django-payments/releases/tag/v${version}";
     license = licenses.bsd3;
diff --git a/pkgs/development/python-modules/django-pglocks/default.nix b/pkgs/development/python-modules/django-pglocks/default.nix
index 4bea472194123..0142c0d5bcef4 100644
--- a/pkgs/development/python-modules/django-pglocks/default.nix
+++ b/pkgs/development/python-modules/django-pglocks/default.nix
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   format = "setuptools";
 
   meta = {
-    description = "PostgreSQL locking context managers and functions for Django.";
+    description = "PostgreSQL locking context managers and functions for Django";
     homepage = "https://github.com/Xof/django-pglocks";
     license = lib.licenses.mit;
   };
diff --git a/pkgs/development/python-modules/django/4.nix b/pkgs/development/python-modules/django/4.nix
index 11a2c7821c63f..10412c1f1b72b 100644
--- a/pkgs/development/python-modules/django/4.nix
+++ b/pkgs/development/python-modules/django/4.nix
@@ -142,7 +142,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     changelog = "https://docs.djangoproject.com/en/${lib.versions.majorMinor version}/releases/${version}/";
-    description = "A high-level Python Web framework that encourages rapid development and clean, pragmatic design.";
+    description = "A high-level Python Web framework that encourages rapid development and clean, pragmatic design";
     mainProgram = "django-admin";
     homepage = "https://www.djangoproject.com";
     license = licenses.bsd3;
diff --git a/pkgs/development/python-modules/django/5.nix b/pkgs/development/python-modules/django/5.nix
index 233fa75322359..3d34144d5a590 100644
--- a/pkgs/development/python-modules/django/5.nix
+++ b/pkgs/development/python-modules/django/5.nix
@@ -143,7 +143,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     changelog = "https://docs.djangoproject.com/en/${lib.versions.majorMinor version}/releases/${version}/";
-    description = "A high-level Python Web framework that encourages rapid development and clean, pragmatic design.";
+    description = "A high-level Python Web framework that encourages rapid development and clean, pragmatic design";
     homepage = "https://www.djangoproject.com";
     license = licenses.bsd3;
     maintainers = with maintainers; [ hexa ];
diff --git a/pkgs/development/python-modules/dm-haiku/default.nix b/pkgs/development/python-modules/dm-haiku/default.nix
index 21afa6fda3d7c..e5f44feb69c56 100644
--- a/pkgs/development/python-modules/dm-haiku/default.nix
+++ b/pkgs/development/python-modules/dm-haiku/default.nix
@@ -107,7 +107,7 @@ let
     });
 
     meta = with lib; {
-      description = "Haiku is a simple neural network library for JAX developed by some of the authors of Sonnet.";
+      description = "Haiku is a simple neural network library for JAX developed by some of the authors of Sonnet";
       homepage = "https://github.com/deepmind/dm-haiku";
       license = licenses.asl20;
       maintainers = with maintainers; [ ndl ];
diff --git a/pkgs/development/python-modules/dm-tree/default.nix b/pkgs/development/python-modules/dm-tree/default.nix
index 27befa4f77269..0cf64bc5da029 100644
--- a/pkgs/development/python-modules/dm-tree/default.nix
+++ b/pkgs/development/python-modules/dm-tree/default.nix
@@ -49,7 +49,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     broken = stdenv.isDarwin;
-    description = "Tree is a library for working with nested data structures.";
+    description = "Tree is a library for working with nested data structures";
     homepage = "https://github.com/deepmind/tree";
     license = licenses.asl20;
     maintainers = with maintainers; [
diff --git a/pkgs/development/python-modules/docker-pycreds/default.nix b/pkgs/development/python-modules/docker-pycreds/default.nix
index ba6789aae7f5e..16b8a420f4a7f 100644
--- a/pkgs/development/python-modules/docker-pycreds/default.nix
+++ b/pkgs/development/python-modules/docker-pycreds/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ six ];
 
   meta = with lib; {
-    description = "Python bindings for the docker credentials store API.";
+    description = "Python bindings for the docker credentials store API";
     homepage = "https://github.com/shin-/dockerpy-creds";
     license = licenses.asl20;
   };
diff --git a/pkgs/development/python-modules/empy/default.nix b/pkgs/development/python-modules/empy/default.nix
index de755cd5ac738..77d530f86c5d0 100644
--- a/pkgs/development/python-modules/empy/default.nix
+++ b/pkgs/development/python-modules/empy/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "em" ];
   meta = with lib; {
     homepage = "http://www.alcyone.com/software/empy/";
-    description = "A templating system for Python.";
+    description = "A templating system for Python";
     mainProgram = "em.py";
     maintainers = with maintainers; [ nkalupahana ];
     license = licenses.lgpl21Only;
diff --git a/pkgs/development/python-modules/etesync/default.nix b/pkgs/development/python-modules/etesync/default.nix
index 95a7057eb1e2e..6d16ca6c1f84e 100644
--- a/pkgs/development/python-modules/etesync/default.nix
+++ b/pkgs/development/python-modules/etesync/default.nix
@@ -67,7 +67,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://www.etesync.com/";
-    description = "A python API to interact with an EteSync server.";
+    description = "A python API to interact with an EteSync server";
     license = licenses.lgpl3;
     maintainers = with maintainers; [ valodim ];
   };
diff --git a/pkgs/development/python-modules/euclid3/default.nix b/pkgs/development/python-modules/euclid3/default.nix
index f07fe9f9ac526..f929b4b7c0a1b 100644
--- a/pkgs/development/python-modules/euclid3/default.nix
+++ b/pkgs/development/python-modules/euclid3/default.nix
@@ -16,7 +16,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "euclid3" ];
 
   meta = with lib; {
-    description = "2D and 3D vector, matrix, quaternion and geometry module.";
+    description = "2D and 3D vector, matrix, quaternion and geometry module";
     homepage = "http://code.google.com/p/pyeuclid/";
     license = licenses.lgpl21Plus;
     maintainers = with maintainers; [
diff --git a/pkgs/development/python-modules/eval-type-backport/default.nix b/pkgs/development/python-modules/eval-type-backport/default.nix
index 537d540928728..d74d24b58ac0e 100644
--- a/pkgs/development/python-modules/eval-type-backport/default.nix
+++ b/pkgs/development/python-modules/eval-type-backport/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [ pytestCheckHook ];
 
   meta = {
-    description = "Like `typing._eval_type`, but lets older Python versions use newer typing features.";
+    description = "Like `typing._eval_type`, but lets older Python versions use newer typing features";
     homepage = "https://github.com/alexmojaki/eval_type_backport";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ perchun ];
diff --git a/pkgs/development/python-modules/experiment-utilities/default.nix b/pkgs/development/python-modules/experiment-utilities/default.nix
index 918114789b4db..816133f0b4a4b 100644
--- a/pkgs/development/python-modules/experiment-utilities/default.nix
+++ b/pkgs/development/python-modules/experiment-utilities/default.nix
@@ -63,7 +63,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "exputils" ];
 
   meta = with lib; {
-    description = "Various tools to run scientific computer experiments.";
+    description = "Various tools to run scientific computer experiments";
     homepage = "https://gitlab.inria.fr/creinke/exputils";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ GaetanLepage ];
diff --git a/pkgs/development/python-modules/feedgen/default.nix b/pkgs/development/python-modules/feedgen/default.nix
index 6a4526ff9e731..5dba169171d6b 100644
--- a/pkgs/development/python-modules/feedgen/default.nix
+++ b/pkgs/development/python-modules/feedgen/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Python module to generate ATOM feeds, RSS feeds and Podcasts.";
+    description = "Python module to generate ATOM feeds, RSS feeds and Podcasts";
     downloadPage = "https://github.com/lkiesow/python-feedgen/releases";
     homepage = "https://github.com/lkiesow/python-feedgen";
     license = with licenses; [
diff --git a/pkgs/development/python-modules/flask-bootstrap/default.nix b/pkgs/development/python-modules/flask-bootstrap/default.nix
index e994f021c068c..a34a1c2673b36 100644
--- a/pkgs/development/python-modules/flask-bootstrap/default.nix
+++ b/pkgs/development/python-modules/flask-bootstrap/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/mbr/flask-bootstrap";
-    description = "Ready-to-use Twitter-bootstrap for use in Flask.";
+    description = "Ready-to-use Twitter-bootstrap for use in Flask";
     license = licenses.asl20;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/development/python-modules/flask-expects-json/default.nix b/pkgs/development/python-modules/flask-expects-json/default.nix
index ed9e3c89844bc..a0598642d4971 100644
--- a/pkgs/development/python-modules/flask-expects-json/default.nix
+++ b/pkgs/development/python-modules/flask-expects-json/default.nix
@@ -43,7 +43,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/fischerfredl/flask-expects-json";
-    description = "Decorator for REST endpoints in flask. Validate JSON request data.";
+    description = "Decorator for REST endpoints in flask. Validate JSON request data";
     license = licenses.mit;
     maintainers = [ ];
   };
diff --git a/pkgs/development/python-modules/flask-mailman/default.nix b/pkgs/development/python-modules/flask-mailman/default.nix
index a3c1c3361f141..5727fd016da0f 100644
--- a/pkgs/development/python-modules/flask-mailman/default.nix
+++ b/pkgs/development/python-modules/flask-mailman/default.nix
@@ -36,7 +36,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/waynerv/flask-mailman";
-    description = "Flask extension providing simple email sending capabilities.";
+    description = "Flask extension providing simple email sending capabilities";
     license = licenses.bsd3;
     maintainers = with maintainers; [ gador ];
   };
diff --git a/pkgs/development/python-modules/flask-wtf/default.nix b/pkgs/development/python-modules/flask-wtf/default.nix
index e96119eee554c..487c2c997b8ee 100644
--- a/pkgs/development/python-modules/flask-wtf/default.nix
+++ b/pkgs/development/python-modules/flask-wtf/default.nix
@@ -48,7 +48,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Simple integration of Flask and WTForms.";
+    description = "Simple integration of Flask and WTForms";
     license = licenses.bsd3;
     maintainers = with maintainers; [
       mic92
diff --git a/pkgs/development/python-modules/flit-scm/default.nix b/pkgs/development/python-modules/flit-scm/default.nix
index 6b4bf17ca8bef..c85d864401c00 100644
--- a/pkgs/development/python-modules/flit-scm/default.nix
+++ b/pkgs/development/python-modules/flit-scm/default.nix
@@ -35,7 +35,7 @@ buildPythonPackage rec {
   doCheck = false; # no tests
 
   meta = with lib; {
-    description = "A PEP 518 build backend that uses setuptools_scm to generate a version file from your version control system, then flit to build the package.";
+    description = "A PEP 518 build backend that uses setuptools_scm to generate a version file from your version control system, then flit to build the package";
     homepage = "https://gitlab.com/WillDaSilva/flit_scm";
     license = licenses.mit;
     maintainers = with maintainers; [ cpcloud ];
diff --git a/pkgs/development/python-modules/fontparts/default.nix b/pkgs/development/python-modules/fontparts/default.nix
index 2b98523b7eb43..7ee70f791d1bb 100644
--- a/pkgs/development/python-modules/fontparts/default.nix
+++ b/pkgs/development/python-modules/fontparts/default.nix
@@ -66,7 +66,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "An API for interacting with the parts of fonts during the font development process.";
+    description = "An API for interacting with the parts of fonts during the font development process";
     homepage = "https://github.com/robotools/fontParts";
     changelog = "https://github.com/robotools/fontParts/releases/tag/${version}";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/ghdiff/default.nix b/pkgs/development/python-modules/ghdiff/default.nix
index 6d80f36d6df09..6930655869d08 100644
--- a/pkgs/development/python-modules/ghdiff/default.nix
+++ b/pkgs/development/python-modules/ghdiff/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://github.com/kilink/ghdiff";
     license = licenses.mit;
-    description = "Generate Github-style HTML for unified diffs.";
+    description = "Generate Github-style HTML for unified diffs";
     mainProgram = "ghdiff";
     maintainers = [ maintainers.mic92 ];
   };
diff --git a/pkgs/development/python-modules/gin-config/default.nix b/pkgs/development/python-modules/gin-config/default.nix
index 6f1dad68d0772..a64a1683d3730 100644
--- a/pkgs/development/python-modules/gin-config/default.nix
+++ b/pkgs/development/python-modules/gin-config/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/google/gin-config";
-    description = "Gin provides a lightweight configuration framework for Python, based on dependency injection.";
+    description = "Gin provides a lightweight configuration framework for Python, based on dependency injection";
     license = licenses.asl20;
     maintainers = with maintainers; [ jethro ];
   };
diff --git a/pkgs/development/python-modules/grad-cam/default.nix b/pkgs/development/python-modules/grad-cam/default.nix
index 261f636fb3196..8e2c61075d98b 100644
--- a/pkgs/development/python-modules/grad-cam/default.nix
+++ b/pkgs/development/python-modules/grad-cam/default.nix
@@ -72,7 +72,7 @@ buildPythonPackage rec {
   ];
 
   meta = {
-    description = "Advanced AI explainability for computer vision.";
+    description = "Advanced AI explainability for computer vision";
     homepage = "https://jacobgil.github.io/pytorch-gradcam-book";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ bcdarwin ];
diff --git a/pkgs/development/python-modules/halo/default.nix b/pkgs/development/python-modules/halo/default.nix
index 939f55be774a3..a2372b73eb4cc 100644
--- a/pkgs/development/python-modules/halo/default.nix
+++ b/pkgs/development/python-modules/halo/default.nix
@@ -34,7 +34,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "halo" ];
 
   meta = with lib; {
-    description = "Beautiful Spinners for Terminal, IPython and Jupyter.";
+    description = "Beautiful Spinners for Terminal, IPython and Jupyter";
     homepage = "https://github.com/manrajgrover/halo";
     license = licenses.mit;
     maintainers = with maintainers; [ urbas ];
diff --git a/pkgs/development/python-modules/heapdict/default.nix b/pkgs/development/python-modules/heapdict/default.nix
index f503f8d5e2b03..658d94aae9272 100644
--- a/pkgs/development/python-modules/heapdict/default.nix
+++ b/pkgs/development/python-modules/heapdict/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   doCheck = !isPy3k;
 
   meta = with lib; {
-    description = "a heap with decrease-key and increase-key operations.";
+    description = "a heap with decrease-key and increase-key operations";
     homepage = "http://stutzbachenterprises.com";
     license = licenses.bsd3;
     maintainers = with maintainers; [ teh ];
diff --git a/pkgs/development/python-modules/hole/default.nix b/pkgs/development/python-modules/hole/default.nix
index 1558036c2149d..0f4b1aef89e26 100644
--- a/pkgs/development/python-modules/hole/default.nix
+++ b/pkgs/development/python-modules/hole/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "hole" ];
 
   meta = with lib; {
-    description = "Python API for interacting with a Pihole instance.";
+    description = "Python API for interacting with a Pihole instance";
     homepage = "https://github.com/home-assistant-ecosystem/python-hole";
     changelog = "https://github.com/home-assistant-ecosystem/python-hole/releases/tag/${version}";
     license = with licenses; [ mit ];
diff --git a/pkgs/development/python-modules/infinity/default.nix b/pkgs/development/python-modules/infinity/default.nix
index d86f1545d90b4..a2f24331a697c 100644
--- a/pkgs/development/python-modules/infinity/default.nix
+++ b/pkgs/development/python-modules/infinity/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "All-in-one infinity value for Python. Can be compared to any object.";
+    description = "All-in-one infinity value for Python. Can be compared to any object";
     homepage = "https://github.com/kvesteri/infinity";
     license = licenses.bsd3;
     maintainers = with maintainers; [ mupdt ];
diff --git a/pkgs/development/python-modules/iocapture/default.nix b/pkgs/development/python-modules/iocapture/default.nix
index 3263f2ef48918..a36a01eeeead9 100644
--- a/pkgs/development/python-modules/iocapture/default.nix
+++ b/pkgs/development/python-modules/iocapture/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Capture stdout, stderr easily.";
+    description = "Capture stdout, stderr easily";
     homepage = "https://github.com/oinume/iocapture";
     license = licenses.mit;
   };
diff --git a/pkgs/development/python-modules/iopath/default.nix b/pkgs/development/python-modules/iopath/default.nix
index a5f6d75c9e930..6fccc95584ab9 100644
--- a/pkgs/development/python-modules/iopath/default.nix
+++ b/pkgs/development/python-modules/iopath/default.nix
@@ -58,7 +58,7 @@ buildPythonPackage {
   };
 
   meta = with lib; {
-    description = "A python library that provides common I/O interface across different storage backends.";
+    description = "A python library that provides common I/O interface across different storage backends";
     homepage = "https://github.com/facebookresearch/iopath";
     changelog = "https://github.com/facebookresearch/iopath/releases/tag/v${version}";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/ipython-sql/default.nix b/pkgs/development/python-modules/ipython-sql/default.nix
index 9cdd6bc95a045..a65eac31eb3c4 100644
--- a/pkgs/development/python-modules/ipython-sql/default.nix
+++ b/pkgs/development/python-modules/ipython-sql/default.nix
@@ -38,7 +38,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "sql" ];
 
   meta = with lib; {
-    description = "Introduces a %sql (or %%sql) magic.";
+    description = "Introduces a %sql (or %%sql) magic";
     homepage = "https://github.com/catherinedevlin/ipython-sql";
     license = licenses.mit;
     maintainers = with maintainers; [ cpcloud ];
diff --git a/pkgs/development/python-modules/ipyvuetify/default.nix b/pkgs/development/python-modules/ipyvuetify/default.nix
index a3d1e02ae8a44..63e3d23c433a4 100644
--- a/pkgs/development/python-modules/ipyvuetify/default.nix
+++ b/pkgs/development/python-modules/ipyvuetify/default.nix
@@ -47,7 +47,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ipyvuetify" ];
 
   meta = with lib; {
-    description = "Jupyter widgets based on Vuetify UI Components.";
+    description = "Jupyter widgets based on Vuetify UI Components";
     homepage = "https://github.com/mariobuikhuizen/ipyvuetify";
     license = licenses.mit;
     maintainers = with maintainers; [ drewrisinger ];
diff --git a/pkgs/development/python-modules/jaxlib/default.nix b/pkgs/development/python-modules/jaxlib/default.nix
index 8366f11d8a268..c16aac4841d3b 100644
--- a/pkgs/development/python-modules/jaxlib/default.nix
+++ b/pkgs/development/python-modules/jaxlib/default.nix
@@ -68,7 +68,7 @@ let
   effectiveStdenv = if cudaSupport then cudaPackages.backendStdenv else inputs.stdenv;
 
   meta = with lib; {
-    description = "JAX is Autograd and XLA, brought together for high-performance machine learning research.";
+    description = "JAX is Autograd and XLA, brought together for high-performance machine learning research";
     homepage = "https://github.com/google/jax";
     license = licenses.asl20;
     maintainers = with maintainers; [ ndl ];
diff --git a/pkgs/development/python-modules/jmp/default.nix b/pkgs/development/python-modules/jmp/default.nix
index 40f267d61f004..b0ec259f0723c 100644
--- a/pkgs/development/python-modules/jmp/default.nix
+++ b/pkgs/development/python-modules/jmp/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "This library implements support for mixed precision training in JAX.";
+    description = "This library implements support for mixed precision training in JAX";
     homepage = "https://github.com/deepmind/jmp";
     license = licenses.asl20;
     maintainers = with maintainers; [ ndl ];
diff --git a/pkgs/development/python-modules/kivy-garden/default.nix b/pkgs/development/python-modules/kivy-garden/default.nix
index 981586f4513cc..cc78c53125eb2 100644
--- a/pkgs/development/python-modules/kivy-garden/default.nix
+++ b/pkgs/development/python-modules/kivy-garden/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "The kivy garden installation script, split into its own package for convenient use in buildozer.";
+    description = "The kivy garden installation script, split into its own package for convenient use in buildozer";
     homepage = "https://github.com/kivy-garden/garden";
     license = licenses.mit;
     maintainers = with maintainers; [ risson ];
diff --git a/pkgs/development/python-modules/kivy/default.nix b/pkgs/development/python-modules/kivy/default.nix
index a4a5da1640a6a..f71c8288c74eb 100644
--- a/pkgs/development/python-modules/kivy/default.nix
+++ b/pkgs/development/python-modules/kivy/default.nix
@@ -99,7 +99,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "kivy" ];
 
   meta = with lib; {
-    description = "Library for rapid development of hardware-accelerated multitouch applications.";
+    description = "Library for rapid development of hardware-accelerated multitouch applications";
     homepage = "https://pypi.python.org/pypi/kivy";
     license = licenses.mit;
     maintainers = with maintainers; [ risson ];
diff --git a/pkgs/development/python-modules/korean-lunar-calendar/default.nix b/pkgs/development/python-modules/korean-lunar-calendar/default.nix
index 92d725b150dde..8b5b60d24abdf 100644
--- a/pkgs/development/python-modules/korean-lunar-calendar/default.nix
+++ b/pkgs/development/python-modules/korean-lunar-calendar/default.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "korean_lunar_calendar" ];
 
   meta = with lib; {
-    description = "A library to convert Korean lunar-calendar to Gregorian calendar.";
+    description = "A library to convert Korean lunar-calendar to Gregorian calendar";
     homepage = "https://github.com/usingsky/korean_lunar_calendar_py";
     license = licenses.mit;
     maintainers = [ maintainers.ris ];
diff --git a/pkgs/development/python-modules/lazy-imports/default.nix b/pkgs/development/python-modules/lazy-imports/default.nix
index f52e2cc7e0938..4efed32b70d66 100644
--- a/pkgs/development/python-modules/lazy-imports/default.nix
+++ b/pkgs/development/python-modules/lazy-imports/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage {
   ];
 
   meta = with lib; {
-    description = "Python tool to support lazy imports.";
+    description = "Python tool to support lazy imports";
     homepage = "https://github.com/telekom/lazy-imports";
     changelog = "https://github.com/telekom/lazy-imports/releases/tag/${version}";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/ledger-bitcoin/default.nix b/pkgs/development/python-modules/ledger-bitcoin/default.nix
index 3387a40cb2361..fc22db58923b0 100644
--- a/pkgs/development/python-modules/ledger-bitcoin/default.nix
+++ b/pkgs/development/python-modules/ledger-bitcoin/default.nix
@@ -34,7 +34,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ledger_bitcoin" ];
 
   meta = with lib; {
-    description = "Client library for Ledger Bitcoin application.";
+    description = "Client library for Ledger Bitcoin application";
     homepage = "https://github.com/LedgerHQ/app-bitcoin-new/tree/develop/bitcoin_client/ledger_bitcoin";
     license = licenses.asl20;
   };
diff --git a/pkgs/development/python-modules/ledgercomm/default.nix b/pkgs/development/python-modules/ledgercomm/default.nix
index bf76775467b48..b23b296385586 100644
--- a/pkgs/development/python-modules/ledgercomm/default.nix
+++ b/pkgs/development/python-modules/ledgercomm/default.nix
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ledgercomm" ];
 
   meta = with lib; {
-    description = "Python library to send and receive APDU through HID or TCP socket. It can be used with a Ledger Nano S/X or with the Speculos emulator.";
+    description = "Python library to send and receive APDU through HID or TCP socket. It can be used with a Ledger Nano S/X or with the Speculos emulator";
     mainProgram = "ledgercomm-send";
     homepage = "https://github.com/LedgerHQ/ledgercomm";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/libgpuarray/default.nix b/pkgs/development/python-modules/libgpuarray/default.nix
index d8518f30a0ae7..7645f8bc74276 100644
--- a/pkgs/development/python-modules/libgpuarray/default.nix
+++ b/pkgs/development/python-modules/libgpuarray/default.nix
@@ -86,7 +86,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/Theano/libgpuarray";
-    description = "Library to manipulate tensors on GPU.";
+    description = "Library to manipulate tensors on GPU";
     license = licenses.free;
     maintainers = with maintainers; [ artuuge ];
     platforms = platforms.unix;
diff --git a/pkgs/development/python-modules/lima/default.nix b/pkgs/development/python-modules/lima/default.nix
index 37c1fda1a41dc..76a47923b7795 100644
--- a/pkgs/development/python-modules/lima/default.nix
+++ b/pkgs/development/python-modules/lima/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [ pytestCheckHook ];
 
   meta = with lib; {
-    description = "Lightweight Marshalling of Python 3 Objects.";
+    description = "Lightweight Marshalling of Python 3 Objects";
     homepage = "https://github.com/b6d/lima";
     license = licenses.mit;
     maintainers = with maintainers; [ zhaofengli ];
diff --git a/pkgs/development/python-modules/log-symbols/default.nix b/pkgs/development/python-modules/log-symbols/default.nix
index 3387508d87448..d479c450aaf72 100644
--- a/pkgs/development/python-modules/log-symbols/default.nix
+++ b/pkgs/development/python-modules/log-symbols/default.nix
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "log_symbols" ];
 
   meta = with lib; {
-    description = "Colored Symbols for Various Log Levels.";
+    description = "Colored Symbols for Various Log Levels";
     homepage = "https://github.com/manrajgrover/py-log-symbols";
     license = licenses.mit;
     maintainers = with maintainers; [ urbas ];
diff --git a/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix b/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix
index 61e7408c96ad6..7787892efdaa9 100644
--- a/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix
+++ b/pkgs/development/python-modules/mdx-truly-sane-lists/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Extension for Python-Markdown that makes lists truly sane.";
+    description = "Extension for Python-Markdown that makes lists truly sane";
     longDescription = ''
       Features custom indents for nested lists and fix for messy linebreaks and
       paragraphs between lists.
diff --git a/pkgs/development/python-modules/memestra/default.nix b/pkgs/development/python-modules/memestra/default.nix
index 99e5a6df27855..051a0c742d44a 100644
--- a/pkgs/development/python-modules/memestra/default.nix
+++ b/pkgs/development/python-modules/memestra/default.nix
@@ -35,7 +35,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "memestra" ];
 
   meta = with lib; {
-    description = "A linter that tracks reference to deprecated functions.";
+    description = "A linter that tracks reference to deprecated functions";
     homepage = "https://github.com/QuantStack/memestra";
     license = licenses.bsd3;
     maintainers = with maintainers; [ GaetanLepage ];
diff --git a/pkgs/development/python-modules/mercadopago/default.nix b/pkgs/development/python-modules/mercadopago/default.nix
index c3f97069751c9..2a760b321eff3 100644
--- a/pkgs/development/python-modules/mercadopago/default.nix
+++ b/pkgs/development/python-modules/mercadopago/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "mercadopago" ];
 
   meta = with lib; {
-    description = "This library provides developers with a simple set of bindings to help you integrate Mercado Pago API to a website and start receiving payments.";
+    description = "This library provides developers with a simple set of bindings to help you integrate Mercado Pago API to a website and start receiving payments";
     homepage = "https://www.mercadopago.com";
     changelog = "https://github.com/mercadopago/sdk-python/releases/tag/${version}";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/meshio/default.nix b/pkgs/development/python-modules/meshio/default.nix
index 91346b9c6b182..6e9904267ece8 100644
--- a/pkgs/development/python-modules/meshio/default.nix
+++ b/pkgs/development/python-modules/meshio/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/nschloe/meshio";
-    description = "I/O for mesh files.";
+    description = "I/O for mesh files";
     mainProgram = "meshio";
     license = licenses.mit;
     maintainers = with maintainers; [ wd15 ];
diff --git a/pkgs/development/python-modules/minexr/default.nix b/pkgs/development/python-modules/minexr/default.nix
index 1a713a900f3d4..d99149d8b568b 100644
--- a/pkgs/development/python-modules/minexr/default.nix
+++ b/pkgs/development/python-modules/minexr/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Minimal, standalone OpenEXR reader for single-part, uncompressed scan line files.";
+    description = "Minimal, standalone OpenEXR reader for single-part, uncompressed scan line files";
     homepage = "https://github.com/cheind/py-minexr";
     license = licenses.mit;
     maintainers = with maintainers; [ lucasew ];
diff --git a/pkgs/development/python-modules/mkdocs-drawio-exporter/default.nix b/pkgs/development/python-modules/mkdocs-drawio-exporter/default.nix
index 02064d5f4e0b3..44b0c28d6a682 100644
--- a/pkgs/development/python-modules/mkdocs-drawio-exporter/default.nix
+++ b/pkgs/development/python-modules/mkdocs-drawio-exporter/default.nix
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "mkdocsdrawioexporter" ];
 
   meta = with lib; {
-    description = "Exports your Draw.io diagrams at build time for easier embedding into your documentation.";
+    description = "Exports your Draw.io diagrams at build time for easier embedding into your documentation";
     homepage = "https://github.com/LukeCarrier/mkdocs-drawio-exporter/";
     license = licenses.mit;
     maintainers = with maintainers; [ snpschaaf ];
diff --git a/pkgs/development/python-modules/mkdocs-exclude/default.nix b/pkgs/development/python-modules/mkdocs-exclude/default.nix
index 07060ef65225e..7e5382909a3ef 100644
--- a/pkgs/development/python-modules/mkdocs-exclude/default.nix
+++ b/pkgs/development/python-modules/mkdocs-exclude/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "A mkdocs plugin to exclude files from input using globs or regexes.";
+    description = "A mkdocs plugin to exclude files from input using globs or regexes";
     homepage = "https://github.com/apenwarr/mkdocs-exclude";
     license = licenses.asl20;
     maintainers = with maintainers; [ kaction ];
diff --git a/pkgs/development/python-modules/mkdocs-gitlab-plugin/default.nix b/pkgs/development/python-modules/mkdocs-gitlab-plugin/default.nix
index e27f4602cde22..45b87d4ba3f89 100644
--- a/pkgs/development/python-modules/mkdocs-gitlab-plugin/default.nix
+++ b/pkgs/development/python-modules/mkdocs-gitlab-plugin/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "mkdocs_gitlab_plugin" ];
 
   meta = with lib; {
-    description = "MkDocs plugin to transform strings such as #1234, %56, or !789 into links to a Gitlab repository.";
+    description = "MkDocs plugin to transform strings such as #1234, %56, or !789 into links to a Gitlab repository";
     homepage = "https://gitlab.inria.fr/vidjil/mkdocs-gitlab-plugin";
     license = licenses.mit;
     maintainers = with maintainers; [ snpschaaf ];
diff --git a/pkgs/development/python-modules/mkdocs-macros/default.nix b/pkgs/development/python-modules/mkdocs-macros/default.nix
index fd447ed7d6c02..a8940953123b7 100644
--- a/pkgs/development/python-modules/mkdocs-macros/default.nix
+++ b/pkgs/development/python-modules/mkdocs-macros/default.nix
@@ -37,7 +37,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/fralau/mkdocs_macros_plugin";
-    description = "Create richer and more beautiful pages in MkDocs, by using variables and calls to macros in the markdown code.";
+    description = "Create richer and more beautiful pages in MkDocs, by using variables and calls to macros in the markdown code";
     license = licenses.mit;
     maintainers = with maintainers; [ tljuniper ];
   };
diff --git a/pkgs/development/python-modules/mkdocs-minify-plugin/default.nix b/pkgs/development/python-modules/mkdocs-minify-plugin/default.nix
index 5ad7b5661625e..e00e2d9c0fc9d 100644
--- a/pkgs/development/python-modules/mkdocs-minify-plugin/default.nix
+++ b/pkgs/development/python-modules/mkdocs-minify-plugin/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "mkdocs" ];
 
   meta = with lib; {
-    description = "A mkdocs plugin to minify the HTML of a page before it is written to disk.";
+    description = "A mkdocs plugin to minify the HTML of a page before it is written to disk";
     homepage = "https://github.com/byrnereese/mkdocs-minify-plugin";
     license = licenses.mit;
     maintainers = with maintainers; [ tfc ];
diff --git a/pkgs/development/python-modules/ml-collections/default.nix b/pkgs/development/python-modules/ml-collections/default.nix
index c03aefa92ee17..2efd63acb78b4 100644
--- a/pkgs/development/python-modules/ml-collections/default.nix
+++ b/pkgs/development/python-modules/ml-collections/default.nix
@@ -51,7 +51,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ml_collections" ];
 
   meta = with lib; {
-    description = "ML Collections is a library of Python collections designed for ML usecases.";
+    description = "ML Collections is a library of Python collections designed for ML usecases";
     homepage = "https://github.com/google/ml_collections";
     license = licenses.asl20;
     maintainers = with maintainers; [ samuela ];
diff --git a/pkgs/development/python-modules/mohawk/default.nix b/pkgs/development/python-modules/mohawk/default.nix
index 97b44b6dc75d5..4fab29c45967a 100644
--- a/pkgs/development/python-modules/mohawk/default.nix
+++ b/pkgs/development/python-modules/mohawk/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   '';
 
   meta = {
-    description = "Python library for Hawk HTTP authorization.";
+    description = "Python library for Hawk HTTP authorization";
     homepage = "https://github.com/kumar303/mohawk";
     license = lib.licenses.mpl20;
     maintainers = [ ];
diff --git a/pkgs/development/python-modules/mouseinfo/default.nix b/pkgs/development/python-modules/mouseinfo/default.nix
index edb0785f93bf0..1eaf536d2ebdd 100644
--- a/pkgs/development/python-modules/mouseinfo/default.nix
+++ b/pkgs/development/python-modules/mouseinfo/default.nix
@@ -35,7 +35,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     broken = stdenv.isDarwin;
-    description = "An application to display XY position and RGB color information for the pixel currently under the mouse. Works on Python 2 and 3.";
+    description = "An application to display XY position and RGB color information for the pixel currently under the mouse. Works on Python 2 and 3";
     homepage = "https://github.com/asweigart/mouseinfo";
     license = licenses.gpl3;
     maintainers = with maintainers; [ lucasew ];
diff --git a/pkgs/development/python-modules/mpyq/default.nix b/pkgs/development/python-modules/mpyq/default.nix
index 9e92598261e01..2ee6030bd632b 100644
--- a/pkgs/development/python-modules/mpyq/default.nix
+++ b/pkgs/development/python-modules/mpyq/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   };
 
   meta = {
-    description = "A Python library for extracting MPQ (MoPaQ) files.";
+    description = "A Python library for extracting MPQ (MoPaQ) files";
     mainProgram = "mpyq";
     homepage = "https://github.com/eagleflo/mpyq";
     license = lib.licenses.bsd2;
diff --git a/pkgs/development/python-modules/msg-parser/default.nix b/pkgs/development/python-modules/msg-parser/default.nix
index a013a99bba723..f2ebb4108970c 100644
--- a/pkgs/development/python-modules/msg-parser/default.nix
+++ b/pkgs/development/python-modules/msg-parser/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage {
   nativeCheckInputs = [ pytestCheckHook ];
 
   meta = with lib; {
-    description = "Python module to read, parse and converting Microsoft Outlook MSG E-Mail files.";
+    description = "Python module to read, parse and converting Microsoft Outlook MSG E-Mail files";
     mainProgram = "msg_parser";
     homepage = "https://github.com/vikramarsid/msg_parser";
     license = licenses.bsd2;
diff --git a/pkgs/development/python-modules/mujoco/default.nix b/pkgs/development/python-modules/mujoco/default.nix
index 3f8fd526e6439..c7d8258e89797 100644
--- a/pkgs/development/python-modules/mujoco/default.nix
+++ b/pkgs/development/python-modules/mujoco/default.nix
@@ -83,7 +83,7 @@ buildPythonPackage rec {
     );
 
   meta = {
-    description = "Python bindings for MuJoCo: a general purpose physics simulator.";
+    description = "Python bindings for MuJoCo: a general purpose physics simulator";
     homepage = "https://mujoco.org/";
     changelog = "https://github.com/google-deepmind/mujoco/releases/tag/${version}";
     license = lib.licenses.asl20;
diff --git a/pkgs/development/python-modules/mwtypes/default.nix b/pkgs/development/python-modules/mwtypes/default.nix
index 83a91b6d75964..e78073ad5583a 100644
--- a/pkgs/development/python-modules/mwtypes/default.nix
+++ b/pkgs/development/python-modules/mwtypes/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "mwtypes" ];
 
   meta = with lib; {
-    description = "A set of classes for working with MediaWiki data types.";
+    description = "A set of classes for working with MediaWiki data types";
     homepage = "https://github.com/mediawiki-utilities/python-mwtypes";
     license = licenses.mit;
     maintainers = with maintainers; [ GaetanLepage ];
diff --git a/pkgs/development/python-modules/myhdl/default.nix b/pkgs/development/python-modules/myhdl/default.nix
index 83ae9f143f2ea..bbdb2875cb1fc 100644
--- a/pkgs/development/python-modules/myhdl/default.nix
+++ b/pkgs/development/python-modules/myhdl/default.nix
@@ -43,7 +43,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "A free, open-source package for using Python as a hardware description and verification language.";
+    description = "A free, open-source package for using Python as a hardware description and verification language";
     homepage = "https://www.myhdl.org/";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ doronbehar ];
diff --git a/pkgs/development/python-modules/myst-docutils/default.nix b/pkgs/development/python-modules/myst-docutils/default.nix
index d4feaa4d0db38..8c1b89e8be7d4 100644
--- a/pkgs/development/python-modules/myst-docutils/default.nix
+++ b/pkgs/development/python-modules/myst-docutils/default.nix
@@ -37,7 +37,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "myst_parser" ];
 
   meta = with lib; {
-    description = "An extended commonmark compliant parser, with bridges to docutils/sphinx.";
+    description = "An extended commonmark compliant parser, with bridges to docutils/sphinx";
     homepage = "https://github.com/executablebooks/MyST-Parser";
     license = licenses.mit;
     maintainers = with maintainers; [ dpausp ];
diff --git a/pkgs/development/python-modules/nbexec/default.nix b/pkgs/development/python-modules/nbexec/default.nix
index 05964e464144a..5b2e5f2c67d90 100644
--- a/pkgs/development/python-modules/nbexec/default.nix
+++ b/pkgs/development/python-modules/nbexec/default.nix
@@ -53,7 +53,7 @@ buildPythonPackage {
   pythonImportsCheck = [ "nbexec" ];
 
   meta = with lib; {
-    description = "A dead-simple tool for executing Jupyter notebooks from the command line.";
+    description = "A dead-simple tool for executing Jupyter notebooks from the command line";
     mainProgram = "nbexec";
     homepage = "https://github.com/jsvine/nbexec";
     changelog = "https://github.com/jsvine/nbexec/releases/tag/v${version}";
diff --git a/pkgs/development/python-modules/ome-zarr/default.nix b/pkgs/development/python-modules/ome-zarr/default.nix
index 05786117dc9e1..297d35fb0deb4 100644
--- a/pkgs/development/python-modules/ome-zarr/default.nix
+++ b/pkgs/development/python-modules/ome-zarr/default.nix
@@ -82,7 +82,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Implementation of next-generation file format (NGFF) specifications for storing bioimaging data in the cloud.";
+    description = "Implementation of next-generation file format (NGFF) specifications for storing bioimaging data in the cloud";
     homepage = "https://pypi.org/project/ome-zarr";
     changelog = "https://github.com/ome/ome-zarr-py/blob/v${version}/CHANGELOG.md";
     license = licenses.bsd2;
diff --git a/pkgs/development/python-modules/online-judge-tools/default.nix b/pkgs/development/python-modules/online-judge-tools/default.nix
index 23e9a259be023..3b24ba31d3560 100644
--- a/pkgs/development/python-modules/online-judge-tools/default.nix
+++ b/pkgs/development/python-modules/online-judge-tools/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Tools for various online judges. Download sample cases, generate additional test cases, test your code, and submit it.";
+    description = "Tools for various online judges. Download sample cases, generate additional test cases, test your code, and submit it";
     mainProgram = "oj";
     homepage = "https://github.com/online-judge-tools/oj";
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/ordered-set/default.nix b/pkgs/development/python-modules/ordered-set/default.nix
index e45451f3276a1..c7cf34a2f0d2d 100644
--- a/pkgs/development/python-modules/ordered-set/default.nix
+++ b/pkgs/development/python-modules/ordered-set/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ordered_set" ];
 
   meta = with lib; {
-    description = "A MutableSet that remembers its order, so that every entry has an index.";
+    description = "A MutableSet that remembers its order, so that every entry has an index";
     homepage = "https://github.com/rspeer/ordered-set";
     license = licenses.mit;
     maintainers = with maintainers; [ MostAwesomeDude ];
diff --git a/pkgs/development/python-modules/orderedmultidict/default.nix b/pkgs/development/python-modules/orderedmultidict/default.nix
index 8abe7d5930659..1d625b114f236 100644
--- a/pkgs/development/python-modules/orderedmultidict/default.nix
+++ b/pkgs/development/python-modules/orderedmultidict/default.nix
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ six ] ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ];
 
   meta = with lib; {
-    description = "Ordered Multivalue Dictionary.";
+    description = "Ordered Multivalue Dictionary";
     homepage = "https://github.com/gruns/orderedmultidict";
     license = licenses.publicDomain;
     maintainers = with maintainers; [ vanzef ];
diff --git a/pkgs/development/python-modules/outcome/default.nix b/pkgs/development/python-modules/outcome/default.nix
index 2cfcb84cac55d..e0e98cee88724 100644
--- a/pkgs/development/python-modules/outcome/default.nix
+++ b/pkgs/development/python-modules/outcome/default.nix
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = {
-    description = "Capture the outcome of Python function calls.";
+    description = "Capture the outcome of Python function calls";
     homepage = "https://github.com/python-trio/outcome";
     license = with lib.licenses; [
       mit
diff --git a/pkgs/development/python-modules/pagelabels/default.nix b/pkgs/development/python-modules/pagelabels/default.nix
index 32d791ce1c8a7..70f1e8d6670f7 100644
--- a/pkgs/development/python-modules/pagelabels/default.nix
+++ b/pkgs/development/python-modules/pagelabels/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Python library to manipulate PDF page labels.";
+    description = "Python library to manipulate PDF page labels";
     homepage = "https://github.com/lovasoa/pagelabels-py";
     maintainers = with maintainers; [ teto ];
     license = licenses.gpl3;
diff --git a/pkgs/development/python-modules/parsley/default.nix b/pkgs/development/python-modules/parsley/default.nix
index 2c8077c21555a..47f8cbba9c34c 100644
--- a/pkgs/development/python-modules/parsley/default.nix
+++ b/pkgs/development/python-modules/parsley/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   meta = with lib; {
     license = licenses.mit;
     homepage = "https://launchpad.net/parsley";
-    description = "A parser generator library based on OMeta, and other useful parsing tools.";
+    description = "A parser generator library based on OMeta, and other useful parsing tools";
     maintainers = with maintainers; [ seppeljordan ];
   };
 }
diff --git a/pkgs/development/python-modules/patch-ng/default.nix b/pkgs/development/python-modules/patch-ng/default.nix
index 02d84f3607f16..77b0b02fa0c84 100644
--- a/pkgs/development/python-modules/patch-ng/default.nix
+++ b/pkgs/development/python-modules/patch-ng/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "Library to parse and apply unified diffs.";
+    description = "Library to parse and apply unified diffs";
     homepage = "https://github.com/conan-io/python-patch";
     license = licenses.mit;
     maintainers = with maintainers; [ HaoZeke ];
diff --git a/pkgs/development/python-modules/pathlib2/default.nix b/pkgs/development/python-modules/pathlib2/default.nix
index e3d870e052830..5cbe0f41d36f9 100644
--- a/pkgs/development/python-modules/pathlib2/default.nix
+++ b/pkgs/development/python-modules/pathlib2/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "This module offers classes representing filesystem paths with semantics appropriate for different operating systems.";
+    description = "This module offers classes representing filesystem paths with semantics appropriate for different operating systems";
     homepage = "https://pypi.org/project/pathlib2/";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/pdfrw/default.nix b/pkgs/development/python-modules/pdfrw/default.nix
index 4feb27fdc3f57..d5c889185d0fe 100644
--- a/pkgs/development/python-modules/pdfrw/default.nix
+++ b/pkgs/development/python-modules/pdfrw/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "pdfrw is a pure Python library that reads and writes PDFs.";
+    description = "pdfrw is a pure Python library that reads and writes PDFs";
     homepage = "https://github.com/pmaupin/pdfrw";
     maintainers = with maintainers; [ teto ];
     license = licenses.mit;
diff --git a/pkgs/development/python-modules/pdm-backend/default.nix b/pkgs/development/python-modules/pdm-backend/default.nix
index 8cb78b449f015..714dff4c5a528 100644
--- a/pkgs/development/python-modules/pdm-backend/default.nix
+++ b/pkgs/development/python-modules/pdm-backend/default.nix
@@ -54,7 +54,7 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://github.com/pdm-project/pdm-backend";
     changelog = "https://github.com/pdm-project/pdm-backend/releases/tag/${version}";
-    description = "Yet another PEP 517 backend.";
+    description = "Yet another PEP 517 backend";
     license = licenses.mit;
     maintainers = with maintainers; [ hexa ];
   };
diff --git a/pkgs/development/python-modules/pdm-pep517/default.nix b/pkgs/development/python-modules/pdm-pep517/default.nix
index 9afd76c81a47d..0e08e9bd8a830 100644
--- a/pkgs/development/python-modules/pdm-pep517/default.nix
+++ b/pkgs/development/python-modules/pdm-pep517/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/pdm-project/pdm-pep517";
-    description = "Yet another PEP 517 backend.";
+    description = "Yet another PEP 517 backend";
     license = licenses.mit;
     maintainers = with maintainers; [ cpcloud ];
   };
diff --git a/pkgs/development/python-modules/pdoc3/default.nix b/pkgs/development/python-modules/pdoc3/default.nix
index c56a6a806519e..03fb3fd84c2f2 100644
--- a/pkgs/development/python-modules/pdoc3/default.nix
+++ b/pkgs/development/python-modules/pdoc3/default.nix
@@ -49,7 +49,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Auto-generate API documentation for Python projects.";
+    description = "Auto-generate API documentation for Python projects";
     homepage = "https://pdoc3.github.io/pdoc/";
     license = with licenses; [ agpl3Plus ];
     maintainers = with maintainers; [ catern ];
diff --git a/pkgs/development/python-modules/pika-pool/default.nix b/pkgs/development/python-modules/pika-pool/default.nix
index c70311b694d54..42b52c525853b 100644
--- a/pkgs/development/python-modules/pika-pool/default.nix
+++ b/pkgs/development/python-modules/pika-pool/default.nix
@@ -26,6 +26,6 @@ buildPythonPackage rec {
   meta = with lib; {
     homepage = "https://github.com/bninja/pika-pool";
     license = licenses.bsdOriginal;
-    description = "Pools for pikas.";
+    description = "Pools for pikas";
   };
 }
diff --git a/pkgs/development/python-modules/pkgutil-resolve-name/default.nix b/pkgs/development/python-modules/pkgutil-resolve-name/default.nix
index d1117276a1df5..d8b93722ce880 100644
--- a/pkgs/development/python-modules/pkgutil-resolve-name/default.nix
+++ b/pkgs/development/python-modules/pkgutil-resolve-name/default.nix
@@ -38,7 +38,7 @@ buildPythonPackage rec {
 
   meta = {
     homepage = "https://pypi.org/project/pkgutil_resolve_name/";
-    description = "A backport of Python 3.9’s pkgutil.resolve_name.";
+    description = "A backport of Python 3.9’s pkgutil.resolve_name";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ yajo ];
   };
diff --git a/pkgs/development/python-modules/poetry-semver/default.nix b/pkgs/development/python-modules/poetry-semver/default.nix
index 043a727828ab9..7df5ea473677c 100644
--- a/pkgs/development/python-modules/poetry-semver/default.nix
+++ b/pkgs/development/python-modules/poetry-semver/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [ pytestCheckHook ];
 
   meta = with lib; {
-    description = "A semantic versioning library for Python.";
+    description = "A semantic versioning library for Python";
     homepage = "https://github.com/python-poetry/semver";
     license = licenses.mit;
     maintainers = with maintainers; [ cpcloud ];
diff --git a/pkgs/development/python-modules/pooch/default.nix b/pkgs/development/python-modules/pooch/default.nix
index 91d277062392d..67ff89b6ab10e 100644
--- a/pkgs/development/python-modules/pooch/default.nix
+++ b/pkgs/development/python-modules/pooch/default.nix
@@ -72,7 +72,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A friend to fetch your data files.";
+    description = "A friend to fetch your data files";
     homepage = "https://github.com/fatiando/pooch";
     license = licenses.bsd3;
     maintainers = with maintainers; [ GuillaumeDesforges ];
diff --git a/pkgs/development/python-modules/powerline-mem-segment/default.nix b/pkgs/development/python-modules/powerline-mem-segment/default.nix
index 3e28906178095..99a38c7d6248b 100644
--- a/pkgs/development/python-modules/powerline-mem-segment/default.nix
+++ b/pkgs/development/python-modules/powerline-mem-segment/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "powerlinemem" ];
 
   meta = with lib; {
-    description = "Segment for Powerline showing the current memory usage in percent or absolute values.";
+    description = "Segment for Powerline showing the current memory usage in percent or absolute values";
     homepage = "https://github.com/mKaloer/powerline_mem_segment";
     license = licenses.asl20;
     maintainers = with maintainers; [ thomasjm ];
diff --git a/pkgs/development/python-modules/prompthub-py/default.nix b/pkgs/development/python-modules/prompthub-py/default.nix
index efd1cdd3ec4ab..3e697c6be0720 100644
--- a/pkgs/development/python-modules/prompthub-py/default.nix
+++ b/pkgs/development/python-modules/prompthub-py/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage {
   ];
 
   meta = with lib; {
-    description = "A simple client to fetch prompts from Prompt Hub using its REST API.";
+    description = "A simple client to fetch prompts from Prompt Hub using its REST API";
     homepage = "https://github.com/deepset-ai/prompthub-py";
     changelog = "https://github.com/deepset-ai/prompthub-py/releases/tag/v${version}";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/py-air-control/default.nix b/pkgs/development/python-modules/py-air-control/default.nix
index 03eb3d3edd29f..73cac52da8284 100644
--- a/pkgs/development/python-modules/py-air-control/default.nix
+++ b/pkgs/development/python-modules/py-air-control/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     inherit (src.meta) homepage;
-    description = "Command Line App for Controlling Philips Air Purifiers.";
+    description = "Command Line App for Controlling Philips Air Purifiers";
     license = licenses.mit;
     maintainers = with maintainers; [ urbas ];
   };
diff --git a/pkgs/development/python-modules/py4j/default.nix b/pkgs/development/python-modules/py4j/default.nix
index e49524d0ae6d5..9433dbdf37e3b 100644
--- a/pkgs/development/python-modules/py4j/default.nix
+++ b/pkgs/development/python-modules/py4j/default.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Py4J enables Python programs running in a Python interpreter to dynamically access Java objects in a Java Virtual Machine. Methods are called as if the Java objects resided in the Python interpreter and Java collections can be accessed through standard Python collection methods. Py4J also enables Java programs to call back Python objects.";
+    description = "Py4J enables Python programs running in a Python interpreter to dynamically access Java objects in a Java Virtual Machine. Methods are called as if the Java objects resided in the Python interpreter and Java collections can be accessed through standard Python collection methods. Py4J also enables Java programs to call back Python objects";
     homepage = "https://www.py4j.org/";
     sourceProvenance = with sourceTypes; [
       fromSource
diff --git a/pkgs/development/python-modules/pyautogui/default.nix b/pkgs/development/python-modules/pyautogui/default.nix
index 8742e6a0c14b1..a76479f797258 100644
--- a/pkgs/development/python-modules/pyautogui/default.nix
+++ b/pkgs/development/python-modules/pyautogui/default.nix
@@ -52,7 +52,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "PyAutoGUI lets Python control the mouse and keyboard, and other GUI automation tasks.";
+    description = "PyAutoGUI lets Python control the mouse and keyboard, and other GUI automation tasks";
     homepage = "https://github.com/asweigart/pyautogui";
     license = licenses.bsd3;
     maintainers = with maintainers; [ lucasew ];
diff --git a/pkgs/development/python-modules/pycuda/default.nix b/pkgs/development/python-modules/pycuda/default.nix
index c436f0fc75205..145bdcaad36b8 100644
--- a/pkgs/development/python-modules/pycuda/default.nix
+++ b/pkgs/development/python-modules/pycuda/default.nix
@@ -74,7 +74,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/inducer/pycuda/";
-    description = "CUDA integration for Python.";
+    description = "CUDA integration for Python";
     license = licenses.mit;
     maintainers = with maintainers; [ artuuge ];
   };
diff --git a/pkgs/development/python-modules/pyeclib/default.nix b/pkgs/development/python-modules/pyeclib/default.nix
index 30d5f357e44d7..70fb7aeb59754 100644
--- a/pkgs/development/python-modules/pyeclib/default.nix
+++ b/pkgs/development/python-modules/pyeclib/default.nix
@@ -44,7 +44,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "pyeclib" ];
 
   meta = with lib; {
-    description = "This library provides a simple Python interface for implementing erasure codes.";
+    description = "This library provides a simple Python interface for implementing erasure codes";
     homepage = "https://github.com/openstack/pyeclib";
     license = licenses.bsd2;
     maintainers = teams.openstack.members;
diff --git a/pkgs/development/python-modules/pygetwindow/default.nix b/pkgs/development/python-modules/pygetwindow/default.nix
index fbbbce865c807..a9cf36cfd46a4 100644
--- a/pkgs/development/python-modules/pygetwindow/default.nix
+++ b/pkgs/development/python-modules/pygetwindow/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ pyrect ];
 
   meta = with lib; {
-    description = "A simple, cross-platform module for obtaining GUI information on applications' windows.";
+    description = "A simple, cross-platform module for obtaining GUI information on applications' windows";
     homepage = "https://github.com/asweigart/PyGetWindow";
     license = licenses.bsd3;
     maintainers = with maintainers; [ lucasew ];
diff --git a/pkgs/development/python-modules/pygments-better-html/default.nix b/pkgs/development/python-modules/pygments-better-html/default.nix
index 378f99c934d4b..2f880a0ea8673 100644
--- a/pkgs/development/python-modules/pygments-better-html/default.nix
+++ b/pkgs/development/python-modules/pygments-better-html/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/Kwpolska/pygments_better_html";
-    description = "Improved line numbering for Pygments’ HTML formatter.";
+    description = "Improved line numbering for Pygments’ HTML formatter";
     license = licenses.bsd3;
     maintainers = with maintainers; [ hexa ];
   };
diff --git a/pkgs/development/python-modules/pyinstaller-versionfile/default.nix b/pkgs/development/python-modules/pyinstaller-versionfile/default.nix
index 09d9b25eacb44..8a0c51eef3dc4 100644
--- a/pkgs/development/python-modules/pyinstaller-versionfile/default.nix
+++ b/pkgs/development/python-modules/pyinstaller-versionfile/default.nix
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   ];
 
   meta = {
-    description = "Create a windows version-file from a simple YAML file that can be used by PyInstaller.";
+    description = "Create a windows version-file from a simple YAML file that can be used by PyInstaller";
     mainProgram = "create-version-file";
     homepage = "https://pypi.org/project/pyinstaller-versionfile/";
     license = lib.licenses.mit;
diff --git a/pkgs/development/python-modules/pylpsd/default.nix b/pkgs/development/python-modules/pylpsd/default.nix
index 366ec999c5d54..f583391a0d432 100644
--- a/pkgs/development/python-modules/pylpsd/default.nix
+++ b/pkgs/development/python-modules/pylpsd/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Python implementation of the LPSD algorithm for computing power spectral density with logarithmically spaced points.";
+    description = "Python implementation of the LPSD algorithm for computing power spectral density with logarithmically spaced points";
     homepage = "https://github.com/bleykauf/py-lpsd";
     license = licenses.mit;
     maintainers = with maintainers; [ doronbehar ];
diff --git a/pkgs/development/python-modules/pyls-flake8/default.nix b/pkgs/development/python-modules/pyls-flake8/default.nix
index 533ea616727f1..8f402cd922166 100644
--- a/pkgs/development/python-modules/pyls-flake8/default.nix
+++ b/pkgs/development/python-modules/pyls-flake8/default.nix
@@ -27,7 +27,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/emanspeaks/pyls-flake8";
-    description = "A Flake8 plugin for the Python LSP Server.";
+    description = "A Flake8 plugin for the Python LSP Server";
     license = licenses.mit;
     maintainers = with maintainers; [ cpcloud ];
   };
diff --git a/pkgs/development/python-modules/pynamecheap/default.nix b/pkgs/development/python-modules/pynamecheap/default.nix
index 6a974f1684688..adf63d29af72f 100644
--- a/pkgs/development/python-modules/pynamecheap/default.nix
+++ b/pkgs/development/python-modules/pynamecheap/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "Namecheap API client in Python.";
+    description = "Namecheap API client in Python";
     homepage = "https://github.com/Bemmu/PyNamecheap";
     license = licenses.mit;
   };
diff --git a/pkgs/development/python-modules/pynut2/default.nix b/pkgs/development/python-modules/pynut2/default.nix
index e49d8371cf4a5..44c687f125927 100644
--- a/pkgs/development/python-modules/pynut2/default.nix
+++ b/pkgs/development/python-modules/pynut2/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "API overhaul of PyNUT, a Python library to allow communication with NUT (Network UPS Tools) servers.";
+    description = "API overhaul of PyNUT, a Python library to allow communication with NUT (Network UPS Tools) servers";
     homepage = "https://github.com/mezz64/python-nut2";
     license = with licenses; [ gpl3Plus ];
     maintainers = [ maintainers.luker ];
diff --git a/pkgs/development/python-modules/pyquaternion/default.nix b/pkgs/development/python-modules/pyquaternion/default.nix
index 35d5a0442be5d..ac374c9572bb4 100644
--- a/pkgs/development/python-modules/pyquaternion/default.nix
+++ b/pkgs/development/python-modules/pyquaternion/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "pyquaternion" ];
 
   meta = with lib; {
-    description = "Library for representing and using quaternions.";
+    description = "Library for representing and using quaternions";
     homepage = "http://kieranwynn.github.io/pyquaternion/";
     license = licenses.mit;
     maintainers = with maintainers; [ lucasew ];
diff --git a/pkgs/development/python-modules/pyro-api/default.nix b/pkgs/development/python-modules/pyro-api/default.nix
index a3260a8aabdcb..c5f2ea37e0c80 100644
--- a/pkgs/development/python-modules/pyro-api/default.nix
+++ b/pkgs/development/python-modules/pyro-api/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = {
-    description = "Generic API for dispatch to Pyro backends.";
+    description = "Generic API for dispatch to Pyro backends";
     homepage = "http://pyro.ai";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ georgewhewell ];
diff --git a/pkgs/development/python-modules/pysc2/default.nix b/pkgs/development/python-modules/pysc2/default.nix
index 0ce857f1eae17..3ee18d12e4de7 100644
--- a/pkgs/development/python-modules/pysc2/default.nix
+++ b/pkgs/development/python-modules/pysc2/default.nix
@@ -55,7 +55,7 @@ buildPythonPackage {
   ];
 
   meta = {
-    description = "Starcraft II environment and library for training agents.";
+    description = "Starcraft II environment and library for training agents";
     homepage = "https://github.com/deepmind/pysc2";
     license = lib.licenses.asl20;
     platforms = lib.platforms.linux;
diff --git a/pkgs/development/python-modules/pyscreeze/default.nix b/pkgs/development/python-modules/pyscreeze/default.nix
index 465e3c9634b63..51898b3ed9254 100644
--- a/pkgs/development/python-modules/pyscreeze/default.nix
+++ b/pkgs/development/python-modules/pyscreeze/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ pillow ];
 
   meta = with lib; {
-    description = "PyScreeze is a simple, cross-platform screenshot module for Python 2 and 3.";
+    description = "PyScreeze is a simple, cross-platform screenshot module for Python 2 and 3";
     homepage = "https://github.com/asweigart/pyscreeze";
     license = licenses.bsd3;
     maintainers = with maintainers; [ lucasew ];
diff --git a/pkgs/development/python-modules/pysim/default.nix b/pkgs/development/python-modules/pysim/default.nix
index 4ced4a03f2dd0..7046bb3734081 100644
--- a/pkgs/development/python-modules/pysim/default.nix
+++ b/pkgs/development/python-modules/pysim/default.nix
@@ -61,7 +61,7 @@ buildPythonPackage {
   pythonImportsCheck = [ "pySim" ];
 
   meta = with lib; {
-    description = "A python tool to program SIMs / USIMs / ISIMs.";
+    description = "A python tool to program SIMs / USIMs / ISIMs";
     homepage = "https://github.com/osmocom/pysim";
     license = licenses.gpl2;
     maintainers = with maintainers; [
diff --git a/pkgs/development/python-modules/pysmf/default.nix b/pkgs/development/python-modules/pysmf/default.nix
index aaecbda85151f..dfa1075f08163 100644
--- a/pkgs/development/python-modules/pysmf/default.nix
+++ b/pkgs/development/python-modules/pysmf/default.nix
@@ -35,7 +35,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://das.nasophon.de/pysmf/";
-    description = "Python extension module for reading and writing Standard MIDI Files, based on libsmf.";
+    description = "Python extension module for reading and writing Standard MIDI Files, based on libsmf";
     license = licenses.bsd2;
     maintainers = [ ];
   };
diff --git a/pkgs/development/python-modules/pytest-catchlog/default.nix b/pkgs/development/python-modules/pytest-catchlog/default.nix
index 41cb34b61068b..e4e2dffdbb29f 100644
--- a/pkgs/development/python-modules/pytest-catchlog/default.nix
+++ b/pkgs/development/python-modules/pytest-catchlog/default.nix
@@ -27,6 +27,6 @@ buildPythonPackage rec {
   meta = with lib; {
     license = licenses.mit;
     homepage = "https://pypi.python.org/pypi/pytest-catchlog/";
-    description = "py.test plugin to catch log messages. This is a fork of pytest-capturelog.";
+    description = "py.test plugin to catch log messages. This is a fork of pytest-capturelog";
   };
 }
diff --git a/pkgs/development/python-modules/pytest-fixture-config/default.nix b/pkgs/development/python-modules/pytest-fixture-config/default.nix
index 5be97cd7471ce..ebc3fcdc4ba4a 100644
--- a/pkgs/development/python-modules/pytest-fixture-config/default.nix
+++ b/pkgs/development/python-modules/pytest-fixture-config/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Simple configuration objects for Py.test fixtures. Allows you to skip tests when their required config variables aren’t set.";
+    description = "Simple configuration objects for Py.test fixtures. Allows you to skip tests when their required config variables aren’t set";
     homepage = "https://github.com/manahl/pytest-plugins";
     license = licenses.mit;
     maintainers = with maintainers; [ ryansydnor ];
diff --git a/pkgs/development/python-modules/pytest-tornado/default.nix b/pkgs/development/python-modules/pytest-tornado/default.nix
index 57922bf4b04d5..03a33c70f94c3 100644
--- a/pkgs/development/python-modules/pytest-tornado/default.nix
+++ b/pkgs/development/python-modules/pytest-tornado/default.nix
@@ -24,7 +24,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ tornado ];
 
   meta = with lib; {
-    description = "A py.test plugin providing fixtures and markers to simplify testing of asynchronous tornado applications.";
+    description = "A py.test plugin providing fixtures and markers to simplify testing of asynchronous tornado applications";
     homepage = "https://github.com/eugeniy/pytest-tornado";
     license = licenses.asl20;
   };
diff --git a/pkgs/development/python-modules/pytest-virtualenv/default.nix b/pkgs/development/python-modules/pytest-virtualenv/default.nix
index 494209517eb31..fa276e748cddc 100644
--- a/pkgs/development/python-modules/pytest-virtualenv/default.nix
+++ b/pkgs/development/python-modules/pytest-virtualenv/default.nix
@@ -40,7 +40,7 @@ buildPythonPackage rec {
   disabledTestPaths = [ "tests/integration/*" ];
 
   meta = with lib; {
-    description = "Create a Python virtual environment in your test that cleans up on teardown. The fixture has utility methods to install packages and list what’s installed.";
+    description = "Create a Python virtual environment in your test that cleans up on teardown. The fixture has utility methods to install packages and list what’s installed";
     homepage = "https://github.com/manahl/pytest-plugins";
     license = licenses.mit;
     maintainers = with maintainers; [ ryansydnor ];
diff --git a/pkgs/development/python-modules/python-constraint/default.nix b/pkgs/development/python-modules/python-constraint/default.nix
index cd54dc4b0b529..2a9dfd05a4599 100644
--- a/pkgs/development/python-modules/python-constraint/default.nix
+++ b/pkgs/development/python-modules/python-constraint/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   dontUseSetuptoolsCheck = true;
 
   meta = with lib; {
-    description = "Constraint Solving Problem resolver for Python.";
+    description = "Constraint Solving Problem resolver for Python";
     homepage = "https://labix.org/doc/constraint/";
     downloadPage = "https://github.com/python-constraint/python-constraint/releases";
     license = licenses.bsd2;
diff --git a/pkgs/development/python-modules/python-hglib/default.nix b/pkgs/development/python-modules/python-hglib/default.nix
index fb7d6ba231596..528316240c0a2 100644
--- a/pkgs/development/python-modules/python-hglib/default.nix
+++ b/pkgs/development/python-modules/python-hglib/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "hglib" ];
 
   meta = with lib; {
-    description = "Library with a fast, convenient interface to Mercurial. It uses Mercurial’s command server for communication with hg.";
+    description = "Library with a fast, convenient interface to Mercurial. It uses Mercurial’s command server for communication with hg";
     homepage = "https://www.mercurial-scm.org/wiki/PythonHglibs";
     license = licenses.mit;
     maintainers = [ ];
diff --git a/pkgs/development/python-modules/python-ironicclient/default.nix b/pkgs/development/python-modules/python-ironicclient/default.nix
index 5fc6e9365ad7b..35ddd830b0f0e 100644
--- a/pkgs/development/python-modules/python-ironicclient/default.nix
+++ b/pkgs/development/python-modules/python-ironicclient/default.nix
@@ -57,7 +57,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "ironicclient" ];
 
   meta = with lib; {
-    description = "A client for OpenStack bare metal provisioning API, includes a Python module (ironicclient) and CLI (baremetal).";
+    description = "A client for OpenStack bare metal provisioning API, includes a Python module (ironicclient) and CLI (baremetal)";
     mainProgram = "baremetal";
     homepage = "https://github.com/openstack/python-ironicclient";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/python-musicpd/default.nix b/pkgs/development/python-modules/python-musicpd/default.nix
index 0807494dce91a..05ceeeb7575f4 100644
--- a/pkgs/development/python-modules/python-musicpd/default.nix
+++ b/pkgs/development/python-modules/python-musicpd/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   doCheck = true;
 
   meta = with lib; {
-    description = "An MPD (Music Player Daemon) client library written in pure Python.";
+    description = "An MPD (Music Player Daemon) client library written in pure Python";
     homepage = "https://gitlab.com/kaliko/python-musicpd";
     license = licenses.lgpl3Plus;
     maintainers = with lib.maintainers; [ apfelkuchen6 ];
diff --git a/pkgs/development/python-modules/python-string-utils/default.nix b/pkgs/development/python-modules/python-string-utils/default.nix
index 1e962148703cc..1166ad79ff34e 100644
--- a/pkgs/development/python-modules/python-string-utils/default.nix
+++ b/pkgs/development/python-modules/python-string-utils/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "A handy Python library to validate, manipulate and generate strings.";
+    description = "A handy Python library to validate, manipulate and generate strings";
     homepage = "https://github.com/daveoncode/python-string-utils";
     license = licenses.mit;
     maintainers = with maintainers; [ teto ];
diff --git a/pkgs/development/python-modules/pytools/default.nix b/pkgs/development/python-modules/pytools/default.nix
index 3f7c35ff4bdc6..1de63995bf297 100644
--- a/pkgs/development/python-modules/pytools/default.nix
+++ b/pkgs/development/python-modules/pytools/default.nix
@@ -37,7 +37,7 @@ buildPythonPackage rec {
 
   meta = {
     homepage = "https://github.com/inducer/pytools/";
-    description = "Miscellaneous Python lifesavers.";
+    description = "Miscellaneous Python lifesavers";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ artuuge ];
   };
diff --git a/pkgs/development/python-modules/pyzbar/default.nix b/pkgs/development/python-modules/pyzbar/default.nix
index 44fb1c613a403..3a5c0b6ff36f7 100644
--- a/pkgs/development/python-modules/pyzbar/default.nix
+++ b/pkgs/development/python-modules/pyzbar/default.nix
@@ -49,7 +49,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "pyzbar" ];
 
   meta = with lib; {
-    description = "Read one-dimensional barcodes and QR codes from Python using the zbar library.";
+    description = "Read one-dimensional barcodes and QR codes from Python using the zbar library";
     homepage = "https://github.com/NaturalHistoryMuseum/pyzbar";
     license = licenses.mit;
     maintainers = with maintainers; [ gador ];
diff --git a/pkgs/development/python-modules/qiskit-terra/default.nix b/pkgs/development/python-modules/qiskit-terra/default.nix
index f30549131f843..44ae18a933d08 100644
--- a/pkgs/development/python-modules/qiskit-terra/default.nix
+++ b/pkgs/development/python-modules/qiskit-terra/default.nix
@@ -214,7 +214,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Provides the foundations for Qiskit.";
+    description = "Provides the foundations for Qiskit";
     longDescription = ''
       Allows the user to write quantum circuits easily, and takes care of the constraints of real hardware.
     '';
diff --git a/pkgs/development/python-modules/ramlfications/default.nix b/pkgs/development/python-modules/ramlfications/default.nix
index 43aac163dc2fb..2678a0b9b7782 100644
--- a/pkgs/development/python-modules/ramlfications/default.nix
+++ b/pkgs/development/python-modules/ramlfications/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "A Python RAML parser.";
+    description = "A Python RAML parser";
     mainProgram = "ramlfications";
     homepage = "https://ramlfications.readthedocs.org";
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/regress/default.nix b/pkgs/development/python-modules/regress/default.nix
index b6a77758fa619..e59496b767d12 100644
--- a/pkgs/development/python-modules/regress/default.nix
+++ b/pkgs/development/python-modules/regress/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "Python bindings to the Rust regress crate, exposing ECMA regular expressions.";
+    description = "Python bindings to the Rust regress crate, exposing ECMA regular expressions";
     homepage = "https://github.com/Julian/regress";
     license = licenses.mit;
     maintainers = [ maintainers.matthiasbeyer ];
diff --git a/pkgs/development/python-modules/remote-pdb/default.nix b/pkgs/development/python-modules/remote-pdb/default.nix
index 796875196a21a..c17f48d451554 100644
--- a/pkgs/development/python-modules/remote-pdb/default.nix
+++ b/pkgs/development/python-modules/remote-pdb/default.nix
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     hash = "sha256-/7RysJOJigU4coC6d/Ob2lrtw8u8nLZI8wBk4oEEY3g=";
   };
   meta = with lib; {
-    description = "Remote vanilla PDB (over TCP sockets).";
+    description = "Remote vanilla PDB (over TCP sockets)";
     homepage = "https://github.com/ionelmc/python-remote-pdb";
     license = licenses.bsd2;
     maintainers = with maintainers; [ mic92 ];
diff --git a/pkgs/development/python-modules/requests-hawk/default.nix b/pkgs/development/python-modules/requests-hawk/default.nix
index 1bc8862dd3534..9f3fbb94670d8 100644
--- a/pkgs/development/python-modules/requests-hawk/default.nix
+++ b/pkgs/development/python-modules/requests-hawk/default.nix
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Hawk authentication strategy for the requests python library.";
+    description = "Hawk authentication strategy for the requests python library";
     homepage = "https://github.com/mozilla-services/requests-hawk";
     license = licenses.asl20;
     maintainers = with maintainers; [ austinbutler ];
diff --git a/pkgs/development/python-modules/requestsexceptions/default.nix b/pkgs/development/python-modules/requestsexceptions/default.nix
index 8a5580baa6c96..d545693191273 100644
--- a/pkgs/development/python-modules/requestsexceptions/default.nix
+++ b/pkgs/development/python-modules/requestsexceptions/default.nix
@@ -23,7 +23,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Import exceptions from potentially bundled packages in requests.";
+    description = "Import exceptions from potentially bundled packages in requests";
     homepage = "https://pypi.python.org/pypi/requestsexceptions";
     license = licenses.asl20;
     maintainers = with maintainers; [ makefu ];
diff --git a/pkgs/development/python-modules/reretry/default.nix b/pkgs/development/python-modules/reretry/default.nix
index a4ec197c350cc..15504e5dc7c35 100644
--- a/pkgs/development/python-modules/reretry/default.nix
+++ b/pkgs/development/python-modules/reretry/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "An easy to use retry decorator.";
+    description = "An easy to use retry decorator";
     homepage = "https://github.com/leshchenko1979/reretry";
     license = licenses.asl20;
     maintainers = with maintainers; [ renatoGarcia ];
diff --git a/pkgs/development/python-modules/rfc7464/default.nix b/pkgs/development/python-modules/rfc7464/default.nix
index e6c3c85bfb540..1765b46be03e9 100644
--- a/pkgs/development/python-modules/rfc7464/default.nix
+++ b/pkgs/development/python-modules/rfc7464/default.nix
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/moshez/rfc7464";
-    description = "RFC 7464 is a proposed standard for streaming JSON documents.";
+    description = "RFC 7464 is a proposed standard for streaming JSON documents";
     license = [ licenses.mit ];
     maintainers = with maintainers; [ shlevy ];
   };
diff --git a/pkgs/development/python-modules/roku/default.nix b/pkgs/development/python-modules/roku/default.nix
index 262f31dd53062..5041ec57ab1a1 100644
--- a/pkgs/development/python-modules/roku/default.nix
+++ b/pkgs/development/python-modules/roku/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "roku" ];
 
   meta = with lib; {
-    description = "Screw remotes. Control your Roku with Python.";
+    description = "Screw remotes. Control your Roku with Python";
     homepage = "https://github.com/jcarbaugh/python-roku";
     license = licenses.bsd3;
   };
diff --git a/pkgs/development/python-modules/routeros-api/default.nix b/pkgs/development/python-modules/routeros-api/default.nix
index 1f5812b44c1a1..caeace956f44b 100644
--- a/pkgs/development/python-modules/routeros-api/default.nix
+++ b/pkgs/development/python-modules/routeros-api/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ six ];
 
   meta = with lib; {
-    description = "Python API to RouterBoard devices produced by MikroTik.";
+    description = "Python API to RouterBoard devices produced by MikroTik";
     homepage = "https://github.com/socialwifi/RouterOS-api";
     license = licenses.mit;
     maintainers = with maintainers; [ quentin ];
diff --git a/pkgs/development/python-modules/s2clientprotocol/default.nix b/pkgs/development/python-modules/s2clientprotocol/default.nix
index 0ee5f15a24fb5..ea4dc582c5474 100644
--- a/pkgs/development/python-modules/s2clientprotocol/default.nix
+++ b/pkgs/development/python-modules/s2clientprotocol/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   buildInputs = [ protobuf ];
 
   meta = {
-    description = "StarCraft II - client protocol.";
+    description = "StarCraft II - client protocol";
     homepage = "https://github.com/Blizzard/sc2client-proto";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ ];
diff --git a/pkgs/development/python-modules/seekpath/default.nix b/pkgs/development/python-modules/seekpath/default.nix
index 16b1c0a838b96..10f167060cd78 100644
--- a/pkgs/development/python-modules/seekpath/default.nix
+++ b/pkgs/development/python-modules/seekpath/default.nix
@@ -44,7 +44,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "A module to obtain and visualize band paths in the Brillouin zone of crystal structures.";
+    description = "A module to obtain and visualize band paths in the Brillouin zone of crystal structures";
     homepage = "https://github.com/giovannipizzi/seekpath";
     license = licenses.mit;
     maintainers = with maintainers; [ psyanticy ];
diff --git a/pkgs/development/python-modules/sjcl/default.nix b/pkgs/development/python-modules/sjcl/default.nix
index c291b56aa40e3..cca5d21cec0b0 100644
--- a/pkgs/development/python-modules/sjcl/default.nix
+++ b/pkgs/development/python-modules/sjcl/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "sjcl" ];
 
   meta = with lib; {
-    description = "Decrypt and encrypt messages compatible to the \"Stanford Javascript Crypto Library (SJCL)\" message format. This is a wrapper around pycrypto.";
+    description = "Decrypt and encrypt messages compatible to the \"Stanford Javascript Crypto Library (SJCL)\" message format. This is a wrapper around pycrypto";
     homepage = "https://github.com/berlincode/sjcl";
     license = licenses.bsd3;
     maintainers = with maintainers; [ binsky ];
diff --git a/pkgs/development/python-modules/snap-helpers/default.nix b/pkgs/development/python-modules/snap-helpers/default.nix
index 7470baa097c9f..a1a9ef70c1888 100644
--- a/pkgs/development/python-modules/snap-helpers/default.nix
+++ b/pkgs/development/python-modules/snap-helpers/default.nix
@@ -36,7 +36,7 @@ buildPythonPackage rec {
   passthru.updateScript = nix-update-script { };
 
   meta = {
-    description = "Interact with snap configuration and properties from inside a snap.";
+    description = "Interact with snap configuration and properties from inside a snap";
     homepage = "https://github.com/albertodonato/snap-helpers";
     changelog = "https://github.com/albertodonato/snap-helpers/releases/tag/${version}";
     license = lib.licenses.lgpl3Only;
diff --git a/pkgs/development/python-modules/sphinx-issues/default.nix b/pkgs/development/python-modules/sphinx-issues/default.nix
index 791cb37bdf5aa..ea8f4268fb973 100644
--- a/pkgs/development/python-modules/sphinx-issues/default.nix
+++ b/pkgs/development/python-modules/sphinx-issues/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/sloria/sphinx-issues";
-    description = "Sphinx extension for linking to your project's issue tracker.";
+    description = "Sphinx extension for linking to your project's issue tracker";
     license = licenses.mit;
     maintainers = with maintainers; [ kaction ];
   };
diff --git a/pkgs/development/python-modules/sphinx-mdinclude/default.nix b/pkgs/development/python-modules/sphinx-mdinclude/default.nix
index 905a4f88ac878..0ac245d87bfd5 100644
--- a/pkgs/development/python-modules/sphinx-mdinclude/default.nix
+++ b/pkgs/development/python-modules/sphinx-mdinclude/default.nix
@@ -40,7 +40,7 @@ buildPythonPackage rec {
     broken = true; # https://github.com/omnilib/sphinx-mdinclude/issues/22
     homepage = "https://github.com/omnilib/sphinx-mdinclude";
     changelog = "https://github.com/omnilib/sphinx-mdinclude/blob/v${version}/CHANGELOG.md";
-    description = "Sphinx extension for including or writing pages in Markdown format.";
+    description = "Sphinx extension for including or writing pages in Markdown format";
     longDescription = ''
       A simple Sphinx extension that enables including Markdown documents from within
       reStructuredText.
diff --git a/pkgs/development/python-modules/sphinx-rtd-dark-mode/default.nix b/pkgs/development/python-modules/sphinx-rtd-dark-mode/default.nix
index ba95c5aea22d6..98b962b1f4b79 100644
--- a/pkgs/development/python-modules/sphinx-rtd-dark-mode/default.nix
+++ b/pkgs/development/python-modules/sphinx-rtd-dark-mode/default.nix
@@ -40,7 +40,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "sphinx_rtd_dark_mode" ];
 
   meta = with lib; {
-    description = "Adds a toggleable dark mode to the Read the Docs theme for Sphinx.";
+    description = "Adds a toggleable dark mode to the Read the Docs theme for Sphinx";
     homepage = "https://github.com/MrDogeBro/sphinx_rtd_dark_mode";
     changelog = "https://github.com/MrDogeBro/sphinx_rtd_dark_mode/releases/tag/v${version}";
     maintainers = with maintainers; [ wolfgangwalther ];
diff --git a/pkgs/development/python-modules/sphinx-tabs/default.nix b/pkgs/development/python-modules/sphinx-tabs/default.nix
index 4aa456e667cf5..4c956eede9d4a 100644
--- a/pkgs/development/python-modules/sphinx-tabs/default.nix
+++ b/pkgs/development/python-modules/sphinx-tabs/default.nix
@@ -53,7 +53,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "sphinx_tabs" ];
 
   meta = with lib; {
-    description = "A sphinx extension for creating tabbed content when building HTML.";
+    description = "A sphinx extension for creating tabbed content when building HTML";
     homepage = "https://github.com/executablebooks/sphinx-tabs";
     license = licenses.mit;
     maintainers = with maintainers; [ kaction ];
diff --git a/pkgs/development/python-modules/sphinxcontrib-devhelp/default.nix b/pkgs/development/python-modules/sphinxcontrib-devhelp/default.nix
index 64cb1b549b4b9..d2daaded5b90b 100644
--- a/pkgs/development/python-modules/sphinxcontrib-devhelp/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-devhelp/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   pythonNamespaces = [ "sphinxcontrib" ];
 
   meta = with lib; {
-    description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document.";
+    description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document";
     homepage = "https://github.com/sphinx-doc/sphinxcontrib-devhelp";
     license = licenses.bsd2;
     maintainers = teams.sphinx.members;
diff --git a/pkgs/development/python-modules/sphinxcontrib-jsmath/default.nix b/pkgs/development/python-modules/sphinxcontrib-jsmath/default.nix
index bf30b5f8f3936..9ce7c66abc997 100644
--- a/pkgs/development/python-modules/sphinxcontrib-jsmath/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-jsmath/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
   pythonNamespaces = [ "sphinxcontrib" ];
 
   meta = with lib; {
-    description = "sphinxcontrib-jsmath is a sphinx extension which renders display math in HTML via JavaScript.";
+    description = "sphinxcontrib-jsmath is a sphinx extension which renders display math in HTML via JavaScript";
     homepage = "https://github.com/sphinx-doc/sphinxcontrib-jsmath";
     license = licenses.bsd0;
     maintainers = teams.sphinx.members;
diff --git a/pkgs/development/python-modules/sphinxcontrib-qthelp/default.nix b/pkgs/development/python-modules/sphinxcontrib-qthelp/default.nix
index 125dfa1a0e66d..402432dd1e498 100644
--- a/pkgs/development/python-modules/sphinxcontrib-qthelp/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-qthelp/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   pythonNamespaces = [ "sphinxcontrib" ];
 
   meta = with lib; {
-    description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document.";
+    description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document";
     homepage = "https://github.com/sphinx-doc/sphinxcontrib-qthelp";
     license = licenses.bsd2;
     maintainers = teams.sphinx.members;
diff --git a/pkgs/development/python-modules/sphinxcontrib-serializinghtml/default.nix b/pkgs/development/python-modules/sphinxcontrib-serializinghtml/default.nix
index 5403d7fb01b58..99b4d5e5867f4 100644
--- a/pkgs/development/python-modules/sphinxcontrib-serializinghtml/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-serializinghtml/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   pythonNamespaces = [ "sphinxcontrib" ];
 
   meta = with lib; {
-    description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle).";
+    description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)";
     homepage = "https://github.com/sphinx-doc/sphinxcontrib-serializinghtml";
     license = licenses.bsd2;
     maintainers = teams.sphinx.members;
diff --git a/pkgs/development/python-modules/spinners/default.nix b/pkgs/development/python-modules/spinners/default.nix
index 15fa7bd0a560a..a5dcf83a68c12 100644
--- a/pkgs/development/python-modules/spinners/default.nix
+++ b/pkgs/development/python-modules/spinners/default.nix
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "spinners" ];
 
   meta = with lib; {
-    description = "Spinners for the Terminal.";
+    description = "Spinners for the Terminal";
     homepage = "https://github.com/manrajgrover/py-spinners";
     license = licenses.mit;
     maintainers = with maintainers; [ urbas ];
diff --git a/pkgs/development/python-modules/stashy/default.nix b/pkgs/development/python-modules/stashy/default.nix
index 7ff9f137f1f65..96903ff8e51f1 100644
--- a/pkgs/development/python-modules/stashy/default.nix
+++ b/pkgs/development/python-modules/stashy/default.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "stashy" ];
 
   meta = with lib; {
-    description = "Python client for the Atlassian Bitbucket Server (formerly known as Stash) REST API.";
+    description = "Python client for the Atlassian Bitbucket Server (formerly known as Stash) REST API";
     homepage = "https://github.com/cosmin/stashy";
     license = licenses.asl20;
     maintainers = with maintainers; [ mupdt ];
diff --git a/pkgs/development/python-modules/stemming/default.nix b/pkgs/development/python-modules/stemming/default.nix
index 005f34c59f033..98ef1eea9b092 100644
--- a/pkgs/development/python-modules/stemming/default.nix
+++ b/pkgs/development/python-modules/stemming/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage {
   pythonImportsCheck = [ "stemming" ];
 
   meta = with lib; {
-    description = "Python implementations of various stemming algorithms.";
+    description = "Python implementations of various stemming algorithms";
     homepage = "https://github.com/nmstoker/stemming";
     license = licenses.unlicense;
     maintainers = with maintainers; [ happysalada ];
diff --git a/pkgs/development/python-modules/stups-cli-support/default.nix b/pkgs/development/python-modules/stups-cli-support/default.nix
index 58e8243ed022f..ef36962843072 100644
--- a/pkgs/development/python-modules/stups-cli-support/default.nix
+++ b/pkgs/development/python-modules/stups-cli-support/default.nix
@@ -37,7 +37,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Helper library for all STUPS command line tools.";
+    description = "Helper library for all STUPS command line tools";
     homepage = "https://github.com/zalando-stups/stups-cli-support";
     license = licenses.asl20;
     maintainers = [ maintainers.mschuwalow ];
diff --git a/pkgs/development/python-modules/stups-fullstop/default.nix b/pkgs/development/python-modules/stups-fullstop/default.nix
index 4b6ea65bf9219..2b4efbaacb2fe 100644
--- a/pkgs/development/python-modules/stups-fullstop/default.nix
+++ b/pkgs/development/python-modules/stups-fullstop/default.nix
@@ -39,7 +39,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Convenience command line tool for fullstop. audit reporting.";
+    description = "Convenience command line tool for fullstop. audit reporting";
     homepage = "https://github.com/zalando-stups/stups-fullstop-cli";
     license = licenses.asl20;
     maintainers = [ maintainers.mschuwalow ];
diff --git a/pkgs/development/python-modules/stups-tokens/default.nix b/pkgs/development/python-modules/stups-tokens/default.nix
index 7668e55aa8959..f7c40c1ccd834 100644
--- a/pkgs/development/python-modules/stups-tokens/default.nix
+++ b/pkgs/development/python-modules/stups-tokens/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "A Python library that keeps OAuth 2.0 service access tokens in memory for your usage.";
+    description = "A Python library that keeps OAuth 2.0 service access tokens in memory for your usage";
     homepage = "https://github.com/zalando-stups/python-tokens";
     license = licenses.asl20;
     maintainers = [ maintainers.mschuwalow ];
diff --git a/pkgs/development/python-modules/stups-zign/default.nix b/pkgs/development/python-modules/stups-zign/default.nix
index 08875ffb58d2d..c6fb2495dd27a 100644
--- a/pkgs/development/python-modules/stups-zign/default.nix
+++ b/pkgs/development/python-modules/stups-zign/default.nix
@@ -46,7 +46,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "OAuth2 token management command line utility.";
+    description = "OAuth2 token management command line utility";
     homepage = "https://github.com/zalando-stups/zign";
     license = licenses.asl20;
     maintainers = [ maintainers.mschuwalow ];
diff --git a/pkgs/development/python-modules/tblib/default.nix b/pkgs/development/python-modules/tblib/default.nix
index 6c9e38cc1f0d9..86a036c47d5da 100644
--- a/pkgs/development/python-modules/tblib/default.nix
+++ b/pkgs/development/python-modules/tblib/default.nix
@@ -20,7 +20,7 @@ buildPythonPackage rec {
   nativeBuildInputs = [ setuptools ];
 
   meta = with lib; {
-    description = "Traceback fiddling library. Allows you to pickle tracebacks.";
+    description = "Traceback fiddling library. Allows you to pickle tracebacks";
     homepage = "https://github.com/ionelmc/python-tblib";
     license = licenses.bsd2;
     maintainers = with maintainers; [ teh ];
diff --git a/pkgs/development/python-modules/tensorboard-plugin-profile/default.nix b/pkgs/development/python-modules/tensorboard-plugin-profile/default.nix
index 5429cd58176ba..9719d1d0c6a0b 100644
--- a/pkgs/development/python-modules/tensorboard-plugin-profile/default.nix
+++ b/pkgs/development/python-modules/tensorboard-plugin-profile/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Profile Tensorboard Plugin.";
+    description = "Profile Tensorboard Plugin";
     homepage = "http://tensorflow.org";
     license = licenses.asl20;
     maintainers = with maintainers; [ ndl ];
diff --git a/pkgs/development/python-modules/tensorboard-plugin-wit/default.nix b/pkgs/development/python-modules/tensorboard-plugin-wit/default.nix
index 202361ef032a0..4a5760e3e92ed 100644
--- a/pkgs/development/python-modules/tensorboard-plugin-wit/default.nix
+++ b/pkgs/development/python-modules/tensorboard-plugin-wit/default.nix
@@ -17,7 +17,7 @@ buildPythonPackage rec {
   };
 
   meta = with lib; {
-    description = "What-If Tool TensorBoard plugin.";
+    description = "What-If Tool TensorBoard plugin";
     homepage = "http://tensorflow.org";
     license = licenses.asl20;
     maintainers = with maintainers; [ ndl ];
diff --git a/pkgs/development/python-modules/tensorflow-estimator/bin.nix b/pkgs/development/python-modules/tensorflow-estimator/bin.nix
index 908a29370f954..7146208c4d653 100644
--- a/pkgs/development/python-modules/tensorflow-estimator/bin.nix
+++ b/pkgs/development/python-modules/tensorflow-estimator/bin.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "TensorFlow Estimator is a high-level API that encapsulates model training, evaluation, prediction, and exporting.";
+    description = "TensorFlow Estimator is a high-level API that encapsulates model training, evaluation, prediction, and exporting";
     homepage = "http://tensorflow.org";
     license = licenses.asl20;
     maintainers = with maintainers; [ jyp ];
diff --git a/pkgs/development/python-modules/throttler/default.nix b/pkgs/development/python-modules/throttler/default.nix
index e42a9d48fae02..4dc15bffedae1 100644
--- a/pkgs/development/python-modules/throttler/default.nix
+++ b/pkgs/development/python-modules/throttler/default.nix
@@ -36,7 +36,7 @@ buildPythonPackage rec {
   pytestFlagsArray = [ "tests/" ];
 
   meta = with lib; {
-    description = "Zero-dependency Python package for easy throttling with asyncio support.";
+    description = "Zero-dependency Python package for easy throttling with asyncio support";
     homepage = "https://github.com/uburuntu/throttler";
     license = licenses.mit;
     maintainers = with maintainers; [ renatoGarcia ];
diff --git a/pkgs/development/python-modules/tiktoken/default.nix b/pkgs/development/python-modules/tiktoken/default.nix
index 1a386a2bacf68..d7b8b6c1c631f 100644
--- a/pkgs/development/python-modules/tiktoken/default.nix
+++ b/pkgs/development/python-modules/tiktoken/default.nix
@@ -70,7 +70,7 @@ buildPythonPackage {
   pythonImportsCheck = [ "tiktoken" ];
 
   meta = with lib; {
-    description = "tiktoken is a fast BPE tokeniser for use with OpenAI's models.";
+    description = "tiktoken is a fast BPE tokeniser for use with OpenAI's models";
     homepage = "https://github.com/openai/tiktoken";
     license = licenses.mit;
     maintainers = with maintainers; [ happysalada ];
diff --git a/pkgs/development/python-modules/tlslite-ng/default.nix b/pkgs/development/python-modules/tlslite-ng/default.nix
index bfad6ff0a0878..266acc638b8fc 100644
--- a/pkgs/development/python-modules/tlslite-ng/default.nix
+++ b/pkgs/development/python-modules/tlslite-ng/default.nix
@@ -18,7 +18,7 @@ buildPythonPackage rec {
   buildInputs = [ ecdsa ];
 
   meta = with lib; {
-    description = "Pure python implementation of SSL and TLS.";
+    description = "Pure python implementation of SSL and TLS";
     homepage = "https://pypi.python.org/pypi/tlslite-ng";
     license = licenses.lgpl2;
     maintainers = [ ];
diff --git a/pkgs/development/python-modules/translatehtml/default.nix b/pkgs/development/python-modules/translatehtml/default.nix
index c1364ff8806f3..da93e4d8484bb 100644
--- a/pkgs/development/python-modules/translatehtml/default.nix
+++ b/pkgs/development/python-modules/translatehtml/default.nix
@@ -46,7 +46,7 @@ buildPythonPackage rec {
   doCheck = false; # no tests
 
   meta = with lib; {
-    description = "Translate HTML using Beautiful Soup and Argos Translate.";
+    description = "Translate HTML using Beautiful Soup and Argos Translate";
     homepage = "https://www.argosopentech.com";
     license = licenses.mit;
     maintainers = with maintainers; [ misuzu ];
diff --git a/pkgs/development/python-modules/treeo/default.nix b/pkgs/development/python-modules/treeo/default.nix
index 785ba18c670b2..13102676bdb46 100644
--- a/pkgs/development/python-modules/treeo/default.nix
+++ b/pkgs/development/python-modules/treeo/default.nix
@@ -44,7 +44,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "treeo" ];
 
   meta = with lib; {
-    description = "A small library for creating and manipulating custom JAX Pytree classes.";
+    description = "A small library for creating and manipulating custom JAX Pytree classes";
     homepage = "https://github.com/cgarciae/treeo";
     license = licenses.mit;
     maintainers = with maintainers; [ ndl ];
diff --git a/pkgs/development/python-modules/txgithub/default.nix b/pkgs/development/python-modules/txgithub/default.nix
index ccd68920145aa..98530fb9f413a 100644
--- a/pkgs/development/python-modules/txgithub/default.nix
+++ b/pkgs/development/python-modules/txgithub/default.nix
@@ -36,7 +36,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "GitHub API client implemented using Twisted.";
+    description = "GitHub API client implemented using Twisted";
     homepage = "https://github.com/tomprince/txgithub";
     license = licenses.mit;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/txrequests/default.nix b/pkgs/development/python-modules/txrequests/default.nix
index db158401d3406..aeabc80a94259 100644
--- a/pkgs/development/python-modules/txrequests/default.nix
+++ b/pkgs/development/python-modules/txrequests/default.nix
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   nativeCheckInputs = [ unittestCheckHook ];
 
   meta = with lib; {
-    description = "Asynchronous Python HTTP for Humans.";
+    description = "Asynchronous Python HTTP for Humans";
     homepage = "https://github.com/tardyp/txrequests";
     license = licenses.asl20;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/python-modules/vowpalwabbit/default.nix b/pkgs/development/python-modules/vowpalwabbit/default.nix
index 55ce92388f505..dea16f654e2ee 100644
--- a/pkgs/development/python-modules/vowpalwabbit/default.nix
+++ b/pkgs/development/python-modules/vowpalwabbit/default.nix
@@ -66,7 +66,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Vowpal Wabbit is a fast machine learning library for online learning, and this is the python wrapper for the project.";
+    description = "Vowpal Wabbit is a fast machine learning library for online learning, and this is the python wrapper for the project";
     homepage = "https://github.com/JohnLangford/vowpal_wabbit";
     license = licenses.bsd3;
     broken = stdenv.isAarch64;
diff --git a/pkgs/development/python-modules/xml-marshaller/default.nix b/pkgs/development/python-modules/xml-marshaller/default.nix
index 1b73fe0155955..c56cd4e8130df 100644
--- a/pkgs/development/python-modules/xml-marshaller/default.nix
+++ b/pkgs/development/python-modules/xml-marshaller/default.nix
@@ -25,7 +25,7 @@ buildPythonPackage rec {
   pythonImportsCheck = [ "xml_marshaller" ];
 
   meta = with lib; {
-    description = "This module allows one to marshal simple Python data types into a custom XML format.";
+    description = "This module allows one to marshal simple Python data types into a custom XML format";
     homepage = "https://www.python.org/community/sigs/current/xml-sig/";
     license = licenses.psfl;
     maintainers = with maintainers; [ mazurel ];
diff --git a/pkgs/development/python-modules/zeroc-ice/default.nix b/pkgs/development/python-modules/zeroc-ice/default.nix
index f9b62c46603fe..b6b8d56f87d11 100644
--- a/pkgs/development/python-modules/zeroc-ice/default.nix
+++ b/pkgs/development/python-modules/zeroc-ice/default.nix
@@ -31,7 +31,7 @@ buildPythonPackage rec {
     broken = stdenv.isDarwin;
     homepage = "https://zeroc.com/";
     license = licenses.gpl2;
-    description = "Comprehensive RPC framework with support for Python, C++, .NET, Java, JavaScript and more.";
+    description = "Comprehensive RPC framework with support for Python, C++, .NET, Java, JavaScript and more";
     mainProgram = "slice2py";
     maintainers = with maintainers; [ abbradar ];
   };
diff --git a/pkgs/development/python-modules/zict/default.nix b/pkgs/development/python-modules/zict/default.nix
index 057d1e0f4ad19..b2305bc243fdc 100644
--- a/pkgs/development/python-modules/zict/default.nix
+++ b/pkgs/development/python-modules/zict/default.nix
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   ];
 
   meta = with lib; {
-    description = "Mutable mapping tools.";
+    description = "Mutable mapping tools";
     homepage = "https://github.com/dask/zict";
     license = licenses.bsd3;
     maintainers = with maintainers; [ teh ];
diff --git a/pkgs/development/python2-modules/configparser/default.nix b/pkgs/development/python2-modules/configparser/default.nix
index 0f3b6e0b49129..5cb0e9cf89617 100644
--- a/pkgs/development/python2-modules/configparser/default.nix
+++ b/pkgs/development/python2-modules/configparser/default.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    description = "Updated configparser from Python 3.7 for Python 2.6+.";
+    description = "Updated configparser from Python 3.7 for Python 2.6+";
     license = licenses.mit;
     homepage = "https://github.com/jaraco/configparser";
   };
diff --git a/pkgs/development/skaware-packages/nsss/default.nix b/pkgs/development/skaware-packages/nsss/default.nix
index 6171a36f11478..d1c733294452a 100644
--- a/pkgs/development/skaware-packages/nsss/default.nix
+++ b/pkgs/development/skaware-packages/nsss/default.nix
@@ -5,7 +5,7 @@ skawarePackages.buildPackage {
   version = "0.2.0.4";
   sha256 = "ObUE+FvY9rUj0zTlz6YsAqOV2zWZG3XyBt8Ku9Z2Gq0=";
 
-  description = "An implementation of a subset of the pwd.h, group.h and shadow.h family of functions.";
+  description = "An implementation of a subset of the pwd.h, group.h and shadow.h family of functions";
 
   # TODO: nsss support
   configureFlags = [
diff --git a/pkgs/development/tools/allure/default.nix b/pkgs/development/tools/allure/default.nix
index 2d247e3f7d419..b711e38364a33 100644
--- a/pkgs/development/tools/allure/default.nix
+++ b/pkgs/development/tools/allure/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta =  {
     homepage = "https://docs.qameta.io/allure/";
-    description = "Allure Report is a flexible, lightweight multi-language test reporting tool.";
+    description = "Allure Report is a flexible, lightweight multi-language test reporting tool";
     longDescription = ''
       Allure Report is a flexible, lightweight multi-language test reporting
       tool providing clear graphical reports and allowing everyone involved
diff --git a/pkgs/development/tools/analysis/rizin/default.nix b/pkgs/development/tools/analysis/rizin/default.nix
index c3f85d1940067..f83c3dcdcfac9 100644
--- a/pkgs/development/tools/analysis/rizin/default.nix
+++ b/pkgs/development/tools/analysis/rizin/default.nix
@@ -135,7 +135,7 @@ let rizin = stdenv.mkDerivation rec {
   };
 
   meta = {
-    description = "UNIX-like reverse engineering framework and command-line toolset.";
+    description = "UNIX-like reverse engineering framework and command-line toolset";
     homepage = "https://rizin.re/";
     license = lib.licenses.gpl3Plus;
     mainProgram = "rizin";
diff --git a/pkgs/development/tools/bingo/default.nix b/pkgs/development/tools/bingo/default.nix
index 9d9863ca32036..9af3b77dfbffb 100644
--- a/pkgs/development/tools/bingo/default.nix
+++ b/pkgs/development/tools/bingo/default.nix
@@ -22,7 +22,7 @@ buildGoModule rec {
   ldflags = [ "-s" "-w" ];
 
   meta = with lib; {
-    description = "Like `go get` but for Go tools! CI Automating versioning of Go binaries in a nested, isolated Go modules.";
+    description = "Like `go get` but for Go tools! CI Automating versioning of Go binaries in a nested, isolated Go modules";
     mainProgram = "bingo";
     homepage = "https://github.com/bwplotka/bingo";
     license = licenses.asl20;
diff --git a/pkgs/development/tools/click/default.nix b/pkgs/development/tools/click/default.nix
index da05368a2ce4b..8927a1db20ad7 100644
--- a/pkgs/development/tools/click/default.nix
+++ b/pkgs/development/tools/click/default.nix
@@ -83,7 +83,7 @@ buildPythonApplication {
   ];
 
   meta = {
-    description = "A tool to build click packages. Mainly used for Ubuntu Touch.";
+    description = "A tool to build click packages. Mainly used for Ubuntu Touch";
     homepage = "https://gitlab.com/ubports/development/core/click";
     license = lib.licenses.gpl3Only;
     maintainers = with lib.maintainers; [ ilyakooo0 OPNA2608 ];
diff --git a/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix b/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix
index c058002376373..37596774bbdec 100644
--- a/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix
+++ b/pkgs/development/tools/continuous-integration/woodpecker-plugin-git/default.nix
@@ -32,7 +32,7 @@ buildGoModule rec {
   passthru.tests.version = testers.testVersion { package = woodpecker-plugin-git; };
 
   meta = with lib; {
-    description = "Woodpecker plugin for cloning Git repositories.";
+    description = "Woodpecker plugin for cloning Git repositories";
     homepage = "https://woodpecker-ci.org/";
     changelog = "https://github.com/woodpecker-ci/plugin-git/releases/tag/${version}";
     license = licenses.asl20;
diff --git a/pkgs/development/tools/database/surrealdb-migrations/default.nix b/pkgs/development/tools/database/surrealdb-migrations/default.nix
index 39ecd0678ed1e..f0ebe63fdd204 100644
--- a/pkgs/development/tools/database/surrealdb-migrations/default.nix
+++ b/pkgs/development/tools/database/surrealdb-migrations/default.nix
@@ -59,7 +59,7 @@ rustPlatform.buildRustPackage rec {
   };
 
   meta = with lib; {
-    description = "An awesome SurrealDB migration tool, with a user-friendly CLI and a versatile Rust library that enables seamless integration into any project.";
+    description = "An awesome SurrealDB migration tool, with a user-friendly CLI and a versatile Rust library that enables seamless integration into any project";
     homepage = "https://crates.io/crates/surrealdb-migrations";
     mainProgram = "surrealdb-migrations";
     license = licenses.mit;
diff --git a/pkgs/development/tools/devbox/default.nix b/pkgs/development/tools/devbox/default.nix
index 4dc9e4d87fe5d..7680bb1d1ff7a 100644
--- a/pkgs/development/tools/devbox/default.nix
+++ b/pkgs/development/tools/devbox/default.nix
@@ -35,7 +35,7 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
-    description = "Instant, easy, predictable shells and containers.";
+    description = "Instant, easy, predictable shells and containers";
     homepage = "https://www.jetpack.io/devbox";
     license = licenses.asl20;
     maintainers = with maintainers; [ urandom lagoja ];
diff --git a/pkgs/development/tools/documentation/antora/default.nix b/pkgs/development/tools/documentation/antora/default.nix
index 34625022df6bf..7fdd3532934ef 100644
--- a/pkgs/development/tools/documentation/antora/default.nix
+++ b/pkgs/development/tools/documentation/antora/default.nix
@@ -25,7 +25,7 @@ buildNpmPackage rec {
   '';
 
   meta = with lib; {
-    description = "A modular documentation site generator. Designed for users of Asciidoctor.";
+    description = "A modular documentation site generator. Designed for users of Asciidoctor";
     mainProgram = "antora";
     homepage = "https://antora.org";
     license = licenses.mpl20;
diff --git a/pkgs/development/tools/espup/default.nix b/pkgs/development/tools/espup/default.nix
index 145f681f1cbc1..a64d982bdc2ca 100644
--- a/pkgs/development/tools/espup/default.nix
+++ b/pkgs/development/tools/espup/default.nix
@@ -68,7 +68,7 @@ rustPlatform.buildRustPackage rec {
   };
 
   meta = with lib; {
-    description = "Tool for installing and maintaining Espressif Rust ecosystem.";
+    description = "Tool for installing and maintaining Espressif Rust ecosystem";
     homepage = "https://github.com/esp-rs/espup/";
     license = with licenses; [ mit asl20 ];
     maintainers = with maintainers; [ knightpp beeb ];
diff --git a/pkgs/development/tools/fermyon-spin/default.nix b/pkgs/development/tools/fermyon-spin/default.nix
index a969baf411f80..e8d81eb82dc2d 100644
--- a/pkgs/development/tools/fermyon-spin/default.nix
+++ b/pkgs/development/tools/fermyon-spin/default.nix
@@ -56,7 +56,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "Framework for building, deploying, and running fast, secure, and composable cloud microservices with WebAssembly.";
+    description = "Framework for building, deploying, and running fast, secure, and composable cloud microservices with WebAssembly";
     homepage = "https://github.com/fermyon/spin";
     license = with licenses; [ asl20 ];
     mainProgram = "spin";
diff --git a/pkgs/development/tools/fprettify/default.nix b/pkgs/development/tools/fprettify/default.nix
index b2c37f163b26e..95e539d82b76c 100644
--- a/pkgs/development/tools/fprettify/default.nix
+++ b/pkgs/development/tools/fprettify/default.nix
@@ -20,7 +20,7 @@ python3Packages.buildPythonApplication rec {
   ];
 
   meta = with lib; {
-    description = "An auto-formatter for modern Fortran code that imposes strict whitespace formatting, written in Python.";
+    description = "An auto-formatter for modern Fortran code that imposes strict whitespace formatting, written in Python";
     mainProgram = "fprettify";
     homepage = "https://pypi.org/project/fprettify/";
     license = with licenses; [ gpl3Only ];
diff --git a/pkgs/development/tools/fsautocomplete/default.nix b/pkgs/development/tools/fsautocomplete/default.nix
index 1102580d459b2..14379b954c6af 100644
--- a/pkgs/development/tools/fsautocomplete/default.nix
+++ b/pkgs/development/tools/fsautocomplete/default.nix
@@ -29,7 +29,7 @@ buildDotnetModule rec {
   useDotnetFromEnv = true;
 
   meta = with lib; {
-    description = "The FsAutoComplete project (FSAC) provides a backend service for rich editing or intellisense features for editors.";
+    description = "The FsAutoComplete project (FSAC) provides a backend service for rich editing or intellisense features for editors";
     mainProgram = "fsautocomplete";
     homepage = "https://github.com/fsharp/FsAutoComplete";
     changelog = "https://github.com/fsharp/FsAutoComplete/releases/tag/v${version}";
diff --git a/pkgs/development/tools/gi-crystal/default.nix b/pkgs/development/tools/gi-crystal/default.nix
index 395efaa74241a..d5c19a21662ab 100644
--- a/pkgs/development/tools/gi-crystal/default.nix
+++ b/pkgs/development/tools/gi-crystal/default.nix
@@ -40,7 +40,7 @@ crystal.buildCrystalPackage rec {
 
 
   meta = with lib; {
-    description = "GI Crystal is a binding generator used to generate Crystal bindings for GObject based libraries using GObject Introspection.";
+    description = "GI Crystal is a binding generator used to generate Crystal bindings for GObject based libraries using GObject Introspection";
     homepage = "https://github.com/hugopl/gi-crystal";
     mainProgram = "gi-crystal";
     maintainers = with maintainers; [ sund3RRR ];
diff --git a/pkgs/development/tools/gocover-cobertura/default.nix b/pkgs/development/tools/gocover-cobertura/default.nix
index f1d005a47059e..bc8b4e9f0f2b3 100644
--- a/pkgs/development/tools/gocover-cobertura/default.nix
+++ b/pkgs/development/tools/gocover-cobertura/default.nix
@@ -20,7 +20,7 @@ buildGoModule rec {
 
   meta = with lib; {
     homepage = "https://github.com/boumenot/gocover-cobertura";
-    description = "This is a simple helper tool for generating XML output in Cobertura format for CIs like Jenkins and others from go tool cover output.";
+    description = "This is a simple helper tool for generating XML output in Cobertura format for CIs like Jenkins and others from go tool cover output";
     mainProgram = "gocover-cobertura";
     license = licenses.mit;
     maintainers = with maintainers; [ hmajid2301 ];
diff --git a/pkgs/development/tools/hostess/default.nix b/pkgs/development/tools/hostess/default.nix
index f15f67e3b7cb5..22cdb31d24598 100644
--- a/pkgs/development/tools/hostess/default.nix
+++ b/pkgs/development/tools/hostess/default.nix
@@ -16,7 +16,7 @@ buildGoModule rec {
   vendorHash = null;
 
   meta = with lib; {
-    description = "An idempotent command-line utility for managing your /etc/hosts* file.";
+    description = "An idempotent command-line utility for managing your /etc/hosts* file";
     mainProgram = "hostess";
     license = licenses.mit;
     maintainers = with maintainers; [ edlimerkaj ];
diff --git a/pkgs/development/tools/language-servers/verible/default.nix b/pkgs/development/tools/language-servers/verible/default.nix
index 4809b85e2e5be..6e6c7d621cbd0 100644
--- a/pkgs/development/tools/language-servers/verible/default.nix
+++ b/pkgs/development/tools/language-servers/verible/default.nix
@@ -87,7 +87,7 @@ buildBazelPackage rec {
   };
 
   meta = with lib; {
-    description = "Suite of SystemVerilog developer tools. Including a style-linter, indexer, formatter, and language server.";
+    description = "Suite of SystemVerilog developer tools. Including a style-linter, indexer, formatter, and language server";
     homepage = "https://github.com/chipsalliance/verible";
     license = licenses.asl20;
     maintainers = with maintainers; [ hzeller newam ];
diff --git a/pkgs/development/tools/misc/pest-ide-tools/default.nix b/pkgs/development/tools/misc/pest-ide-tools/default.nix
index c228508e4a60d..589b7bad30da6 100644
--- a/pkgs/development/tools/misc/pest-ide-tools/default.nix
+++ b/pkgs/development/tools/misc/pest-ide-tools/default.nix
@@ -31,7 +31,7 @@ rustPlatform.buildRustPackage rec {
   };
 
   meta = with lib; {
-    description = "IDE support for Pest, via the LSP.";
+    description = "IDE support for Pest, via the LSP";
     homepage = "https://pest.rs";
     license = with licenses; [ mit asl20 ];
     maintainers = with maintainers; [ nickhu ];
diff --git a/pkgs/development/tools/mix2nix/default.nix b/pkgs/development/tools/mix2nix/default.nix
index 4c7b7951370c7..b0d3a8c8107c9 100644
--- a/pkgs/development/tools/mix2nix/default.nix
+++ b/pkgs/development/tools/mix2nix/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   installPhase = "install -Dt $out/bin mix2nix";
 
   meta = with lib; {
-    description = "Generate nix expressions from mix.lock file.";
+    description = "Generate nix expressions from mix.lock file";
     mainProgram = "mix2nix";
     license = licenses.mit;
     maintainers = with maintainers; [ ydlr ] ++ teams.beam.members;
diff --git a/pkgs/development/tools/rcodesign/default.nix b/pkgs/development/tools/rcodesign/default.nix
index e3999ebff952d..49afae6f6f088 100644
--- a/pkgs/development/tools/rcodesign/default.nix
+++ b/pkgs/development/tools/rcodesign/default.nix
@@ -34,7 +34,7 @@ rustPlatform.buildRustPackage rec {
   ];
 
   meta = with lib; {
-    description = "A cross-platform CLI interface to interact with Apple code signing.";
+    description = "A cross-platform CLI interface to interact with Apple code signing";
     mainProgram = "rcodesign";
     longDescription = ''
       rcodesign provides various commands to interact with Apple signing,
diff --git a/pkgs/development/tools/rover/default.nix b/pkgs/development/tools/rover/default.nix
index a540a8c6448d2..98399a0c21221 100644
--- a/pkgs/development/tools/rover/default.nix
+++ b/pkgs/development/tools/rover/default.nix
@@ -46,7 +46,7 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with lib; {
-    description = "A CLI for interacting with ApolloGraphQL's developer tooling, including managing self-hosted and GraphOS graphs.";
+    description = "A CLI for interacting with ApolloGraphQL's developer tooling, including managing self-hosted and GraphOS graphs";
     mainProgram = "rover";
     homepage = "https://www.apollographql.com/docs/rover";
     license = licenses.mit;
diff --git a/pkgs/development/tools/rust/bootimage/default.nix b/pkgs/development/tools/rust/bootimage/default.nix
index 9da7aeaa8cc34..0a9fa12365458 100644
--- a/pkgs/development/tools/rust/bootimage/default.nix
+++ b/pkgs/development/tools/rust/bootimage/default.nix
@@ -18,7 +18,7 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "03jximwqgjq7359c5mxbyfja2d04y57h34f87aby8jy0lz99jy2x";
 
   meta = with lib; {
-    description = "Creates a bootable disk image from a Rust OS kernel.";
+    description = "Creates a bootable disk image from a Rust OS kernel";
     homepage = "https://github.com/rust-osdev/bootimage";
     license = with licenses; [ asl20 mit ];
     maintainers = with maintainers; [ dbeckwith ];
diff --git a/pkgs/development/tools/rust/cargo-hakari/default.nix b/pkgs/development/tools/rust/cargo-hakari/default.nix
index 6cf225e8de605..6ae5123da7cfa 100644
--- a/pkgs/development/tools/rust/cargo-hakari/default.nix
+++ b/pkgs/development/tools/rust/cargo-hakari/default.nix
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
   cargoTestFlags = [ "-p" "cargo-hakari" ];
 
   meta = with lib; {
-    description = "Manage workspace-hack packages to speed up builds in large workspaces.";
+    description = "Manage workspace-hack packages to speed up builds in large workspaces";
     mainProgram = "cargo-hakari";
     longDescription = ''
       cargo hakari is a command-line application to manage workspace-hack crates.
diff --git a/pkgs/development/tools/rust/cargo-risczero/default.nix b/pkgs/development/tools/rust/cargo-risczero/default.nix
index 51969c9fef967..ead0103d3f659 100644
--- a/pkgs/development/tools/rust/cargo-risczero/default.nix
+++ b/pkgs/development/tools/rust/cargo-risczero/default.nix
@@ -32,7 +32,7 @@ rustPlatform.buildRustPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "Cargo extension to help create, manage, and test RISC Zero projects.";
+    description = "Cargo extension to help create, manage, and test RISC Zero projects";
     mainProgram = "cargo-risczero";
     homepage = "https://risczero.com";
     license = with licenses; [ asl20 ];
diff --git a/pkgs/development/tools/rust/cargo2junit/default.nix b/pkgs/development/tools/rust/cargo2junit/default.nix
index 6e10cc1fcb35a..d674c5b040713 100644
--- a/pkgs/development/tools/rust/cargo2junit/default.nix
+++ b/pkgs/development/tools/rust/cargo2junit/default.nix
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
   cargoHash = "sha256-u5Pd967qxjqFl9fV/KkClLDBwKql7p66WqbIVBvWKuM=";
 
   meta = with lib; {
-    description = "Converts cargo's json output (from stdin) to JUnit XML (to stdout).";
+    description = "Converts cargo's json output (from stdin) to JUnit XML (to stdout)";
     mainProgram = "cargo2junit";
     homepage = "https://github.com/johnterickson/cargo2junit";
     license = licenses.mit;
diff --git a/pkgs/development/tools/rust/crate2nix/default.nix b/pkgs/development/tools/rust/crate2nix/default.nix
index 175e79e639c34..a5fb7e19f1218 100644
--- a/pkgs/development/tools/rust/crate2nix/default.nix
+++ b/pkgs/development/tools/rust/crate2nix/default.nix
@@ -42,7 +42,7 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with lib; {
-    description = "A Nix build file generator for Rust crates.";
+    description = "A Nix build file generator for Rust crates";
     mainProgram = "crate2nix";
     longDescription = ''
       Crate2nix generates Nix files from Cargo.toml/lock files
diff --git a/pkgs/development/tools/rust/duckscript/default.nix b/pkgs/development/tools/rust/duckscript/default.nix
index 41e394bda4408..6f8092dd0fc30 100644
--- a/pkgs/development/tools/rust/duckscript/default.nix
+++ b/pkgs/development/tools/rust/duckscript/default.nix
@@ -27,7 +27,7 @@ rustPlatform.buildRustPackage rec {
   cargoHash = "sha256-bBqcHETEWooMgQeqPOZIK/77DdTtGq1JusBKoRj5K6w=";
 
   meta = with lib; {
-    description = "Simple, extendable and embeddable scripting language.";
+    description = "Simple, extendable and embeddable scripting language";
     homepage = "https://github.com/sagiegurari/duckscript";
     license = licenses.asl20;
     maintainers = with maintainers; [ mkg20001 ];
diff --git a/pkgs/development/tools/scenebuilder/default.nix b/pkgs/development/tools/scenebuilder/default.nix
index 14d6c87259048..bf6745edcec9c 100644
--- a/pkgs/development/tools/scenebuilder/default.nix
+++ b/pkgs/development/tools/scenebuilder/default.nix
@@ -89,7 +89,7 @@ maven'.buildMavenPackage rec {
 
   meta = with lib; {
     changelog = "https://github.com/gluonhq/scenebuilder/releases/tag/${src.rev}";
-    description = "A visual, drag'n'drop, layout tool for designing JavaFX application user interfaces.";
+    description = "A visual, drag'n'drop, layout tool for designing JavaFX application user interfaces";
     homepage = "https://gluonhq.com/products/scene-builder/";
     license = licenses.bsd3;
     mainProgram = "scenebuilder";
diff --git a/pkgs/development/tools/scenic-view/default.nix b/pkgs/development/tools/scenic-view/default.nix
index ff09f0cb4707e..84d47390aa151 100644
--- a/pkgs/development/tools/scenic-view/default.nix
+++ b/pkgs/development/tools/scenic-view/default.nix
@@ -104,7 +104,7 @@ in stdenv.mkDerivation rec {
 
   meta = with lib; {
     broken = stdenv.isDarwin;
-    description = "JavaFx application to visualize and modify the scenegraph of running JavaFx applications.";
+    description = "JavaFx application to visualize and modify the scenegraph of running JavaFx applications";
     mainProgram = "scenic-view";
     longDescription = ''
       A JavaFX application designed to make it simple to understand the current state of your application scenegraph
diff --git a/pkgs/development/tools/subxt/default.nix b/pkgs/development/tools/subxt/default.nix
index b471f0ca5e856..6d551fa7348ce 100644
--- a/pkgs/development/tools/subxt/default.nix
+++ b/pkgs/development/tools/subxt/default.nix
@@ -34,7 +34,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with lib; {
     homepage = "https://github.com/paritytech/subxt";
-    description = "Submit transactions to a substrate node via RPC.";
+    description = "Submit transactions to a substrate node via RPC";
     mainProgram = "subxt";
     license = with licenses; [ gpl3Plus asl20 ];
     maintainers = [ maintainers.FlorianFranzen ];
diff --git a/pkgs/development/tools/turbogit/default.nix b/pkgs/development/tools/turbogit/default.nix
index 2680d10f1dbb8..390b618ce7198 100644
--- a/pkgs/development/tools/turbogit/default.nix
+++ b/pkgs/development/tools/turbogit/default.nix
@@ -30,7 +30,7 @@ buildGoModule rec {
   '';
 
   meta = with lib; {
-    description = "Keep your git workflow clean without headache.";
+    description = "Keep your git workflow clean without headache";
     longDescription = ''
       turbogit (tug) is a cli tool built to help you deal with your day-to-day git work.
       turbogit enforces convention (e.g. The Conventional Commits) but tries to keep things simple and invisible for you.
diff --git a/pkgs/development/tools/turso-cli/default.nix b/pkgs/development/tools/turso-cli/default.nix
index 322d46ac2f563..4d2ed81a2f0f3 100644
--- a/pkgs/development/tools/turso-cli/default.nix
+++ b/pkgs/development/tools/turso-cli/default.nix
@@ -39,7 +39,7 @@ buildGoModule rec {
   passthru.updateScript = nix-update-script { };
 
   meta = with lib; {
-    description = "This is the command line interface (CLI) to Turso.";
+    description = "This is the command line interface (CLI) to Turso";
     homepage = "https://turso.tech";
     mainProgram = "turso";
     license = licenses.mit;
diff --git a/pkgs/development/tools/worker-build/default.nix b/pkgs/development/tools/worker-build/default.nix
index 8f78048e8e19a..fd7c1e378603c 100644
--- a/pkgs/development/tools/worker-build/default.nix
+++ b/pkgs/development/tools/worker-build/default.nix
@@ -26,7 +26,7 @@ rustPlatform.buildRustPackage rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "This is a tool to be used as a custom build command for a Cloudflare Workers `workers-rs` project.";
+    description = "This is a tool to be used as a custom build command for a Cloudflare Workers `workers-rs` project";
     mainProgram = "worker-build";
     homepage = "https://github.com/cloudflare/workers-rs";
     license = with licenses; [ asl20 /* or */ mit ];
diff --git a/pkgs/development/tools/yamlfmt/default.nix b/pkgs/development/tools/yamlfmt/default.nix
index 3b7fbc20ca389..a79d9e7fe25ba 100644
--- a/pkgs/development/tools/yamlfmt/default.nix
+++ b/pkgs/development/tools/yamlfmt/default.nix
@@ -16,7 +16,7 @@ buildGoModule rec {
   doCheck = false;
 
   meta = with lib; {
-    description = "An extensible command line tool or library to format yaml files.";
+    description = "An extensible command line tool or library to format yaml files";
     homepage = "https://github.com/google/yamlfmt";
     license = licenses.asl20;
     maintainers = with maintainers; [ sno2wman ];
diff --git a/pkgs/development/tools/yarn-berry/default.nix b/pkgs/development/tools/yarn-berry/default.nix
index b7caeb4f823ed..4b1ff6de268f5 100644
--- a/pkgs/development/tools/yarn-berry/default.nix
+++ b/pkgs/development/tools/yarn-berry/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation (finalAttrs: {
 
   meta = with lib; {
     homepage = "https://yarnpkg.com/";
-    description = "Fast, reliable, and secure dependency management.";
+    description = "Fast, reliable, and secure dependency management";
     license = licenses.bsd2;
     maintainers = with maintainers; [ ryota-ka pyrox0 DimitarNestorov ];
     platforms = platforms.unix;
diff --git a/pkgs/development/web/publii/default.nix b/pkgs/development/web/publii/default.nix
index 9792f2686454e..e81a7294e0cce 100644
--- a/pkgs/development/web/publii/default.nix
+++ b/pkgs/development/web/publii/default.nix
@@ -87,7 +87,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    description = "Static Site CMS with GUI to build privacy-focused SEO-friendly website.";
+    description = "Static Site CMS with GUI to build privacy-focused SEO-friendly website";
     mainProgram = "Publii";
     longDescription = ''
       Creating a website doesn't have to be complicated or expensive. With Publii, the most