···16021602 If necessary, `pname` has to be given a different value within `fetchPypi`.
16031603* Attribute names in `python-packages.nix` should be sorted alphanumerically to
16041604 avoid merge conflicts and ease locating attributes.
16051605+16061606+## Package set maintenance
16071607+16081608+The whole Python package set has a lot of packages that do not see regular
16091609+updates, because they either are a very fragile component in the Python
16101610+ecosystem, like for example the `hypothesis` package, or packages that have
16111611+no maintainer, so maintenance falls back to the package set maintainers.
16121612+16131613+### Updating packages in bulk
16141614+16151615+There is a tool to update alot of python libraries in bulk, it exists at
16161616+`maintainers/scripts/update-python-libraries` with this repository.
16171617+16181618+It can quickly update minor or major versions for all packages selected
16191619+and create update commits, and supports the `fetchPypi`, `fetchurl` and
16201620+`fetchFromGitHub` fetchers. When updating lots of packages that are
16211621+hosted on GitHub, exporting a `GITHUB_API_TOKEN` is highly recommended.
16221622+16231623+Updating packages in bulk leads to lots of breakages, which is why a
16241624+stabilization period on the `python-unstable` branch is required.
16251625+16261626+Once the branch is sufficiently stable it should normally be merged
16271627+into the `staging` branch.
16281628+16291629+An exemplary call to update all python libraries between minor versions
16301630+would be:
16311631+16321632+```ShellSession
16331633+$ maintainers/scripts/update-python-libraries --target minor --commit --use-pkgs-prefix pkgs/development/python-modules/**/default.nix
16341634+```
+50-20
nixos/modules/config/fonts/fonts.nix
···2233with lib;
4455+let
66+ # A scalable variant of the X11 "core" cursor
77+ #
88+ # If not running a fancy desktop environment, the cursor is likely set to
99+ # the default `cursor.pcf` bitmap font. This is 17px wide, so it's very
1010+ # small and almost invisible on 4K displays.
1111+ fontcursormisc_hidpi = pkgs.xorg.fontcursormisc.overrideAttrs (old:
1212+ let
1313+ # The scaling constant is 230/96: the scalable `left_ptr` glyph at
1414+ # about 23 points is rendered as 17px, on a 96dpi display.
1515+ # Note: the XLFD font size is in decipoints.
1616+ size = 2.39583 * config.services.xserver.dpi;
1717+ sizeString = builtins.head (builtins.split "\\." (toString size));
1818+ in
1919+ {
2020+ postInstall = ''
2121+ alias='cursor -xfree86-cursor-medium-r-normal--0-${sizeString}-0-0-p-0-adobe-fontspecific'
2222+ echo "$alias" > $out/lib/X11/fonts/Type1/fonts.alias
2323+ '';
2424+ });
2525+2626+ hasHidpi =
2727+ config.hardware.video.hidpi.enable &&
2828+ config.services.xserver.dpi != null;
2929+3030+ defaultFonts =
3131+ [ pkgs.dejavu_fonts
3232+ pkgs.freefont_ttf
3333+ pkgs.gyre-fonts # TrueType substitutes for standard PostScript fonts
3434+ pkgs.liberation_ttf
3535+ pkgs.unifont
3636+ pkgs.noto-fonts-emoji
3737+ ];
3838+3939+ defaultXFonts =
4040+ [ (if hasHidpi then fontcursormisc_hidpi else pkgs.xorg.fontcursormisc)
4141+ pkgs.xorg.fontmiscmisc
4242+ ] ++ optionals (config.nixpkgs.config.allowUnfree or false)
4343+ [ # these are unfree, and will make usage with xserver fail
4444+ pkgs.xorg.fontbhlucidatypewriter100dpi
4545+ pkgs.xorg.fontbhlucidatypewriter75dpi
4646+ pkgs.xorg.fontbh100dpi
4747+ ];
4848+4949+in
5050+551{
652 imports = [
753 (mkRemovedOptionModule [ "fonts" "enableCoreFonts" ] "Use fonts.fonts = [ pkgs.corefonts ]; instead.")
···32783379 };
34803535- config = {
3636-3737- fonts.fonts = mkIf config.fonts.enableDefaultFonts
3838- ([
3939- pkgs.dejavu_fonts
4040- pkgs.freefont_ttf
4141- pkgs.gyre-fonts # TrueType substitutes for standard PostScript fonts
4242- pkgs.liberation_ttf
4343- pkgs.xorg.fontmiscmisc
4444- pkgs.xorg.fontcursormisc
4545- pkgs.unifont
4646- pkgs.noto-fonts-emoji
4747- ] ++ lib.optionals (config.nixpkgs.config.allowUnfree or false) [
4848- # these are unfree, and will make usage with xserver fail
4949- pkgs.xorg.fontbhlucidatypewriter100dpi
5050- pkgs.xorg.fontbhlucidatypewriter75dpi
5151- pkgs.xorg.fontbh100dpi
5252- ]);
5353-5454- };
8181+ config = mkMerge [
8282+ { fonts.fonts = mkIf config.fonts.enableDefaultFonts defaultFonts; }
8383+ { fonts.fonts = mkIf config.services.xserver.enable defaultXFonts; }
8484+ ];
55855686}
···77, bridge-utils
88, conntrack-tools
99, buildGoPackage
1010-, git
1110, runc
1211, kmod
1312, libseccomp
···4443# Those pieces of software we entirely ignore upstream's handling of, and just
4544# make sure they're in the path if desired.
4645let
4747- k3sVersion = "1.21.3+k3s1"; # k3s git tag
4848- k3sCommit = "1d1f220fbee9cdeb5416b76b707dde8c231121f2"; # k3s git commit at the above version
4646+ k3sVersion = "1.21.4+k3s1"; # k3s git tag
4747+ k3sCommit = "3e250fdbab72d88f7e6aae57446023a0567ffc97"; # k3s git commit at the above version
49485049 traefikChartVersion = "9.18.2"; # taken from ./scripts/download at TRAEFIK_VERSION
5150 k3sRootVersion = "0.9.1"; # taken from ./scripts/download at ROOT_VERSION
···102101 k3sRepo = fetchgit {
103102 url = "https://github.com/k3s-io/k3s";
104103 rev = "v${k3sVersion}";
105105- sha256 = "sha256-K4HVXFp5cpByEO4dUwmpzOuhsGh1k7X6k5aShCorTjg=";
104104+ sha256 = "1w7drvk0bmlmqrxh1y6dxjy7dk6bdrl72pkd25lc1ir6wbzb05h9";
106105 };
107106 # Stage 1 of the k3s build:
108107 # Let's talk about how k3s is structured.