diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix index b0a766dd055f..3b2e69bd37c3 100644 --- a/nixos/modules/programs/sway.nix +++ b/nixos/modules/programs/sway.nix @@ -26,7 +26,7 @@ let }; }; - swayPackage = pkgs.sway.override { + defaultSwayPackage = pkgs.sway.override { extraSessionCommands = cfg.extraSessionCommands; extraOptions = cfg.extraOptions; withBaseWrapper = cfg.wrapperFeatures.base; @@ -42,6 +42,19 @@ in { and "man 5 sway" for more information''); + package = mkOption { + type = with types; nullOr package; + default = defaultSwayPackage; + defaultText = literalExpression "pkgs.sway"; + description = lib.mdDoc '' + Sway package to use. Will override the options + 'wrapperFeatures', 'extraSessionCommands', and 'extraOptions'. + Set to null to not add any Sway package to your + path. This should be done if you want to use the Home Manager Sway + module to install Sway. + ''; + }; + wrapperFeatures = mkOption { type = wrapperOptions; default = { }; @@ -121,16 +134,17 @@ in { } ]; environment = { - systemPackages = [ swayPackage ] ++ cfg.extraPackages; + systemPackages = optional (cfg.package != null) cfg.package ++ cfg.extraPackages; # Needed for the default wallpaper: - pathsToLink = [ "/share/backgrounds/sway" ]; + pathsToLink = optionals (cfg.package != null) [ "/share/backgrounds/sway" ]; etc = { - "sway/config".source = mkOptionDefault "${swayPackage}/etc/sway/config"; "sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" '' # Import the most important environment variables into the D-Bus and systemd # user environments (e.g. required for screen sharing and Pinentry prompts): exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP ''; + } // optionalAttrs (cfg.package != null) { + "sway/config".source = mkOptionDefault "${cfg.package}/etc/sway/config"; }; }; security.polkit.enable = true; @@ -139,7 +153,7 @@ in { fonts.enableDefaultFonts = mkDefault true; programs.dconf.enable = mkDefault true; # To make a Sway session available if a display manager like SDDM is enabled: - services.xserver.displayManager.sessionPackages = [ swayPackage ]; + services.xserver.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ]; programs.xwayland.enable = mkDefault true; # For screen sharing (this option only has an effect with xdg.portal.enable): xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-wlr ]; diff --git a/nixos/tests/vscodium.nix b/nixos/tests/vscodium.nix index 37bb649889b4..3eda8b6cfb20 100644 --- a/nixos/tests/vscodium.nix +++ b/nixos/tests/vscodium.nix @@ -33,13 +33,6 @@ let }; enableOCR = true; - # testScriptWithTypes:55: error: Item "function" of - # "Union[Callable[[Callable[..., Any]], ContextManager[Any]], ContextManager[Any]]" - # has no attribute "__enter__" - # with codium_running: - # ^ - skipTypeCheck = true; - testScript = '' @polling_condition def codium_running(): @@ -50,10 +43,10 @@ let machine.wait_for_unit('graphical.target') - codium_running.wait() - with codium_running: + codium_running.wait() # type: ignore[union-attr] + with codium_running: # type: ignore[union-attr] # Wait until vscodium is visible. "File" is in the menu bar. - machine.wait_for_text('Get Started') + machine.wait_for_text('Welcome') machine.screenshot('start_screen') test_string = 'testfile' diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix index 519f59a1d89d..10eede334c46 100644 --- a/pkgs/applications/audio/praat/default.nix +++ b/pkgs/applications/audio/praat/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "praat"; - version = "6.3.05"; + version = "6.3.06"; src = fetchFromGitHub { owner = "praat"; repo = "praat"; rev = "v${version}"; - sha256 = "sha256-0e225cmP0CSYjRYNEXi4Oqq9o8XR2N7bNS1X5x+mQKw="; + sha256 = "sha256-KwJ8ia1yQmmG+N44ipvGCbuoR2cL03STSTKzUwlDqms="; }; configurePhase = '' diff --git a/pkgs/applications/blockchains/stellar-core/default.nix b/pkgs/applications/blockchains/stellar-core/default.nix index 8f3fd4b1c886..9d984803d219 100644 --- a/pkgs/applications/blockchains/stellar-core/default.nix +++ b/pkgs/applications/blockchains/stellar-core/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "stellar-core"; - version = "19.6.0"; + version = "19.7.0"; src = fetchFromGitHub { owner = "stellar"; repo = pname; rev = "v${version}"; - sha256 = "sha256-lDefmPZM8ow6t5CpNBxef+9BoT773p5UgeMhgF+em2w="; + sha256 = "sha256-VfaP4EIVsu5JTAV7AX0Ymo44/TD8eUB61CViwf6Hfqw="; fetchSubmodules = true; }; diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix index 1b4f4508fbf0..c2036566b384 100644 --- a/pkgs/applications/editors/vscode/generic.nix +++ b/pkgs/applications/editors/vscode/generic.nix @@ -135,6 +135,9 @@ let # this fixes bundled ripgrep chmod +x resources/app/node_modules/@vscode/ripgrep/bin/rg + + # see https://github.com/gentoo/gentoo/commit/4da5959 + chmod +x resources/app/node_modules/node-pty/build/Release/spawn-helper ''; inherit meta; diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix index 08219714061d..cd89ab7d783d 100644 --- a/pkgs/applications/editors/vscode/vscodium.nix +++ b/pkgs/applications/editors/vscode/vscodium.nix @@ -15,11 +15,11 @@ let archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz"; sha256 = { - x86_64-linux = "0mm6xa0kizgg2f6cql6jk8h83pn89h6q7rrs1kypvj3j0x6ysqsg"; - x86_64-darwin = "1g9syvinj2mx292wrnrdn2znqhg17mrjqij0z1ilag5bi4xmzhcj"; - aarch64-linux = "0xbq6fla0lxan08jgmsva91cbcv8rhzd7mqixrm1lsqh4h0wpssz"; - aarch64-darwin = "1b4a56j256rib1997g9wwiak206axkppl124qg021vyab42x8rim"; - armv7l-linux = "0gb96hi854kyh8694j9mbgl78f4y68czkwmjxhzb054l5b4adjla"; + x86_64-linux = "1qayw19mb7f0gcgcvl57gpacrqsyx2jvc6s63vzbx8jmf5qnk71a"; + x86_64-darwin = "02z9026kp66lx6pll46xx790jj7c7wh2ca7xim373x90k8hm4kwz"; + aarch64-linux = "1izqhzvv46p05k1z2yg380ddwmar4w2pbrd0dyvkdysvp166y931"; + aarch64-darwin = "1zcr653ssck4nc3vf04l6bilnjdsiqscw62g1wzbyk6s50133cx8"; + armv7l-linux = "0n914rcfn2m9zsbnkd82cmw88qbpssv6jk3g8ig3wqlircbgrw0h"; }.${system} or throwSystem; sourceRoot = if stdenv.isDarwin then "" else "."; @@ -29,7 +29,7 @@ in # Please backport all compatible updates to the stable release. # This is important for the extension ecosystem. - version = "1.74.3.23010"; + version = "1.75.0.23033"; pname = "vscodium"; executableName = "codium"; diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix index 021426b25113..7b820c0e98a4 100644 --- a/pkgs/applications/graphics/ImageMagick/default.nix +++ b/pkgs/applications/graphics/ImageMagick/default.nix @@ -30,6 +30,7 @@ , Foundation , testers , imagemagick +, python3 }: assert libXtSupport -> libX11Support; @@ -122,8 +123,10 @@ stdenv.mkDerivation rec { done ''; - passthru.tests.version = - testers.testVersion { package = imagemagick; }; + passthru.tests = { + version = testers.testVersion { package = imagemagick; }; + inherit (python3.pkgs) img2pdf; + }; meta = with lib; { homepage = "http://www.imagemagick.org/"; diff --git a/pkgs/applications/misc/klayout/default.nix b/pkgs/applications/misc/klayout/default.nix index 0386b25ee422..dd3e5406ca32 100644 --- a/pkgs/applications/misc/klayout/default.nix +++ b/pkgs/applications/misc/klayout/default.nix @@ -5,13 +5,13 @@ mkDerivation rec { pname = "klayout"; - version = "0.28.3"; + version = "0.28.4"; src = fetchFromGitHub { owner = "KLayout"; repo = "klayout"; rev = "v${version}"; - hash = "sha256-keC+QLV/iEEGFDdy/Vt2pCr55qbqQzcx3HokdDi+xSU="; + hash = "sha256-6RIzgC/PA2DqO24vKu+d/+GttufUbIH+k9GZe09M0vM="; }; postPatch = '' diff --git a/pkgs/applications/misc/pgmodeler/default.nix b/pkgs/applications/misc/pgmodeler/default.nix index 96cc51fceb78..1b42cd46a6b6 100644 --- a/pkgs/applications/misc/pgmodeler/default.nix +++ b/pkgs/applications/misc/pgmodeler/default.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { owner = "pgmodeler"; repo = "pgmodeler"; rev = "v${version}"; - sha256 = "sha256-Lim9iQYdmulwZEIayoBGoAmQ7rysTEEof5iXy3kfKXs="; + sha256 = "sha256-aDmaKf3iLBFD28n2u/QOf/GkgE64Birn0x3Kj5Qx2sg="; }; nativeBuildInputs = [ pkg-config qmake wrapQtAppsHook ]; diff --git a/pkgs/applications/misc/thedesk/default.nix b/pkgs/applications/misc/thedesk/default.nix index a7a184e80037..1fb2912d64d2 100644 --- a/pkgs/applications/misc/thedesk/default.nix +++ b/pkgs/applications/misc/thedesk/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "thedesk"; - version = "24.0.7"; + version = "24.0.8"; src = fetchurl { url = "https://github.com/cutls/TheDesk/releases/download/v${version}/${pname}_${version}_amd64.deb"; - sha256 = "sha256-EG5TMhYvECXahIbB25gP40iNQpStcrgaJW3ld9x02/E="; + sha256 = "sha256-nxwSJ/rQJYMNrtTWSmqcrJQwMK8zRwIG4jccVyb7OsQ="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/yewtube/default.nix b/pkgs/applications/misc/yewtube/default.nix index f217c7b0e9a5..c7dc0b6071b0 100644 --- a/pkgs/applications/misc/yewtube/default.nix +++ b/pkgs/applications/misc/yewtube/default.nix @@ -2,13 +2,13 @@ python3Packages.buildPythonApplication rec { pname = "yewtube"; - version = "2.9.0"; + version = "2.9.2"; src = fetchFromGitHub { owner = "iamtalhaasghar"; repo = "yewtube"; - rev = "v${version}"; - hash = "sha256-8GL2ZvRHtnnLZ07nQk3irJUj+XLL+pyUUA+JJPICPRA="; + rev = "refs/tags/v${version}"; + hash = "sha256-5+0OaoUan9IFEqtMvpvtkfpd7IbFJhG52oROER5TY20="; }; postPatch = '' diff --git a/pkgs/applications/networking/cluster/stern/default.nix b/pkgs/applications/networking/cluster/stern/default.nix index 7459bba1697b..ee045f5782a9 100644 --- a/pkgs/applications/networking/cluster/stern/default.nix +++ b/pkgs/applications/networking/cluster/stern/default.nix @@ -4,16 +4,16 @@ let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; in buildGoModule rec { pname = "stern"; - version = "1.22.0"; + version = "1.23.0"; src = fetchFromGitHub { owner = "stern"; repo = "stern"; rev = "v${version}"; - sha256 = "sha256-xO4I4fNf14ltiSnFnAhM8VYBw4JKB0RSQziSshZOFBo="; + sha256 = "sha256-tqp2H8aWPBgje1zIK673cbr+DShhTQL9VQ0dEL/he7s="; }; - vendorSha256 = "sha256-tNx1BvZBblyLavFslhqj9DCyfcgbl6HxlZ7zceK1a0w="; + vendorHash = "sha256-ud07lWHwQfAHgVenUApwrfxmTjJKVm+pOExdR9pZFxA="; subPackages = [ "." ]; diff --git a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix index 904e47695d5b..35846f4b7e45 100644 --- a/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix +++ b/pkgs/applications/networking/instant-messengers/signalbackup-tools/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "signalbackup-tools"; - version = "20230128-1"; + version = "20230203"; src = fetchFromGitHub { owner = "bepaald"; repo = pname; rev = version; - sha256 = "sha256-wYhftShCL9XozK0c7OLijqzveDvEvv9stpw+6CQND/Y="; + sha256 = "sha256-xXIdXv2U5VpRSuJ9Kl6HMDBZGpXRYGPZFBBk9QYODtU="; }; postPatch = '' diff --git a/pkgs/applications/networking/seaweedfs/default.nix b/pkgs/applications/networking/seaweedfs/default.nix index f51c8d051a51..5036eb998bd2 100644 --- a/pkgs/applications/networking/seaweedfs/default.nix +++ b/pkgs/applications/networking/seaweedfs/default.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "seaweedfs"; - version = "3.40"; + version = "3.41"; src = fetchFromGitHub { owner = "seaweedfs"; repo = "seaweedfs"; rev = version; - hash = "sha256-eU1RnLjPSAdtv+EqVnIpOLsDfBjx4WHFnHHkGZfr130="; + hash = "sha256-sNeuIcRJ249F9m7NBi5Vh4HMhWwDpNHAZsit1auVI5U="; }; - vendorHash = "sha256-tKq5QEd7f4q7q2EDNjNrlatQ7+lXF9ya9L0iTP/AXSo="; + vendorHash = "sha256-ZtHgZ0Mur102H2EvifsK3HYUQaI1dFMh/6eiJO09HBc="; subPackages = [ "weed" ]; diff --git a/pkgs/applications/networking/warp/default.nix b/pkgs/applications/networking/warp/default.nix index 0c47fc323a64..23c7916354fd 100644 --- a/pkgs/applications/networking/warp/default.nix +++ b/pkgs/applications/networking/warp/default.nix @@ -17,14 +17,14 @@ stdenv.mkDerivation rec { pname = "warp"; - version = "0.3.2"; + version = "0.4"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = pname; rev = "v${version}"; - hash = "sha256-oKkZC9fi5xPnLTI00MnG2gMjzMZHMNFI77ztbR4KQo4="; + hash = "sha256-c8X0kedfM8DPTEQAbh8cXIfEvxG2cdUD3twVHs0/k7U"; }; postPatch = '' @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - hash = "sha256-sbyAyjxpol2SBxoLUsiPGfkP2diBPgJW0vEDHYWgmLU="; + hash = "sha256-TS/Q6T3bPjkk1bfINTR6bcPy8fnbAxbKJUrx2pYsPWY="; }; nativeBuildInputs = [ @@ -62,7 +62,7 @@ stdenv.mkDerivation rec { description = "Fast and secure file transfer"; homepage = "https://apps.gnome.org/app/app.drey.Warp"; license = lib.licenses.gpl3Only; - maintainers = with lib.maintainers; [ dotlambda ]; + maintainers = with lib.maintainers; [ dotlambda foo-dogsquared ]; platforms = lib.platforms.linux; }; } diff --git a/pkgs/applications/office/treesheets/default.nix b/pkgs/applications/office/treesheets/default.nix index 5566906919a8..17b4089ed702 100644 --- a/pkgs/applications/office/treesheets/default.nix +++ b/pkgs/applications/office/treesheets/default.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation rec { pname = "treesheets"; - version = "unstable-2023-01-23"; + version = "unstable-2023-01-31"; src = fetchFromGitHub { owner = "aardappel"; repo = "treesheets"; - rev = "f676cba7f9749825744ec705ee58b9fbea47db51"; - sha256 = "Zx1fGicCuX+HJm2QFSYQhcd9Ibg3qj5h9NPlSNNVLag="; + rev = "44206849d03c8983e41d2aeca70a06e04365d88d"; + sha256 = "bUyM0zWVO7HWBiWi0mhkDlVxgqMHoFiR78XpiG8q/V4="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/science/astronomy/kstars/default.nix b/pkgs/applications/science/astronomy/kstars/default.nix index d74ad2c4e878..3769948fd3ef 100644 --- a/pkgs/applications/science/astronomy/kstars/default.nix +++ b/pkgs/applications/science/astronomy/kstars/default.nix @@ -14,11 +14,11 @@ mkDerivation rec { pname = "kstars"; - version = "3.6.1"; + version = "3.6.3"; src = fetchurl { url = "mirror://kde/stable/kstars/kstars-${version}.tar.xz"; - sha256 = "sha256-WWbtfqvGd13+a41z8/MjlchllpuhLX08nu15OlYUeuI="; + sha256 = "sha256-sve9q4iM/Y8+K64Ceby/KGx5Un5G0o5cCnIxJkXTgug="; }; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; diff --git a/pkgs/applications/science/biology/igv/default.nix b/pkgs/applications/science/biology/igv/default.nix index f6d767235b7f..ec97f0e6aa31 100644 --- a/pkgs/applications/science/biology/igv/default.nix +++ b/pkgs/applications/science/biology/igv/default.nix @@ -2,10 +2,10 @@ stdenv.mkDerivation rec { pname = "igv"; - version = "2.15.5"; + version = "2.16.0"; src = fetchzip { url = "https://data.broadinstitute.org/igv/projects/downloads/${lib.versions.majorMinor version}/IGV_${version}.zip"; - sha256 = "sha256-AKKMtR0hU2O84mRJxxsXNCYHeW8d6t3XJpzOKKaxAWw="; + sha256 = "sha256-pfFUtPgHzTWMm3sh4un8SwSYF8HM30HbAQznxlu4Irw="; }; installPhase = '' diff --git a/pkgs/applications/terminal-emulators/kitty/default.nix b/pkgs/applications/terminal-emulators/kitty/default.nix index f2c146fa8db2..9725e8a4f96b 100644 --- a/pkgs/applications/terminal-emulators/kitty/default.nix +++ b/pkgs/applications/terminal-emulators/kitty/default.nix @@ -97,8 +97,7 @@ buildPythonApplication rec { hardeningDisable = lib.optional stdenv.cc.isClang "strictoverflow"; CGO_ENABLED = 0; - GO_FLAGS = "-trimpath"; - disallowedReferences = [ go ]; + GOFLAGS = "-trimpath"; configurePhase = let goModules = (buildGoModule { diff --git a/pkgs/build-support/fetchmavenartifact/default.nix b/pkgs/build-support/fetchmavenartifact/default.nix index efdbd0decf95..b1d8593e72d4 100644 --- a/pkgs/build-support/fetchmavenartifact/default.nix +++ b/pkgs/build-support/fetchmavenartifact/default.nix @@ -43,13 +43,15 @@ let (lib.replaceStrings ["."] ["_"] artifactId) "-" version ]; + suffix = if isNull classifier then "" else "-${classifier}"; + filename = "${artifactId}-${version}${suffix}.jar"; mkJarUrl = repoUrl: lib.concatStringsSep "/" [ (lib.removeSuffix "/" repoUrl) (lib.replaceStrings ["."] ["/"] groupId) artifactId version - "${artifactId}-${version}${lib.optionalString (!isNull classifier) "-${classifier}"}.jar" + filename ]; urls_ = if url != "" then [url] @@ -68,7 +70,7 @@ in # packages packages that mention this derivation in their buildInputs. installPhase = '' mkdir -p $out/share/java - ln -s ${jar} $out/share/java/${artifactId}-${version}.jar + ln -s ${jar} $out/share/java/${filename} ''; # We also add a `jar` attribute that can be used to easily obtain the path # to the downloaded jar file. diff --git a/pkgs/data/fonts/blackout/default.nix b/pkgs/data/fonts/blackout/default.nix new file mode 100644 index 000000000000..b615aa66c59c --- /dev/null +++ b/pkgs/data/fonts/blackout/default.nix @@ -0,0 +1,36 @@ +{ lib, fetchFromGitHub, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "blackout"; + version = "2014-07-29"; + + src = fetchFromGitHub { + owner = "theleagueof"; + repo = self.pname; + rev = "4864cfc1749590e9f78549c6e57116fe98480c0f"; + hash = "sha256-UmJVmtuPQYW/w+mdnJw9Ql4R1xf/07l+/Ky1wX9WKqw="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/truetype $src/*.ttf + + runHook postInstall + ''; + + meta = { + description = "A bad-ass, unholy-mother-shut-your-mouth stencil sans-serif"; + longDescription = '' + Eats holes for breakfast lunch and dinner. Inspired by filling in + sans-serif newspaper headlines. Continually updated with coffee and + music. Makes your work louder than the next person’s. + + Comes in three styles: Midnight (solid), 2AM (reversed), & Sunrise + (stroked). + ''; + homepage = "https://www.theleagueofmoveabletype.com/blackout"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/chunk/default.nix b/pkgs/data/fonts/chunk/default.nix new file mode 100644 index 000000000000..708393185e94 --- /dev/null +++ b/pkgs/data/fonts/chunk/default.nix @@ -0,0 +1,38 @@ +{ lib, fetchFromGitHub, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "chunk"; + version = "2021-03-03"; + + src = fetchFromGitHub { + owner = "theleagueof"; + repo = self.pname; + rev = "12a243f3fb7c7a68844901023f7d95d6eaf14104"; + hash = "sha256-NMkRvrUgy9yzOT3a1rN6Ch/p8Cr902CwL4G0w7jVm1E="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/truetype $src/*.ttf + install -D -m444 -t $out/share/fonts/opentype $src/*.otf + + runHook postInstall + ''; + + meta = { + description = "An ultra-bold, ultra-awesome slab serif typeface"; + longDescription = '' + Chunk is an ultra-bold slab serif typeface that is reminiscent of old + American Western woodcuts, broadsides, and newspaper headlines. Used + mainly for display, the fat block lettering is unreserved yet refined for + contemporary use. + + In 2014, a new textured style was created by Tyler Finck called Chunk + Five Print. It contains the same glyphs as the original. + ''; + homepage = "https://www.theleagueofmoveabletype.com/chunk"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/fanwood/default.nix b/pkgs/data/fonts/fanwood/default.nix new file mode 100644 index 000000000000..ef8be0a6522a --- /dev/null +++ b/pkgs/data/fonts/fanwood/default.nix @@ -0,0 +1,32 @@ +{ lib, fetchFromGitHub, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "fanwood"; + version = "2011-05-11"; + + src = fetchFromGitHub { + owner = "theleagueof"; + repo = self.pname; + rev = "cbaaed9704e7d37d3dcdbdf0b472e9efd0e39432"; + hash = "sha256-OroFhhb4RxPHkx+/8PtFnxs1GQVXMPiYTd+2vnRbIjg="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/opentype $src/*.otf + + runHook postInstall + ''; + + meta = { + description = "A serif based on the work of a famous Czech-American type designer of yesteryear"; + longDescription = '' + Based on work of a famous Czech-American type designer of yesteryear. The + package includes roman and italic. + ''; + homepage = "https://www.theleagueofmoveabletype.com/fanwood"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/goudy-bookletter-1911/default.nix b/pkgs/data/fonts/goudy-bookletter-1911/default.nix new file mode 100644 index 000000000000..3fd0352b5557 --- /dev/null +++ b/pkgs/data/fonts/goudy-bookletter-1911/default.nix @@ -0,0 +1,28 @@ +{ lib, fetchFromGitHub, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "goudy-bookletter-1911"; + version = "2011-05-11"; + + src = fetchFromGitHub { + owner = "theleagueof"; + repo = self.pname; + rev = "85ff5b834b4f63feb36fd2053949c19660580e48"; + hash = "sha256-11axs1+SRQj+1lYTq2LYf1I65WrrvB/UnAgZkHPP1N8="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/opentype $src/*.otf + + runHook postInstall + ''; + + meta = { + description = "A public domain font based on Frederic Goudy’s Kennerley Oldstyle"; + homepage = "https://www.theleagueofmoveabletype.com/goudy-bookletter-1911"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/junction/default.nix b/pkgs/data/fonts/junction/default.nix new file mode 100644 index 000000000000..7f5ba5c4a201 --- /dev/null +++ b/pkgs/data/fonts/junction/default.nix @@ -0,0 +1,34 @@ +{ lib, fetchFromGitHub, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "junction"; + version = "2014-05-29"; + + src = fetchFromGitHub { + owner = "theleagueof"; + repo = self.pname; + rev = "fb73260e86dd301b383cf6cc9ca8e726ef806535"; + hash = "sha256-Zqh23HPWGed+JkADYjYdsVNRxqJDvC9xhnqAqWZ3Eu8="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/opentype $src/*.otf + + runHook postInstall + ''; + + meta = { + description = "Junction is a a humanist sans-serif font"; + longDescription = '' + Junction is a a humanist sans-serif, and the first open-source type + project started by The League of Moveable Type. It has been updated + (2014) to include additional weights (light/bold) and expanded + international support. + ''; + homepage = "https://www.theleagueofmoveabletype.com/junction"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/knewave/default.nix b/pkgs/data/fonts/knewave/default.nix new file mode 100644 index 000000000000..eaadb7afc0de --- /dev/null +++ b/pkgs/data/fonts/knewave/default.nix @@ -0,0 +1,32 @@ +{ lib, fetchFromGitHub, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "knewave"; + version = "2012-07-30"; + + src = fetchFromGitHub { + owner = "theleagueof"; + repo = self.pname; + rev = "f335d5ff1f12e4acf97d4208e1c37b4d386e57fb"; + hash = "sha256-SaJU2GlxU7V3iJNQzFKg1YugaPsiJuSZpC8NCqtWyz0="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/truetype $src/*.ttf + install -D -m444 -t $out/share/fonts/opentype $src/*.otf + + runHook postInstall + ''; + + meta = { + description = " A bold, painted face for the rocker within"; + longDescription = '' + Knewave is bold, painted face. Get it? Git it. + ''; + homepage = "https://www.theleagueofmoveabletype.com/knewave"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/league-gothic/default.nix b/pkgs/data/fonts/league-gothic/default.nix new file mode 100644 index 000000000000..4186eb70f6db --- /dev/null +++ b/pkgs/data/fonts/league-gothic/default.nix @@ -0,0 +1,39 @@ +{ lib, fetchzip, stdenvNoCC }: + +stdenvNoCC.mkDerivation (self: { + pname = "league-gothic"; + version = "1.601"; + + src = fetchzip { + url = "https://github.com/theleagueof/league-gothic/releases/download/${self.version}/LeagueGothic-${self.version}.tar.xz"; + hash = "sha256-emkXKyQw4R0Zgg02oJsvBkqV0jmczP0tF0K2IKqJHMA="; + }; + + installPhase = '' + runHook preInstall + + install -D -m444 -t $out/share/fonts/truetype $src/static/TTF/*.ttf + install -D -m444 -t $out/share/fonts/opentype $src/static/OTF/*.otf + + runHook postInstall + ''; + + meta = { + description = "A revival of an old classic, Alternate Gothic #1"; + longDescription = '' + League Gothic is a revival of an old classic, and one of our favorite + typefaces, Alternate Gothic #1. It was originally designed by Morris + Fuller Benton for the American Type Founders Company in 1903. The company + went bankrupt in 1993, and since the original typeface was created before + 1923, the typeface is in the public domain. + + We decided to make our own version, and contribute it to the Open Source + Type Movement. Thanks to a commission from the fine & patient folks over + at WND.com, it’s been revised & updated with contributions from Micah + Rich, Tyler Finck, and Dannci, who contributed extra glyphs. + ''; + homepage = "https://www.theleagueofmoveabletype.com/league-gothic"; + license = lib.licenses.ofl; + maintainers = with lib.maintainers; [ minijackson ]; + }; +}) diff --git a/pkgs/data/fonts/league-of-moveable-type/default.nix b/pkgs/data/fonts/league-of-moveable-type/default.nix index f6855dc99d66..905cf0a9adec 100644 --- a/pkgs/data/fonts/league-of-moveable-type/default.nix +++ b/pkgs/data/fonts/league-of-moveable-type/default.nix @@ -1,35 +1,46 @@ -{lib, stdenv, fetchurl, unzip, raleway}: +{ lib +, symlinkJoin +, the-neue-black +, blackout +, chunk +, fanwood +, goudy-bookletter-1911 +, junction-font +, knewave +, league-gothic +, league-script-number-one +, league-spartan +, linden-hill +, orbitron +, ostrich-sans +, prociono +, raleway +, sniglet +, sorts-mill-goudy +}: -let +symlinkJoin { + name = "league-of-moveable-type"; - # TO UPDATE: - # ./update.sh > ./fonts.nix - # we use the extended version of raleway (same license). - fonts = [raleway] - ++ map fetchurl (builtins.filter (f: f.name != "raleway.zip") (import ./fonts.nix)); - -in -stdenv.mkDerivation rec { - - baseName = "league-of-moveable-type"; - version = "2016-10-15"; - name="${baseName}-${version}"; - - srcs = fonts; - - nativeBuildInputs = [ unzip ]; - sourceRoot = "."; - - installPhase = '' - mkdir -p $out/share/fonts/opentype - cp */*.otf $out/share/fonts/opentype - # for Raleway, where the fonts are already in /share/… - cp */share/fonts/opentype/*.otf $out/share/fonts/opentype - ''; - - outputHashAlgo = "sha256"; - outputHashMode = "recursive"; - outputHash = "1gy959qhhdwm1phbrkab9isi0dmxcy0yizzncb0k49w88mc13vd0"; + paths = [ + the-neue-black + blackout + chunk + fanwood + goudy-bookletter-1911 + junction-font + knewave + league-gothic + league-script-number-one + league-spartan + linden-hill + orbitron + ostrich-sans + prociono + raleway + sniglet + sorts-mill-goudy + ]; meta = { description = "Font Collection by The League of Moveable Type"; @@ -46,6 +57,6 @@ stdenv.mkDerivation rec { license = lib.licenses.ofl; platforms = lib.platforms.all; - maintainers = with lib.maintainers; [ bergey Profpatsch ]; + maintainers = with lib.maintainers; [ bergey minijackson Profpatsch ]; }; } diff --git a/pkgs/data/fonts/league-of-moveable-type/fonts.nix b/pkgs/data/fonts/league-of-moveable-type/fonts.nix deleted file mode 100644 index efbe6a4c41cb..000000000000 --- a/pkgs/data/fonts/league-of-moveable-type/fonts.nix +++ /dev/null @@ -1,82 +0,0 @@ -[ - { - url = "https://www.theleagueofmoveabletype.com/league-spartan/download"; - sha256 = "1z9pff8xm58njs7whaxb3sq4vbdkxv7llwgm9nqhwshmgr52jrm1"; - name = "league-spartan.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/junction/download"; - sha256 = "1qbhfha012ma26n43lm1fh06i7z47wk50r8qsp09bpxc5yr4ypi7"; - name = "junction.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/ostrich-sans/download"; - sha256 = "11ydhbgcfhmydcnim64vb035cha14krxxrbf62426dm6bvxkphp3"; - name = "ostrich-sans.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/league-gothic/download"; - sha256 = "0nbwsbwhs375kbis3lpk98dw05mnh455vghjg1cq0j2fsj1zb99b"; - name = "league-gothic.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/blackout/download"; - sha256 = "1r7dihnjvy4fgvaj5m4llc9dm4cpdl1l79mhg3as16qvjgazms3p"; - name = "blackout.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/knewave/download"; - sha256 = "065yiakhm6h6jkmigj4pqm2qi6saph0pwb7g8s9gwkskhkk5iy57"; - name = "knewave.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/fanwood/download"; - sha256 = "1023da7hik8ci8s7rcy6lh4h9p6igx1kz9y1a2cv6sizbp819w8g"; - name = "fanwood.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/linden-hill/download"; - sha256 = "0rm92rz9kki91l5wcn149mdpwq1mfql4dv6d159hv534qmg3z3ks"; - name = "linden-hill.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/league-script-number-one/download"; - sha256 = "056hb02a5vydrq5q0gwzanp2zkrrv1spm8sfc5wzhyfzgwd1vc76"; - name = "league-script-number-one.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/raleway/download"; - sha256 = "0f6anym0adq0ankqbdqx4lyzbysx824zqdj1x60gafyisjx48y87"; - name = "raleway.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/prociono/download"; - sha256 = "11hamjry5lx3cykzpjq7kwlp6h9cjqy470fmn9f2pi954b46xkdy"; - name = "prociono.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/orbitron/download"; - sha256 = "156w4j324d350pvjmzdg2w8inhhdfzrvb86rhlavgd9sxx2fykk4"; - name = "orbitron.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/goudy-bookletter-1911/download"; - sha256 = "01qganq5n7rgqw546lf45kj8j7ymfjr00i2bwp3qw7ibifg9pn4n"; - name = "goudy-bookletter-1911.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/sorts-mill-goudy/download"; - sha256 = "11aywj5lzapk04k2yzi1g96acbbm48x902ka0v9cfwwqpn6js9ra"; - name = "sorts-mill-goudy.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/chunk/download"; - sha256 = "15mbqwz90y1n4vlj2xkc8vd56va6la5qnxhiipvcmkrng5y3931j"; - name = "chunk.zip"; - } - { - url = "https://www.theleagueofmoveabletype.com/sniglet/download"; - sha256 = "1lhpnjm52gyhy9s2kwbsg1rd9iyrqli5q9ngp141igx4p1bgbqkc"; - name = "sniglet.zip"; - } -] diff --git a/pkgs/data/fonts/league-of-moveable-type/update.sh b/pkgs/data/fonts/league-of-moveable-type/update.sh deleted file mode 100644 index 4d41df4fdb85..000000000000 --- a/pkgs/data/fonts/league-of-moveable-type/update.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash - -SITE=https://www.theleagueofmoveabletype.com - -# since there is no nice way to get all the fonts, -# this fetches the homepage and extracts their names from the html … -fonts=$(curl "$SITE" 2>/dev/null | \ - sed -ne 's//dev/null) - cat <