mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-07-07 19:24:08 +02:00
Compare commits
804 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 983c082a74 | |||
| a884ad0bff | |||
| 6ec7dd15bb | |||
| 893046ff4b | |||
| d3206af65a | |||
| 01ed3c4fe5 | |||
| 9250b30466 | |||
| d31721464e | |||
| 9dcd1b3b1c | |||
| 18a5a9a17a | |||
| 88c6b58020 | |||
| 2fd22ec52c | |||
| 2c63619588 | |||
| 8fbf530260 | |||
| 30347040de | |||
| 3761792c3a | |||
| 43faf869b9 | |||
| 8a225c6652 | |||
| 7de2b18612 | |||
| 8666869491 | |||
| 589f7dbeb5 | |||
| 6bc64f4187 | |||
| 3a5d914b5e | |||
| 493c245b8f | |||
| d021d25175 | |||
| 6256553cc1 | |||
| 74574fd1e3 | |||
| bfe26beb3e | |||
| fb68469f13 | |||
| b1e95eca07 | |||
| c73adb0998 | |||
| 39de700c6f | |||
| a795477b20 | |||
| 9506a01c6d | |||
| 64605c20ec | |||
| 6acef6811f | |||
| 00239d0594 | |||
| 4ad8789c17 | |||
| 36c452309f | |||
| f8bcf997d5 | |||
| 873c4085c8 | |||
| ffc3a02b5a | |||
| 3bcfe23cfc | |||
| 19a454448b | |||
| 4862bc4a1a | |||
| 72c5ad8bae | |||
| 5ade90ba69 | |||
| 06aac933e1 | |||
| ac41737f49 | |||
| dfba54893e | |||
| 836223f746 | |||
| 7246e8f701 | |||
| a6ae52fe14 | |||
| 014e7dd8f0 | |||
| 84ef83dd05 | |||
| 17a7b75c0f | |||
| 03c2776535 | |||
| f304c9c237 | |||
| da74bc7886 | |||
| b027d919cb | |||
| e6bdb36a51 | |||
| 2f7fade9ea | |||
| 7db8a6011a | |||
| 6e8586fb47 | |||
| 02bb6b45e4 | |||
| ca79e42ea2 | |||
| 7d8379a767 | |||
| e066928977 | |||
| 94987ebe13 | |||
| 37cb3a69ac | |||
| 80ae897f01 | |||
| 842e0b95f4 | |||
| a21f0e0a54 | |||
| 73ebc66feb | |||
| 351d752630 | |||
| 2b8ae65ed1 | |||
| ec2da92c96 | |||
| c44ed26ce7 | |||
| 9f533d60df | |||
| 61bce2f9cb | |||
| 53a7a01675 | |||
| dd6b28d18b | |||
| de71cc4f83 | |||
| 3ca2731c20 | |||
| 2baf46348f | |||
| e1626e3b3a | |||
| 8c9267a448 | |||
| 0a0517690d | |||
| b6c5a39701 | |||
| 5bf6b86f1b | |||
| 70e629f548 | |||
| fbb020451e | |||
| 3698f524d5 | |||
| a101c891e1 | |||
| ca8343b5ac | |||
| 898da0cc4c | |||
| 2af29d239b | |||
| b1fb4b2371 | |||
| e9257d377a | |||
| d7ece67af0 | |||
| 6c030d1037 | |||
| 58d32305b6 | |||
| 2dfed643aa | |||
| 4bb49be2c2 | |||
| 673ab897a3 | |||
| 1a0965045b | |||
| 03411993a8 | |||
| 28561d85da | |||
| dbab5150f8 | |||
| 6b1f9721a8 | |||
| 310b32a2a6 | |||
| 0db40ed289 | |||
| c492be654b | |||
| cf4efb394f | |||
| 9b543456d7 | |||
| eb497b6616 | |||
| 56b7a33873 | |||
| 00ebe4740a | |||
| 109da1c082 | |||
| 7d24363f09 | |||
| b0910aad2f | |||
| 7ed6ee1e34 | |||
| c72aed6d8c | |||
| d35c5e29b6 | |||
| 510023184a | |||
| 01aae5fcce | |||
| 7873318d30 | |||
| 71c1d5280c | |||
| aa27b56083 | |||
| 0404c34cb7 | |||
| 13c9acbfbd | |||
| dc67ebd226 | |||
| da6ce3f1b8 | |||
| 3e6ccb5355 | |||
| a6035fc19a | |||
| dfbc33dceb | |||
| 8597ab7d22 | |||
| 31aa437987 | |||
| b6e5e1b738 | |||
| 5c88063614 | |||
| dca1b58df1 | |||
| 2474b81d96 | |||
| 5808dcc27c | |||
| 561fb6c31f | |||
| 4e190c2803 | |||
| 81a97734e0 | |||
| 5db3719153 | |||
| ca1071e1c3 | |||
| f4ee08d85e | |||
| 5660708895 | |||
| 9decb18c0b | |||
| 1d50699354 | |||
| 5b3d863f00 | |||
| 867d847305 | |||
| c1b0c7d976 | |||
| 80650d7719 | |||
| 622c8f0af2 | |||
| f159735885 | |||
| 4ad2e76a14 | |||
| e48977e755 | |||
| f327b36edb | |||
| 24004073f0 | |||
| 8f4b1dfb77 | |||
| ae1ab9fe82 | |||
| 2a666e9cfd | |||
| 57b7e1a62d | |||
| 72b703cdca | |||
| b01a0ba86e | |||
| aeb1a1d966 | |||
| 63c5462236 | |||
| ceae3fef44 | |||
| 52958f0dfd | |||
| e478a9ecc2 | |||
| 2b2f91ad87 | |||
| 9fdd80e8f2 | |||
| 6ee01481c3 | |||
| df5188ddfa | |||
| 619c9522b2 | |||
| 58caebf032 | |||
| f220a83848 | |||
| 54e612818b | |||
| 023d9892c0 | |||
| e87f0591f3 | |||
| 1ed194646b | |||
| a0ba3fc520 | |||
| 1c975f60b1 | |||
| 7c594a2c2f | |||
| d585f244ce | |||
| fe3711bcce | |||
| 524f4becff | |||
| 7bed4df49a | |||
| be68177368 | |||
| fb9b7ce258 | |||
| 2e69dd8c1d | |||
| a813710a5f | |||
| d8cd159490 | |||
| 765f0ac8f9 | |||
| 4655005e24 | |||
| 35ed9306b9 | |||
| f5895dab8a | |||
| 65cd77db20 | |||
| bdac3d4bf7 | |||
| 73161579b2 | |||
| abebac4601 | |||
| 462a3fa36c | |||
| 4a4dd5d89d | |||
| ab69d9ac86 | |||
| bb54c8ff05 | |||
| 3d243e9c45 | |||
| beb8dc0007 | |||
| b47e1b20bd | |||
| 61771a79ab | |||
| 9f496d430b | |||
| 7d05f76956 | |||
| a63ffe03d4 | |||
| bbea956575 | |||
| c06d140c03 | |||
| ed3592a980 | |||
| d326767e64 | |||
| 798e004538 | |||
| 74d72608b3 | |||
| 7744885731 | |||
| 0009ed71ad | |||
| 5b490ab52f | |||
| cd287ba162 | |||
| 1aaaff1a7b | |||
| 4923e06f21 | |||
| 62c155c0bc | |||
| b2363f6551 | |||
| c2d9355c36 | |||
| e9651e39b3 | |||
| 0b6af195fe | |||
| eb9dfcb3c4 | |||
| 4eb01e5442 | |||
| d45dc6da5c | |||
| 694b317c2d | |||
| 1ff2619bc1 | |||
| c6cb82f5d5 | |||
| 927d4d9bd8 | |||
| da2021bca1 | |||
| 6140b9d875 | |||
| 4100fe9d33 | |||
| 8234fcf21a | |||
| fb519bd831 | |||
| b2ad9d9b08 | |||
| aa1e19477b | |||
| b58b7dbb75 | |||
| 05f0607bfc | |||
| 3f00ff8b43 | |||
| f7d2b496b9 | |||
| 24aaf2f257 | |||
| 76e639a00f | |||
| 8eb8048432 | |||
| 270b501ee2 | |||
| 84cbe39c5a | |||
| 2959dbe935 | |||
| c9a4655553 | |||
| 3246cc9185 | |||
| c154e1ea81 | |||
| be11b10244 | |||
| 3cbb3f9c55 | |||
| 5d65ad80b5 | |||
| fa1e2f3d0d | |||
| b515822de1 | |||
| 9097e666d4 | |||
| 91c47befb8 | |||
| fd19df7252 | |||
| c93d7edda3 | |||
| fe32c7f760 | |||
| 8fcaf8b173 | |||
| 77a39799f9 | |||
| 0d93648bec | |||
| cf0a154c41 | |||
| 7cd802f342 | |||
| d2e842814a | |||
| 97f94f5e9b | |||
| cd06768e66 | |||
| 23800e4736 | |||
| aebb05b095 | |||
| d976258907 | |||
| 1c38551a36 | |||
| 50ec74308e | |||
| ffc200d7e0 | |||
| 9331ba5dd9 | |||
| 4379c35b73 | |||
| 63cbe7a17a | |||
| 15ddeff532 | |||
| 828c0bec6b | |||
| 9b1bf33081 | |||
| d8491ba563 | |||
| ac70048be2 | |||
| fcdebadf39 | |||
| ee06af5b4b | |||
| e13f715be0 | |||
| cf81a23639 | |||
| 7452806931 | |||
| 4b2fd119be | |||
| f4e9727786 | |||
| 27ef7f4542 | |||
| 0f481f0616 | |||
| 171bf17cc5 | |||
| bf0baaf7db | |||
| 63d526e268 | |||
| 2d2301e37a | |||
| e5da2f38c3 | |||
| c7bdc7ece5 | |||
| 26804e1351 | |||
| 8cbb67e045 | |||
| 7da473b757 | |||
| 1c69e4ce3f | |||
| dd8ea244f4 | |||
| 4fbf4ca552 | |||
| 8b385969cf | |||
| 907c98acbb | |||
| 8f501ac849 | |||
| f05bdc9412 | |||
| c79c6e598a | |||
| 07af3e5efe | |||
| a3bf096945 | |||
| 2a8d44015f | |||
| cc9a5c1454 | |||
| bd2fc4d813 | |||
| 7b21fe5385 | |||
| 7ec02d374d | |||
| af07095516 | |||
| 856ae5e6c7 | |||
| f9930cfaab | |||
| 7f9b77dc46 | |||
| 85f4190221 | |||
| 9a224ac2e3 | |||
| 6aa47e3883 | |||
| 8c89f514bf | |||
| 84c84ce7bf | |||
| 6ac8aa3d75 | |||
| 0d12bc744e | |||
| 763a401ed1 | |||
| 9426440781 | |||
| bf7688fe4d | |||
| be7134bf75 | |||
| ee97be9fb4 | |||
| 977736fc40 | |||
| 8a984cb307 | |||
| fb916f4dd6 | |||
| 00c0930019 | |||
| 276a8f7191 | |||
| 6a95024c0a | |||
| 9cb3036f0d | |||
| cc8b02f4a5 | |||
| e933ad3dad | |||
| 53a427cf20 | |||
| f948656c17 | |||
| 764c077b30 | |||
| 78a2745370 | |||
| afc720d34c | |||
| a193b8248b | |||
| d95523fb8b | |||
| 7dcf67c070 | |||
| ce44657aab | |||
| eea3e54c59 | |||
| ea57378f24 | |||
| d2611ffbb5 | |||
| 073cd6092c | |||
| c0e40804b2 | |||
| bd6863c245 | |||
| 7dd17c76ae | |||
| d0088ad82a | |||
| af339a482e | |||
| 8366433495 | |||
| a1d80a04b6 | |||
| c4bce93fa2 | |||
| 3fc4eb211e | |||
| 7007aeb287 | |||
| a5bea0a730 | |||
| 1a78304572 | |||
| 975ced12d4 | |||
| 3d7d909c9d | |||
| fc7a0cf678 | |||
| caabecf056 | |||
| e6eeff1856 | |||
| e7908a24d3 | |||
| 49a9099ebc | |||
| 7504007211 | |||
| becb7c9987 | |||
| 3ee26f989c | |||
| 232af79efb | |||
| 2c0a2d7a4f | |||
| 102e8fc0a1 | |||
| 316fdeb27e | |||
| ea73576bc1 | |||
| 2750ee5b0d | |||
| 9b1cd1e56a | |||
| 02c9f9ca4c | |||
| aa868f6da4 | |||
| 04074a95de | |||
| 5c28dce043 | |||
| b3ba0379eb | |||
| 9489b6ea39 | |||
| 61ba0bbfca | |||
| 0ef700db89 | |||
| eae74117fc | |||
| 4585250372 | |||
| eafd33e896 | |||
| a1d537b053 | |||
| 467ac76d24 | |||
| cdacad71a5 | |||
| f61bfb3427 | |||
| d6f7ee720b | |||
| c9ad1f97df | |||
| 6bd87b7670 | |||
| e2a712cae7 | |||
| 9248fd7f04 | |||
| 73e122be1d | |||
| edc2ad8e3e | |||
| 39deb4b144 | |||
| 125d405f75 | |||
| b48b7ca795 | |||
| da1a6bb32c | |||
| f540eddef4 | |||
| d220d152ad | |||
| b3cbd61a5c | |||
| acba78a123 | |||
| 95b7bafea0 | |||
| 3ae74dfd45 | |||
| ab9d06be83 | |||
| 66e0147e86 | |||
| cec79ce664 | |||
| 24e97d3487 | |||
| 07c6af48d2 | |||
| 15bcd5b77e | |||
| 788093dd9d | |||
| 4fde7d34c4 | |||
| 140a079347 | |||
| 4c573e6967 | |||
| d8dde29631 | |||
| b54eab023f | |||
| cbc4f50cec | |||
| eb2a0e1136 | |||
| 81f7096b97 | |||
| 8dc29fd1fc | |||
| 728a4f20ab | |||
| e5392784fa | |||
| 7d7a47c663 | |||
| 5c2168c81d | |||
| 88e86ee9c5 | |||
| 223681e73a | |||
| 59f9bd7088 | |||
| 9a8b8f2632 | |||
| 90466b59ff | |||
| e18bb48020 | |||
| 2b8172c4a4 | |||
| b05752dbe6 | |||
| ccffa91c1d | |||
| fda2ebe75f | |||
| 075e9a11d3 | |||
| 75dc8b2266 | |||
| 9643cff15c | |||
| 0b271d2bbe | |||
| cc28048d1a | |||
| 8fc8c1ee0b | |||
| 7f65303d73 | |||
| 3097d65e29 | |||
| e8453d7b91 | |||
| e876456a67 | |||
| 0a761f1ebd | |||
| d36caa10a5 | |||
| 9e5c0927e4 | |||
| daf47d4388 | |||
| 3d6befa4af | |||
| 4b1b387776 | |||
| ee28fc6432 | |||
| 11163131cd | |||
| 8befb33d23 | |||
| 618ea7c94e | |||
| ce4d7abf02 | |||
| 31157f8e52 | |||
| f0b6c5d8fe | |||
| 24d56899a1 | |||
| 9ac97e83e9 | |||
| 36457566f9 | |||
| 2c7ee16720 | |||
| 7f5c2a9cc1 | |||
| c9bf64d6d7 | |||
| cdae969ae5 | |||
| 9e0997230c | |||
| 25f9a068f2 | |||
| 63cd6e5a95 | |||
| 6fa144692c | |||
| 6f8fe4b29e | |||
| 46a3e00b5b | |||
| 80db9915a0 | |||
| 7576cbd6da | |||
| 0ad3969fcd | |||
| 9dc8a1577f | |||
| ea0a52d7d6 | |||
| 6a84316848 | |||
| 81de56479a | |||
| b336da21e9 | |||
| f3cd952b45 | |||
| a142e38e9d | |||
| dec7ab5953 | |||
| a6e818586b | |||
| 6b282cc9fb | |||
| 9f8552fab5 | |||
| bea26837e8 | |||
| ebf5ad46db | |||
| 6cb89466ba | |||
| 5a659a489e | |||
| 5afbfb9924 | |||
| bfb8486929 | |||
| d814f921f1 | |||
| 31557440c2 | |||
| de51bf58b9 | |||
| 61ff0a3a18 | |||
| 6454b33345 | |||
| c4a1b6c2ba | |||
| 2ed11b3a3e | |||
| f912da3a84 | |||
| 45c5b47b96 | |||
| ccc2678b0d | |||
| 6c777cf88c | |||
| 5c5e7bdafd | |||
| b2bd7c253a | |||
| a8a086e392 | |||
| c1125a04bb | |||
| aba42c98b3 | |||
| c809ec94d1 | |||
| 5e5deea952 | |||
| 4e10a22168 | |||
| 97ab2c0fb6 | |||
| c9d512faac | |||
| 90dcf9c8c5 | |||
| 8a3c54e0a1 | |||
| 3a4bfddee7 | |||
| aac0380040 | |||
| 5c776d2706 | |||
| 55613927ea | |||
| 9a8a040dfe | |||
| c5c2f9bbb0 | |||
| 3b3a7fe78c | |||
| 305bc4cca8 | |||
| 7fc3d5f3ec | |||
| 2eb7d77d48 | |||
| 6cec9818db | |||
| 471dbb70f9 | |||
| 79c2528ffb | |||
| 62ac2ed9f4 | |||
| 180e33e3f2 | |||
| 32bcad9709 | |||
| 1b5758a65e | |||
| 4281d1b6f3 | |||
| 57c3f71632 | |||
| 6c2cf86edb | |||
| c7e553a309 | |||
| 71f571588f | |||
| 5920d90e68 | |||
| 4a01b30b33 | |||
| 1410f342f7 | |||
| 2e88e089da | |||
| 426fde9ae1 | |||
| 3e4249ce10 | |||
| 499cdcc6cb | |||
| 043092e80b | |||
| b593600e21 | |||
| d193ba6d79 | |||
| 31f3976a21 | |||
| 2e66590aad | |||
| c7518b04f0 | |||
| 7850f47ac5 | |||
| 63edfca495 | |||
| 2aa466247f | |||
| 8d809faf8c | |||
| 47833c90d5 | |||
| 5a4753a699 | |||
| 66717243d0 | |||
| a415f036e8 | |||
| 15f5f68656 | |||
| 03356e9775 | |||
| d6e941bc95 | |||
| 427476d57d | |||
| 02f707c590 | |||
| 4e2a21d3d2 | |||
| fecbf86eaa | |||
| a693bba135 | |||
| 6005bd0700 | |||
| 9f6f1aacf6 | |||
| 659a92fc7b | |||
| 5f742c84d4 | |||
| 6412e58a68 | |||
| f6d9b3ded7 | |||
| a182e94e25 | |||
| c3ea85d110 | |||
| 01480b9e1c | |||
| e1bdb56e3b | |||
| 18316d8656 | |||
| d8b94dbd76 | |||
| 9668b3bb38 | |||
| 0d6a83390d | |||
| 4c8425b783 | |||
| fa9d665385 | |||
| 6036453fff | |||
| c9e46f1c39 | |||
| 847391fe62 | |||
| 6496de9bc2 | |||
| 4c8d523f93 | |||
| 39d1f82b52 | |||
| 764ee9e808 | |||
| c3e79cde06 | |||
| bb986599e6 | |||
| 65a056900f | |||
| f47f676120 | |||
| 36d2a3afeb | |||
| f2122ed1dc | |||
| 845d48e7a1 | |||
| 5ec98c3de5 | |||
| 1567bb1976 | |||
| a7f862e4da | |||
| d51cafb041 | |||
| 0b08600ca5 | |||
| 12f2490aa3 | |||
| 3db349cb09 | |||
| ece9b4173b | |||
| b2b7def1cc | |||
| 6c0e878e68 | |||
| ec38437f94 | |||
| 7ce7361b76 | |||
| bc73aa439f | |||
| b307c06456 | |||
| 21caa6deeb | |||
| cc7fa5929c | |||
| f4c4513d47 | |||
| 0b96fb2ac0 | |||
| a1de06b6ab | |||
| fbcfa73074 | |||
| ea5456c88c | |||
| 1671c07cc7 | |||
| c937562e2f | |||
| 94914805c2 | |||
| b88e1b0a62 | |||
| 7639105b12 | |||
| de878f1b29 | |||
| 3c156c8a94 | |||
| 2ee8869a69 | |||
| 4cdec09a39 | |||
| 73aa8ddb75 | |||
| c8b7569558 | |||
| 4efdabb810 | |||
| 85dbd3dcd0 | |||
| e823c14918 | |||
| 29cafd17f8 | |||
| 0bee13a4d9 | |||
| fc205802ed | |||
| 98a11f81d1 | |||
| 8cb3f90074 | |||
| 3de92182a4 | |||
| bdeb576793 | |||
| 4f7181b5df | |||
| d514bedb05 | |||
| 7cc7dec139 | |||
| 9741aca9a5 | |||
| d68fe74162 | |||
| a63094a752 | |||
| c7810bd1a8 | |||
| 40b4c6d606 | |||
| 16eb115ef4 | |||
| 6efc160efe | |||
| 5f86a66efd | |||
| 9cb426b8bf | |||
| 1c65314c60 | |||
| 2c37a34cb8 | |||
| f5d9604f27 | |||
| 2184ed9179 | |||
| ec01f22d15 | |||
| 7dfc937e2f | |||
| e2bb5fd627 | |||
| fbe52bcda2 | |||
| 1c0c417d2d | |||
| 1cc8f3a63c | |||
| 5e6bdf06a7 | |||
| 3b09332adf | |||
| 9cd0dfaa46 | |||
| 7c4885f0d7 | |||
| 08b1990a93 | |||
| d7e66f6295 | |||
| 0e704a2d4e | |||
| 600c285b63 | |||
| fcaa5f44a1 | |||
| d5d1668630 | |||
| 1f6f57df7c | |||
| d616c05529 | |||
| 4625141126 | |||
| ec00de358e | |||
| 598e19dca1 | |||
| e9bab1df6d | |||
| 9b4d1e7321 | |||
| cbbc877134 | |||
| d57b88bed5 | |||
| e26e134b4a | |||
| 07ba213a39 | |||
| 67979e42c3 | |||
| 76bacc8264 | |||
| 094b2efc3c | |||
| 97e1120903 | |||
| 2d2a2bacc0 | |||
| 588a781396 | |||
| 90fad2880d | |||
| e43c2a0b89 | |||
| f6526eb330 | |||
| 1b366ee4f6 | |||
| 15bfe6d635 | |||
| a82bec4e89 | |||
| 77c9286d4a | |||
| 4d6b879cb5 | |||
| 6eef465eea | |||
| c63bc533c1 | |||
| db84467a90 | |||
| 086518ddf3 | |||
| 0ae332d3ef | |||
| 68ff528c75 | |||
| 2cdda52b1a | |||
| e6c1e91d8b | |||
| c4a298c52c | |||
| f8bcf1935a | |||
| 0da9853360 | |||
| 2d8dc79c1e | |||
| df66fee79a | |||
| e8435c4d28 | |||
| f58f767b6d | |||
| aaa3eaa97e | |||
| 98e9e22feb | |||
| 20dd519cdb | |||
| 1619111731 | |||
| faef3b153a | |||
| fa1e31b8a5 | |||
| 47757541b9 | |||
| 723fa420b4 | |||
| b419c7f5fb | |||
| b6e2215af7 | |||
| 5d1f117784 | |||
| 8b47758f02 | |||
| 7fec52b78b | |||
| c23d17095d | |||
| 0c645f0bd1 | |||
| bc0b89bb3e | |||
| af89a66735 | |||
| bc9812f150 | |||
| 1d1fa9327c | |||
| e8c7fdda5d | |||
| 2bbc6db5e2 | |||
| 91ee959b03 | |||
| 2acb8b272a | |||
| 49ff939f52 | |||
| 5dee80dde2 | |||
| 8b6a5e0f82 | |||
| 50b87bd54b | |||
| 99533da50d | |||
| e6039b9c70 | |||
| e56512125d | |||
| 0253ab3979 | |||
| a5b60e3c6b | |||
| f4391bec00 | |||
| b977cd2b8e | |||
| ff53457d05 | |||
| c736bc94e9 | |||
| 60ac75cdd1 | |||
| 6639292daa | |||
| 01400dd602 | |||
| f8f68c0749 | |||
| d1de5ff3b1 | |||
| 9723ce5886 | |||
| 9c960731d6 | |||
| c09e60e4d5 | |||
| 0276f697b3 | |||
| fcf63cf880 | |||
| 96ffa27ba4 | |||
| 4dfbdcbcb4 | |||
| a1ca1b7a50 | |||
| 1d18d87f34 | |||
| 1c27641f46 | |||
| 8c3fc83411 | |||
| a4d8913613 | |||
| 8b9019a6a9 | |||
| db6dcf816f | |||
| 836f02bf52 | |||
| f4d5bca39e | |||
| 37627ffa89 | |||
| dd3b6d66b9 | |||
| af8c2a158e | |||
| 77264d1512 | |||
| 1fcf67f461 | |||
| 24753e6947 | |||
| 93882f0eda | |||
| 3f2a772789 | |||
| aa3d901126 | |||
| 8f9580ca8b | |||
| 418367f7f0 | |||
| 7131ef4b4a | |||
| 9a5acb54c1 | |||
| 186de634a7 | |||
| db5584dd11 | |||
| e093274238 | |||
| a6abac9f2e | |||
| 05093579e9 | |||
| 90422555f1 | |||
| 47739f5165 |
@@ -46,9 +46,12 @@
|
||||
(eval . (put 'syntax-parameterize 'scheme-indent-function 1))
|
||||
(eval . (put 'with-monad 'scheme-indent-function 1))
|
||||
(eval . (put 'mbegin 'scheme-indent-function 1))
|
||||
(eval . (put 'mwhen 'scheme-indent-function 1))
|
||||
(eval . (put 'munless 'scheme-indent-function 1))
|
||||
(eval . (put 'mlet* 'scheme-indent-function 2))
|
||||
(eval . (put 'mlet 'scheme-indent-function 2))
|
||||
(eval . (put 'run-with-store 'scheme-indent-function 1))
|
||||
(eval . (put 'run-with-state 'scheme-indent-function 1))
|
||||
|
||||
;; Recognize '~', '+', and '$', as used for gexps, as quotation symbols.
|
||||
;; This notably allows '(' in Paredit to not insert a space when the
|
||||
|
||||
@@ -67,6 +67,7 @@ config.cache
|
||||
/doc/version.texi
|
||||
/gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz
|
||||
/gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz
|
||||
/gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz
|
||||
/gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz
|
||||
/guix/config.scm
|
||||
/nix/nix-daemon/nix-daemon.cc
|
||||
@@ -110,3 +111,4 @@ GTAGS
|
||||
/emacs/guix-autoloads.el
|
||||
/emacs/guix-helper.scm
|
||||
/emacs/guix-init.el
|
||||
/emacs/guix-profiles.el
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
[submodule "nix-upstream"]
|
||||
path = nix-upstream
|
||||
url = https://github.com/NixOS/nix.git
|
||||
@@ -13,6 +13,7 @@ alphabetical order):
|
||||
Federico Beffa <beffa@fbengineering.ch>
|
||||
Marek Benc <merkur32@gmail.com>
|
||||
Sou Bunnbu (宋文武) <iyzsong@gmail.com>
|
||||
Tomáš Čech <sleep_walker@suse.cz>
|
||||
Ludovic Courtès <ludo@gnu.org>
|
||||
John Darrington <jmd@gnu.org>
|
||||
Andreas Enge <andreas@enge.fr>
|
||||
@@ -20,6 +21,7 @@ alphabetical order):
|
||||
Joshua Grant <tadni@riseup.net>
|
||||
Raimon Grau <raimonster@gmail.com>
|
||||
Nikita Karetnikov <nikita@karetnikov.org>
|
||||
Julien Lepiller <julien@lepiller.eu>
|
||||
Aljosha Papsch <misc@rpapsch.de>
|
||||
Manolis Ragkousis <manolis837@gmail.com>
|
||||
Cyril Roelandt <tipecaml@gmail.com>
|
||||
@@ -29,3 +31,4 @@ alphabetical order):
|
||||
Sree Harsha Totakura <sreeharsha@totakura.in>
|
||||
David Thompson <dthompson2@worcester.edu>
|
||||
Mark H. Weaver <mhw@netris.org>
|
||||
Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
|
||||
|
||||
+32
-7
@@ -1,5 +1,5 @@
|
||||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
@@ -30,10 +30,12 @@ MODULES = \
|
||||
guix/base32.scm \
|
||||
guix/base64.scm \
|
||||
guix/records.scm \
|
||||
guix/gcrypt.scm \
|
||||
guix/hash.scm \
|
||||
guix/pk-crypto.scm \
|
||||
guix/pki.scm \
|
||||
guix/utils.scm \
|
||||
guix/sets.scm \
|
||||
guix/download.scm \
|
||||
guix/git-download.scm \
|
||||
guix/monads.scm \
|
||||
@@ -56,6 +58,7 @@ MODULES = \
|
||||
guix/ftp-client.scm \
|
||||
guix/http-client.scm \
|
||||
guix/gnupg.scm \
|
||||
guix/elf.scm \
|
||||
guix/store.scm \
|
||||
guix/svn-download.scm \
|
||||
guix/ui.scm \
|
||||
@@ -126,7 +129,9 @@ EXAMPLES = \
|
||||
|
||||
GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go guix/tests.go
|
||||
|
||||
nobase_dist_guilemodule_DATA = $(MODULES) $(KCONFIGS) $(EXAMPLES)
|
||||
nobase_dist_guilemodule_DATA = \
|
||||
$(MODULES) $(KCONFIGS) $(EXAMPLES) \
|
||||
$(MISC_DISTRO_FILES)
|
||||
nobase_nodist_guilemodule_DATA = $(GOBJECTS) guix/config.scm
|
||||
|
||||
# Do we need to provide our own non-broken (srfi srfi-37) module?
|
||||
@@ -152,6 +157,7 @@ SCM_TESTS = \
|
||||
tests/hash.scm \
|
||||
tests/pk-crypto.scm \
|
||||
tests/pki.scm \
|
||||
tests/sets.scm \
|
||||
tests/substitute-binary.scm \
|
||||
tests/builders.scm \
|
||||
tests/derivations.scm \
|
||||
@@ -173,10 +179,15 @@ SCM_TESTS = \
|
||||
if HAVE_GUILE_JSON
|
||||
|
||||
MODULES += \
|
||||
guix/import/json.scm \
|
||||
guix/import/pypi.scm \
|
||||
guix/scripts/import/pypi.scm
|
||||
guix/scripts/import/pypi.scm \
|
||||
guix/import/cpan.scm \
|
||||
guix/scripts/import/cpan.scm
|
||||
|
||||
SCM_TESTS += tests/pypi.scm
|
||||
SCM_TESTS += \
|
||||
tests/pypi.scm \
|
||||
tests/cpan.scm
|
||||
|
||||
endif
|
||||
|
||||
@@ -233,7 +244,6 @@ EXTRA_DIST = \
|
||||
build-aux/check-final-inputs-self-contained.scm \
|
||||
build-aux/download.scm \
|
||||
build-aux/list-packages.scm \
|
||||
build-aux/sync-descriptions.scm \
|
||||
srfi/srfi-37.scm.in \
|
||||
srfi/srfi-64.scm \
|
||||
srfi/srfi-64.upstream.scm \
|
||||
@@ -261,10 +271,18 @@ AM_V_GUILEC = $(AM_V_GUILEC_$(V))
|
||||
AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
|
||||
AM_V_GUILEC_0 = @echo " GUILEC" $@;
|
||||
|
||||
# Unset 'GUILE_LOAD_COMPILED_PATH' altogether while compiling. Otherwise, if
|
||||
# $GUILE_LOAD_COMPILED_PATH contains $(moduledir), we may find .go files in
|
||||
# there that are newer than the local .scm files (for instance because the
|
||||
# user ran 'make install' recently). When that happens, we end up loading
|
||||
# those previously-installed .go files, which may be stale, thereby breaking
|
||||
# the whole thing.
|
||||
#
|
||||
# XXX: Use the C locale for when Guile lacks
|
||||
# <http://git.sv.gnu.org/cgit/guile.git/commit/?h=stable-2.0&id=e2c6bf3866d1186c60bacfbd4fe5037087ee5e3f>.
|
||||
.scm.go:
|
||||
$(AM_V_GUILEC)$(MKDIR_P) `dirname "$@"` ; \
|
||||
unset GUILE_LOAD_COMPILED_PATH ; \
|
||||
LC_ALL=C \
|
||||
$(top_builddir)/pre-inst-env \
|
||||
$(GUILD) compile -L "$(top_builddir)" -L "$(top_srcdir)" \
|
||||
@@ -282,6 +300,13 @@ SUFFIXES = .go
|
||||
guix_install_go_files = install-nobase_nodist_guilemoduleDATA
|
||||
$(guix_install_go_files): install-nobase_dist_guilemoduleDATA
|
||||
|
||||
# The above trick doesn't work for 'config.go' because both 'config.scm' and
|
||||
# 'config.go' are listed in $(nobase_nodist_guilemodule_DATA). Thus, give it
|
||||
# special treatment.
|
||||
install-data-hook: set-bootstrap-executable-permissions
|
||||
touch "$(DESTDIR)$(guilemoduledir)/guix/config.go"
|
||||
|
||||
|
||||
SUBDIRS = po/guix po/packages
|
||||
BUILT_SOURCES =
|
||||
|
||||
@@ -308,8 +333,8 @@ dist-hook: sync-descriptions gen-ChangeLog assert-no-store-file-names
|
||||
distcheck-hook: assert-binaries-available assert-final-inputs-self-contained
|
||||
|
||||
sync-descriptions:
|
||||
-$(top_builddir)/pre-inst-env $(GUILE) \
|
||||
$(top_srcdir)/build-aux/sync-descriptions.scm
|
||||
-GUIX_PACKAGE_PATH= \
|
||||
$(top_builddir)/pre-inst-env guix lint --checkers=gnu-description
|
||||
|
||||
gen-ChangeLog:
|
||||
if test -d .git; then \
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#+TITLE: Guix NEWS – history of user-visible changes
|
||||
#+STARTUP: content hidestars
|
||||
|
||||
Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
@@ -10,6 +10,265 @@ Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
|
||||
Please send Guix bug reports to bug-guix@gnu.org.
|
||||
|
||||
* Changes in 0.8.1 (since 0.8)
|
||||
|
||||
** Package management
|
||||
|
||||
*** New ‘--share’ and ‘--expose’ options for ‘guix system vm’
|
||||
|
||||
See “Invoking guix system” in the manual.
|
||||
|
||||
*** Emacs mode now automatically loads newly installed Emacs packages
|
||||
|
||||
See “Emacs Initial Setup” in the manual.
|
||||
|
||||
*** ‘guix-daemon’ now defaults to ‘--cores=0 --jobs=1’
|
||||
|
||||
In other words, at any given time, only one derivation is being built or
|
||||
substituted, and it can use as many cores as available. Before, there could
|
||||
be N derivations using N cores, which was obviously not desirable.
|
||||
|
||||
*** Command-line tools support the ‘GUIX_BUILD_OPTIONS’ environment variable
|
||||
|
||||
See “Invoking guix build” in the manual.
|
||||
|
||||
*** ‘guix environment’ is faster
|
||||
|
||||
*** New ‘--recursive’ option for ‘guix archive’
|
||||
|
||||
See “Invoking guix archive” in the manual.
|
||||
|
||||
*** Missing patches required by a package definition are gracefully reported
|
||||
|
||||
*** ‘guix lint’ supports additional checkers
|
||||
|
||||
The new checkers are ‘gnu-description’, ‘home-page’, and ‘source’.
|
||||
See “Invoking guix lint” in the manual.
|
||||
|
||||
*** New CPAN importer for ‘guix import’
|
||||
|
||||
See “Invoking guix import” in the manual.
|
||||
|
||||
** Distribution
|
||||
|
||||
*** USB installation image has more tools
|
||||
|
||||
Tools added since 0.8: wpa_supplicant, cryptsetup, and iw.
|
||||
|
||||
*** Linux kernel module dependencies are automatically handled
|
||||
|
||||
Before that, all the modules needed in the initrd would need to be explicitly
|
||||
listed, including their dependencies, and in topological order.
|
||||
|
||||
*** Font packages now all have a name starting with ‘font-’
|
||||
|
||||
See “Fonts” in the manual.
|
||||
|
||||
*** Shell startup files have been cleaned up
|
||||
|
||||
/etc/profile contains only environment variable definitions, which may also be
|
||||
used when running a different shell. The skeletons for user’s ‘.bash_profile’
|
||||
and ‘.bashrc’ files behave as documented in the Bash manual. Zsh is supported.
|
||||
|
||||
*** The ‘root’ account gets a copy of the account skeleton files
|
||||
|
||||
Before that, the skeleton files would only be copied to non-root accounts.
|
||||
|
||||
*** The name service cache daemon (nscd) is configurable
|
||||
|
||||
By default it aggressively caches host and service lookups. See “Base
|
||||
Services” in the manual.
|
||||
|
||||
*** Available locale definitions are now declared in ‘operating-system’
|
||||
|
||||
Before, the ‘glibc’ package would contain all the existing locales, as well as
|
||||
the ‘locale-archive’ file, amounting to 110 MiB. See “Locales” in the manual.
|
||||
|
||||
*** SLiM sessions are configurable
|
||||
|
||||
Pressing F1 in the SLiM graphical log-in screen allows users to choose among
|
||||
the pre-configured session types. See “X Window” in the manual.
|
||||
|
||||
*** Man pages and Info files are systematically gzip-compressed
|
||||
|
||||
*** ‘gnu-build-system’ ensures that documentation is in share/{man,info}
|
||||
|
||||
If a package installs to $prefix/{man,info}, this is automatically fixed to be
|
||||
$prefix/share/{man,info}.
|
||||
|
||||
*** ‘strip’ is invoked only on ELF files and ‘ar’ archives
|
||||
|
||||
*** ‘libtool’ and ‘libltdl’ are now separate packages
|
||||
|
||||
*** Emacs mode is readily usable on the Guix System Distribution
|
||||
|
||||
*** Substitutes are now enabled by default on freshly installed systems
|
||||
*** 164 new packages
|
||||
|
||||
abcde, astyle, avr-libc, bbdb, bedtools, bowtie, bullet, c-reduce, cd-discid,
|
||||
cgal, clang, claws-mail, cups, cups-filters, cups-minimal, dconf, delta,
|
||||
dmenu, eigen, emms, exo, fastjar, font-bitstream-vera, font-dejavu,
|
||||
font-gnu-freefont-ttf, font-liberation, font-terminus, fvwm, garcon,
|
||||
gcc-cross-arm-linux-gnueabihf, gcc-cross-sans-libc-avr, gcj, getmail,
|
||||
git-flow, git-manpages, git-test-sequence, glew, glulxe, gourmet,
|
||||
gst-plugins-good, gtk-xfce-engine, hexchat, ijs, iw, jack, json-glib,
|
||||
libdvdnav, libdvdread, libetpan, libevdev, libltdl, libtorrent, libupnp,
|
||||
libwnck, libwnck, libxfce4ui, libxfce4util, libxshmfence, libyubikey, llvm,
|
||||
lrdf, mg, mp3info, msmtp, ncftp, nginx, ninja, nss, openbox,
|
||||
perl-benchmark-timer, perl-clone, perl-digest-sha1, perl-exporter-lite,
|
||||
perl-file-which, perl-getopt-tabular, perl-ipc-run3, perl-probe-perl,
|
||||
perl-regexp-common, perl-sys-cpu, perl-test-deep, perl-test-nowarnings,
|
||||
perl-test-script, perl-test-simple, perl-test-tester, pflask,
|
||||
python-cairocffi, python-cffi, python-distutils-extra, python-html5lib,
|
||||
python-ipython, python-isodate, python-matplotlib, python-numpy,
|
||||
python-numpydoc, python-pillow, python-pycairo, python-pycparser,
|
||||
python-pygobject, python-pyparsing, python-pyqt, python-pysam, python-rdflib,
|
||||
python-scipy, python-sip, python-sqlalchemy, python-xcffib, python2-cairocffi,
|
||||
python2-cffi, python2-distutils-extra, python2-elib.intl, python2-html5lib,
|
||||
python2-ipython, python2-isodate, python2-matplotlib, python2-numpy,
|
||||
python2-numpydoc, python2-pillow, python2-py2cairo, python2-pycparser,
|
||||
python2-pygobject, python2-pygtk, python2-pyparsing, python2-pyqt,
|
||||
python2-pysam, python2-scipy, python2-sip, python2-sqlalchemy, python2-xcffib,
|
||||
qpdf, retroarch, rtorrent, samtools, shflags, slang, slock, socat,
|
||||
startup-notification, sxiv, taglib, telepathy-glib, thunar, thunar-volman,
|
||||
tre, tumbler, vala, vte, vte, wine, wmctrl, xclip, xdotool, xf86-video-geode,
|
||||
xfce4-appfinder, xfce4-battery-plugin, xfce4-panel, xfce4-session,
|
||||
xfce4-settings, xfce4-terminal, xfconf, xfdesktop, xfwm4, xinit, ykclient,
|
||||
zerofree
|
||||
|
||||
*** 222 package updates
|
||||
|
||||
apr-util-1.5.4, atk-2.15.3, automake-1.15, bash-4.3.33, bash-light-4.3.33,
|
||||
bdftopcf-1.0.4, binutils-2.25, binutils-static-stripped-tarball-2.25,
|
||||
cairo-1.12.18, cairomm-1.11.2, ccrtp-2.1.1, curl-7.40.0, dbus-1.8.12,
|
||||
dbus-glib-0.102, ddrescue-1.19, dri2proto-2.8, e2fsck-static-1.42.11,
|
||||
e2fsprogs-1.42.11, eudev-2.1.1, ffmpeg-2.5.3, file-5.22, fish-2.1.1,
|
||||
fontconfig-2.11.92, fontsproto-2.1.3, freeipmi-1.4.8,
|
||||
gcc-cross-mips64el-linux-gnuabi64-4.8.4, gcc-cross-sans-libc-xtensa-elf-4.8.4,
|
||||
gcc-objc++-4.8.4, gcc-objc-4.8.4, gcc-stripped-tarball-4.8.4, gccgo-4.8.4,
|
||||
gcl-2.6.12, gd-2.1.1, gdb-7.8.2, gdk-pixbuf-2.31.1, gettext-0.19.4,
|
||||
gfortran-4.8.4, ghostscript-9.14.0, ghostscript-with-x-9.14.0, gimp-2.8.14,
|
||||
git-2.2.1, glib-2.42.1, glibmm-2.42.0, global-6.3.3, glproto-1.4.17,
|
||||
gnutls-3.2.21, gobject-introspection-1.42.0, gp2c-0.0.9pl2, grep-2.21,
|
||||
groff-1.22.3, gss-1.0.3, gst-plugins-base-1.0.10, gtk+-3.14.7, gtkmm-3.14.0,
|
||||
guix-0.8, guix-0.8.4ad8789, help2man-1.46.4, iceauth-1.0.6, icu4c-54.1,
|
||||
inkscape-0.48.5, inputproto-2.3.1, lcms-2.6, lftp-4.6.1, libassuan-2.2.0,
|
||||
libcdio-0.93, libdmx-1.1.3, libdrm-2.4.58, libfontenc-1.1.2, libfs-1.0.6,
|
||||
libgcrypt-1.6.2, libgpg-error-1.17, libice-1.0.9, libjpeg-9a, libksba-1.3.2,
|
||||
libmicrohttpd-0.9.39, libnl-3.2.25, libpciaccess-0.13.2, libpeas-1.12.1,
|
||||
libpng-1.5.21, librsvg-2.40.6, libsm-1.2.2, libtasn1-4.2, libtool-2.4.5,
|
||||
libx11-1.6.2, libxau-1.0.8, libxaw-1.0.12, libxcb-1.11, libxcomposite-0.4.4,
|
||||
libxcursor-1.1.14, libxdamage-1.1.4, libxext-1.3.3, libxfixes-5.0.1,
|
||||
libxfont-1.5.0, libxft-2.3.2, libxi-1.7.4, libxinerama-1.1.3,
|
||||
libxkbcommon-0.5.0, libxmu-1.1.2, libxp-1.0.2, libxpm-3.5.11, libxrandr-1.4.2,
|
||||
libxrender-0.9.8, libxres-1.0.7, libxt-1.1.4, libxtst-1.2.2, libxv-1.0.10,
|
||||
libxvmc-1.0.8, libxxf86dga-1.1.4, libxxf86vm-1.1.3, linux-libre-3.18.4,
|
||||
lua-5.2.3, makedepend-1.0.5, mercurial-3.2.4, mesa-10.4.0, minetest-0.4.11,
|
||||
mkfontscale-1.1.1, neon-0.30.0, nix-1.8, ntp-4.2.8, ocrad-0.24,
|
||||
openjpeg-2.0.1, openssl-1.0.1k, pango-1.36.8, parallel-20150122,
|
||||
pari-gp-2.7.2, patchelf-0.8, pcre-8.36, perf-3.18.4, phonon-4.8.3,
|
||||
pixman-0.32.6, pkg-config-0.28, poppler-0.28.1, python-3.3.5,
|
||||
python-dateutil-2.2, python2-dateutil-2.2, qemu-2.2.0, qemu-headless-2.2.0,
|
||||
qt-5.4.0, racket-6.1.1, randrproto-1.4.0, raptor2-2.0.15, rasqal-0.9.33,
|
||||
rcs-5.9.4, ruby-2.1.5, sessreg-1.0.8, sipwitch-1.9.3, sqlite-3.8.7.4,
|
||||
tiled-0.11.0, tmux-1.9a, tzdata-2014j, ucommon-6.2.3, util-linux-2.25.2,
|
||||
util-macros-1.19.0, vera-1.22, videoproto-2.3.2, wget-1.16.1, xauth-1.0.9,
|
||||
xbacklight-1.2.1, xcb-proto-1.11, xcb-util-0.4.0, xcb-util-image-0.4.0,
|
||||
xcb-util-keysyms-0.4.0, xcb-util-renderutil-0.3.9, xcb-util-wm-0.4.1,
|
||||
xcursor-themes-1.0.4, xcursorgen-1.0.6, xdpyinfo-1.3.1, xev-1.2.1,
|
||||
xextproto-7.3.0, xf86-input-evdev-2.8.4, xf86-input-joystick-1.6.2,
|
||||
xf86-input-keyboard-1.8.0, xf86-input-mouse-1.9.1, xf86-input-synaptics-1.8.1,
|
||||
xf86-video-ark-0.7.5, xf86-video-ati-7.5.0, xf86-video-cirrus-1.5.2,
|
||||
xf86-video-fbdev-0.4.4, xf86-video-glint-1.2.8, xf86-video-i128-1.3.6,
|
||||
xf86-video-intel-2.21.15, xf86-video-mach64-6.9.4, xf86-video-mga-1.6.3,
|
||||
xf86-video-neomagic-1.2.8, xf86-video-nv-2.1.20, xf86-video-openchrome-0.3.3,
|
||||
xf86-video-r128-6.9.2, xf86-video-savage-2.3.7,
|
||||
xf86-video-siliconmotion-1.7.7, xf86-video-sis-0.10.7,
|
||||
xf86-video-suncg6-1.1.2, xf86-video-sunffb-1.2.2, xf86-video-tdfx-1.4.5,
|
||||
xf86-video-tga-1.2.2, xf86-video-trident-1.3.6, xf86-video-vesa-2.3.3,
|
||||
xf86-video-vmware-13.0.2, xf86-video-voodoo-1.2.5, xhost-1.0.6, xinput-1.6.1,
|
||||
xkbcomp-1.3.0, xkbutils-1.0.4, xkeyboard-config-2.13, xkill-1.0.4,
|
||||
xlockmore-5.45, xlsclients-1.1.3, xmodmap-1.0.8, xnee-3.19,
|
||||
xorg-server-1.16.3, xprop-1.2.2, xproto-7.0.26, xrandr-1.4.3, xrdb-1.1.0,
|
||||
xrefresh-1.0.5, xset-1.2.3, xsetroot-1.1.1, xtrans-1.3.5, xvinfo-1.1.2,
|
||||
xwd-1.0.6, xwininfo-1.1.3, youtube-dl-2015.01.23.4, zsh-5.0.7
|
||||
|
||||
** Programming interfaces
|
||||
|
||||
*** New (guix elf) and (gnu build linux-modules) modules
|
||||
|
||||
These provide resolution of Linux kernel module dependencies. See
|
||||
<https://lists.gnu.org/archive/html/guix-devel/2014-11/msg00670.html>.
|
||||
|
||||
*** ‘glib-or-gtk-build-system’ has been extended
|
||||
|
||||
It now handles GIO and XDG themes, takes care of generating the icon cache,
|
||||
and has a new #:glib-or-gtk-wrap-excluded-outputs parameter.
|
||||
|
||||
*** ‘search-path-specification’ can now specify non-directory items
|
||||
|
||||
For example, the ‘search-path-specification’ attached to libxml2 specifies a
|
||||
file pattern, which allows all the ‘catalog.xml’ files to be added to the
|
||||
‘XML_CATALOG_FILES’ environment variable.
|
||||
|
||||
*** (guix build syscalls) has more network-related procedures
|
||||
|
||||
‘set-network-interface-flags’, ‘set-network-interface-address’,
|
||||
‘network-interface-address’, and ‘configure-network-interface’ are ioctl
|
||||
bindings used by network-handling dmd services.
|
||||
|
||||
*** (guix monads) refactoring
|
||||
|
||||
‘%store-monad’ is now in (guix store) and is an alias for the new
|
||||
‘%state-monad’ provided by (guix monads). Monadic procedures dealing with the
|
||||
store, with derivations, and with packages have been moved from (guix monads)
|
||||
to (guix store), (guix derivations), and (guix packages). See “The Store
|
||||
Monad” in the manual.
|
||||
|
||||
*** (guix build utils) provides ‘parallel-job-count’
|
||||
|
||||
*** ‘wrap-program’ preserves the original argv[0]
|
||||
|
||||
*** New (guix sets) module
|
||||
|
||||
*** ‘define-record-type*’ now support “delayed” fields
|
||||
|
||||
** Noteworthy bug fixes
|
||||
|
||||
*** X session is executed from a login shell (<http://bugs.gnu.org/19119>)
|
||||
*** grub.cfg is now a garbage-collector root (<http://bugs.gnu.org/19160>)
|
||||
*** Substituter progress report properly formatted
|
||||
(<http://bugs.gnu.org/19313>)
|
||||
*** Document permissions for /gnu/store (<http://bugs.gnu.org/19316>)
|
||||
*** Make sure config.go is newer than config.scm
|
||||
(<http://bugs.gnu.org/19317>)
|
||||
*** Emacs knows where to find its GLib schemas (<http://bugs.gnu.org/19138>)
|
||||
*** Adjust 'grub.cfg' to work on systems with a separate /boot
|
||||
(<http://bugs.gnu.org/19220>)
|
||||
*** Fix removal of next-to-last item in a profile
|
||||
(<http://lists.gnu.org/archive/html/guix-devel/2014-12/msg00292.html>)
|
||||
*** Apply patches with "patch --force" (<http://bugs.gnu.org/19402>)
|
||||
*** Extend ‘search-path-specification’ for libxml2-style use cases
|
||||
(<http://bugs.gnu.org/18033>)
|
||||
*** Search for patches under $GUIX_PACKAGE_PATH (<http://bugs.gnu.org/19364>)
|
||||
*** Use executables from the target inputs in 'patch-shebangs'
|
||||
(<http://bugs.gnu.org/18895>)
|
||||
*** guix-daemon now automatically creates '…/profiles/per-user'
|
||||
(<http://bugs.gnu.org/19315>)
|
||||
*** Make /etc/mtab a symlink to /proc/self/mounts
|
||||
(<http://bugs.gnu.org/19491>)
|
||||
*** Don't build the mips64el-linux-gnuabi64 cross-compiler on i686
|
||||
(<http://bugs.gnu.org/19598>)
|
||||
*** Read archive signatures as Latin-1 strings (<http://bugs.gnu.org/19610>)
|
||||
*** Raise an error for references to non-existent outputs
|
||||
(<http://bugs.gnu.org/19630>)
|
||||
*** Initialize libgcrypt before use (<http://bugs.gnu.org/19677>)
|
||||
|
||||
** Native language support
|
||||
|
||||
*** New translations: fr (French), hu (Hungarian)
|
||||
*** Updated translation: eo, vi
|
||||
|
||||
* Changes in 0.8 (since 0.7)
|
||||
|
||||
** Package management
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
#+TITLE: Tentative GNU Guix Road Map
|
||||
|
||||
Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
@@ -17,56 +17,66 @@ The goals of the GNU Guix project are two-fold:
|
||||
GNU/Linux and possibly other GNU variants, with a focus on the
|
||||
promotion and tight integration of GNU components–the GNU system.
|
||||
|
||||
This document lists milestones toward these goals.
|
||||
Since its inception, the project has gone a long way towards that goal. Below
|
||||
is a list of items we want for version "1.0" of the Guix System Distribution.
|
||||
There will be a few 0.x releases by then to give the new features more
|
||||
exposure and testing.
|
||||
|
||||
The timeline below was written at the end of Dec. 2012. An updated and more
|
||||
detailed list of the remaining milestones was posted at
|
||||
https://lists.gnu.org/archive/html/guix-devel/2013-12/msg00120.html .
|
||||
You're welcome to discuss this road map on guix-devel@gnu.org or #guix on
|
||||
Freenode!
|
||||
|
||||
The actual timeline was of course slightly different than initially
|
||||
envisioned, and so was the feature set–things like cross-compilation support
|
||||
and the MIPS64 port were not planned back then. See the news section at
|
||||
http://www.gnu.org/software/guix/ and ‘NEWS’ for the release history.
|
||||
* Features scheduled for 1.0
|
||||
|
||||
* GNU Guix 0.1: Jan. 2013 (was: Dec. 2012)
|
||||
- larger & more robust build farm
|
||||
+ we need a powerful, dedicated front-end
|
||||
+ armhf-linux build machine
|
||||
+ leave Hydra in favor of 'guix publish' + custom code?
|
||||
- more OS features
|
||||
+ LVM support
|
||||
+ encrypted root
|
||||
+ configurable name service switch
|
||||
+ whole-system unit tests, using VMs
|
||||
- more service definitions
|
||||
+ mcron, postfix(?), wicd(?), etc.
|
||||
- better 'guix system'
|
||||
+ 'reconfigure' should be able to restart non-essential services
|
||||
+ support for '--list-generations' and '--delete-generations'
|
||||
- better 'guix pull'
|
||||
+ using Git to fetch the source instead of re-downloading everything
|
||||
+ build more quickly
|
||||
+ install new .mo files and new manual
|
||||
+ authentication of the Guix source: use signed commits?
|
||||
- simplified, purely declarative service list in 'operating-system'
|
||||
+ it should be possible to inspect the service instance declarations and
|
||||
settings
|
||||
- GUIs
|
||||
+ integrate guix-web?
|
||||
+ guile-ncurses installer?
|
||||
- 'guix publish'?
|
||||
|
||||
** basic package management facilities
|
||||
* Features for later
|
||||
|
||||
Including install, upgrade, remove, roll-back, and search.
|
||||
|
||||
** self-contained user-land distribution
|
||||
|
||||
- GNU/Linux-only, i686 and x86_64; optionally mipsel64
|
||||
- ~100 non-X11 packages
|
||||
|
||||
** maybe integrated Nix code
|
||||
|
||||
* GNU Guix 0.2: Feb./Mar. 2013
|
||||
|
||||
** improved package management features
|
||||
|
||||
- user-environment hooks
|
||||
- sophisticated handling of collisions when building a union (package
|
||||
priorities, etc.)
|
||||
|
||||
** [[file:TODO::*add%20guix-pull][guix-pull tool]] to quickly update Guix and GNU for normal users
|
||||
** support for fetching pre-built binaries
|
||||
|
||||
- this is known as the "binary-cache substituter" in Nix parlance
|
||||
|
||||
** auto-update facility available for GNU packages
|
||||
|
||||
** more packages
|
||||
|
||||
- Xorg
|
||||
- Emacs
|
||||
|
||||
* GNU Guix 0.9: June 2013
|
||||
|
||||
** bootable GNU/Linux-Libre distro
|
||||
** high-level OS configuration descriptive EDSL, à la NixOS
|
||||
|
||||
* GNU Guix 1.0: September 2013 (GNU anniversary release)
|
||||
|
||||
** bootable GNU/Linux-Libre distro with non-GUI installer
|
||||
** usable for a range of hacker-style uses
|
||||
- complete GNU/Hurd port
|
||||
- use content-based addressing when downloading substitutes to reduce
|
||||
bandwidth requirements
|
||||
+ design nar v2 format where file contents are replaced by their hashes
|
||||
+ leverage /gnu/store/.links
|
||||
- binary origin tracking
|
||||
+ keep signatures in sqlite.db
|
||||
+ preserve signatures upon import/export
|
||||
- peer-to-peer distribution of updates (GNUnet?)
|
||||
- more deterministic builds
|
||||
+ identify & fix sources of non-determinism in builds
|
||||
+ strengthen guix-daemon containers to further increase reproducibility
|
||||
+ trusting-trust: bootstrap with different tool chains
|
||||
+ fixed-point: re-bootstrap until fixed point is reached
|
||||
+ distributed validation: compare contents of store items with others
|
||||
* resist a hydra.gnu.org compromise
|
||||
- reproducible containers: mix of 'guix environment' and 'guix system vm'
|
||||
- execute code with least privilege
|
||||
+ build containers like guix-daemon does
|
||||
+ provide a Plash-like interface in Bash
|
||||
- daemon rewritten in Guile
|
||||
- more dmd integration
|
||||
+ monitor network interfaces and start/stop events based on that
|
||||
+ include a DHCP client written in Scheme
|
||||
|
||||
@@ -10,6 +10,7 @@ infrastructure help:
|
||||
Federico Beffa <beffa@ieee.org>
|
||||
Marek Benc <merkur32@gmail.com>
|
||||
Sylvain Beucler <beuc@beuc.net>
|
||||
Amirouche Boubekki <amirouche.boubekki@gmail.com>
|
||||
Carlos Carleos <carleos@uniovi.es>
|
||||
Felipe Castro <fefcas@gmail.com>
|
||||
Daniel Clark <dclark@pobox.com>
|
||||
@@ -26,11 +27,13 @@ infrastructure help:
|
||||
Niels Möller <nisse@lysator.liu.se>
|
||||
Yutaka Niibe <gniibe@fsij.org>
|
||||
Adam Pribyl <pribyl@lowlevel.cz>
|
||||
rekado <rekado@elephly.net>
|
||||
Bruno Félix Rezende Ribeiro <oitofelix@gnu.org>
|
||||
Cyrill Schenkel <cyrill.schenkel@gmail.com>
|
||||
Benno Schulenberg <coordinator@translationproject.org>
|
||||
Alen Skondro <askondro@gmail.com>
|
||||
Matthias Wachs <wachs@net.in.tum.de>
|
||||
Andy Wingo <wingo@pobox.com>
|
||||
Philip Woods <elzairthesorcerer@gmail.com>
|
||||
|
||||
GNU Guix also includes non-software works. Thanks to the following
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Import missing source files and create the build system.
|
||||
# Create the build system.
|
||||
|
||||
set -e -x
|
||||
|
||||
top_srcdir="$PWD"
|
||||
export top_srcdir
|
||||
|
||||
git submodule init
|
||||
git submodule update
|
||||
|
||||
./nix/sync-with-upstream
|
||||
|
||||
exec autoreconf -vfi
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -28,31 +28,28 @@
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
|
||||
(define %supported-systems
|
||||
'("x86_64-linux" "i686-linux"))
|
||||
(with-store store
|
||||
(let* ((native (append-map (lambda (system)
|
||||
(map (cut package-derivation store <> system)
|
||||
(list %bootstrap-tarballs emacs)))
|
||||
%supported-systems))
|
||||
(cross (map (cut package-cross-derivation store
|
||||
%bootstrap-tarballs <>)
|
||||
'("mips64el-linux-gnuabi64")))
|
||||
(total (append native cross)))
|
||||
(define (warn item system)
|
||||
(format (current-error-port) "~a (~a) is not substitutable~%"
|
||||
item system)
|
||||
#f)
|
||||
|
||||
(let* ((store (open-connection))
|
||||
(native (append-map (lambda (system)
|
||||
(map (cut package-derivation store <> system)
|
||||
(list %bootstrap-tarballs emacs)))
|
||||
%supported-systems))
|
||||
(cross (map (cut package-cross-derivation store
|
||||
%bootstrap-tarballs <>)
|
||||
'("mips64el-linux-gnuabi64")))
|
||||
(total (append native cross)))
|
||||
(define (warn proc)
|
||||
(lambda (drv)
|
||||
(or (proc drv)
|
||||
(begin
|
||||
(format (current-error-port) "~a is not substitutable~%"
|
||||
drv)
|
||||
#f))))
|
||||
|
||||
(set-build-options store #:use-substitutes? #t)
|
||||
(let ((result (every (compose (warn (cut has-substitutes? store <>))
|
||||
derivation->output-path)
|
||||
total)))
|
||||
(when result
|
||||
(format (current-error-port) "~a packages found substitutable~%"
|
||||
(length total)))
|
||||
(exit result)))
|
||||
(set-build-options store #:use-substitutes? #t)
|
||||
(let* ((substitutable? (substitution-oracle store total))
|
||||
(result (every (lambda (drv)
|
||||
(let ((out (derivation->output-path drv)))
|
||||
(or (substitutable? out)
|
||||
(warn out (derivation-system drv)))))
|
||||
total)))
|
||||
(when result
|
||||
(format (current-error-port) "~a packages found substitutable~%"
|
||||
(length total)))
|
||||
(exit result))))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -29,9 +29,6 @@
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
|
||||
(define %supported-systems
|
||||
'("x86_64-linux" "i686-linux"))
|
||||
|
||||
(define (final-inputs store system)
|
||||
"Return the list of outputs directories of the final inputs for SYSTEM."
|
||||
(append-map (match-lambda
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -45,7 +46,12 @@
|
||||
(match (string-tokenize file (char-set-complement (char-set #\/)))
|
||||
((_ ... system basename)
|
||||
(string->uri (string-append %url-base "/" system
|
||||
"/20131110/" basename)))))
|
||||
(match system
|
||||
("armhf-linux"
|
||||
"/20150101/")
|
||||
(_
|
||||
"/20131110/"))
|
||||
basename)))))
|
||||
|
||||
(match (command-line)
|
||||
((_ file expected-hash)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
(operating-system
|
||||
(host-name "gnu")
|
||||
(timezone "Europe/Paris")
|
||||
(locale "en_US.UTF-8")
|
||||
(locale "en_US.utf8")
|
||||
|
||||
(bootloader (grub-configuration
|
||||
(device "/dev/sda")))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -70,7 +70,8 @@
|
||||
#:optional (package-derivation package-derivation))
|
||||
"Convert PACKAGE to an alist suitable for Hydra."
|
||||
`((derivation . ,(derivation-file-name
|
||||
(package-derivation store package system)))
|
||||
(package-derivation store package system
|
||||
#:graft? #f)))
|
||||
(description . ,(package-synopsis package))
|
||||
(long-description . ,(package-description package))
|
||||
(license . ,(package-license package))
|
||||
@@ -93,7 +94,9 @@ SYSTEM."
|
||||
`(,(symbol-append (string->symbol target) (string->symbol ".") job-name
|
||||
(string->symbol ".") (string->symbol system)) .
|
||||
,(cute package->alist store package system
|
||||
(cut package-cross-derivation <> <> target <>))))
|
||||
(lambda* (store package system #:key graft?)
|
||||
(package-cross-derivation store package target system
|
||||
#:graft? graft?)))))
|
||||
|
||||
(define %core-packages
|
||||
;; Note: Don't put the '-final' package variants because (1) that's
|
||||
@@ -144,14 +147,18 @@ system.")
|
||||
(if (member system '("x86_64-linux" "i686-linux"))
|
||||
(list (->job 'qemu-image
|
||||
(run-with-store store
|
||||
(system-qemu-image (demo-os)
|
||||
#:disk-image-size
|
||||
(* 1400 MiB)))) ; 1.4 GiB
|
||||
(mbegin %store-monad
|
||||
(set-guile-for-build (default-guile))
|
||||
(system-qemu-image (demo-os)
|
||||
#:disk-image-size
|
||||
(* 1400 MiB))))) ; 1.4 GiB
|
||||
(->job 'usb-image
|
||||
(run-with-store store
|
||||
(system-disk-image installation-os
|
||||
#:disk-image-size
|
||||
(* 800 MiB)))))
|
||||
(mbegin %store-monad
|
||||
(set-guile-for-build (default-guile))
|
||||
(system-disk-image installation-os
|
||||
#:disk-image-size
|
||||
(* 800 MiB))))))
|
||||
'()))
|
||||
|
||||
(define job-name
|
||||
|
||||
@@ -27,6 +27,8 @@ exec guile -l "$0" \
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix gnu-maintenance)
|
||||
#:use-module ((guix download) #:select (%mirrors))
|
||||
#:use-module ((guix build download) #:select (maybe-expand-mirrors))
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (sxml simple)
|
||||
#:use-module (sxml fold)
|
||||
@@ -107,9 +109,12 @@ decreasing, is 1."
|
||||
"http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/"
|
||||
(basename patch)))
|
||||
((? origin? patch)
|
||||
(match (origin-uri patch)
|
||||
((? string? uri) uri)
|
||||
((head . tail) head)))))
|
||||
(uri->string
|
||||
(first (maybe-expand-mirrors (string->uri
|
||||
(match (origin-uri patch)
|
||||
((? string? uri) uri)
|
||||
((head . tail) head)))
|
||||
%mirrors))))))
|
||||
|
||||
(define patch-name
|
||||
(match-lambda
|
||||
|
||||
@@ -1,85 +0,0 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;;
|
||||
;;; Report package synopses and descriptions that defer from those found in
|
||||
;;; the GNU Womb.
|
||||
;;;
|
||||
|
||||
(use-modules (guix gnu-maintenance)
|
||||
(guix packages)
|
||||
(guix utils)
|
||||
(guix ui)
|
||||
(gnu packages)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26)
|
||||
(ice-9 match))
|
||||
|
||||
(define official
|
||||
;; GNU package descriptors from the Womb.
|
||||
(official-gnu-packages))
|
||||
|
||||
(define gnus
|
||||
;; GNU packages available in the distro.
|
||||
(let ((lookup (lambda (p)
|
||||
(find (lambda (descriptor)
|
||||
(equal? (gnu-package-name descriptor)
|
||||
(package-name p)))
|
||||
official))))
|
||||
(fold-packages (lambda (package result)
|
||||
(or (and=> (lookup package)
|
||||
(cut alist-cons package <> result))
|
||||
result))
|
||||
'())))
|
||||
|
||||
(define (escape-quotes str)
|
||||
"Replace any quote character in STR by an escaped quote character."
|
||||
(list->string
|
||||
(string-fold-right (lambda (chr result)
|
||||
(match chr
|
||||
(#\" (cons* #\\ #\"result))
|
||||
(_ (cons chr result))))
|
||||
'()
|
||||
str)))
|
||||
|
||||
;; Iterate over GNU packages. Report those whose synopsis defers from that
|
||||
;; found upstream.
|
||||
(for-each (match-lambda
|
||||
((package . descriptor)
|
||||
(let ((upstream (gnu-package-doc-summary descriptor))
|
||||
(downstream (package-synopsis package))
|
||||
(loc (or (package-field-location package 'synopsis)
|
||||
(package-location package))))
|
||||
(unless (and upstream (string=? upstream downstream))
|
||||
(format (guix-warning-port)
|
||||
"~a: ~a: proposed synopsis: ~s~%"
|
||||
(location->string loc) (package-name package)
|
||||
upstream)))
|
||||
|
||||
(let ((upstream (gnu-package-doc-description descriptor))
|
||||
(downstream (package-description package))
|
||||
(loc (or (package-field-location package 'description)
|
||||
(package-location package))))
|
||||
(when (and upstream
|
||||
(not (string=? (fill-paragraph upstream 100)
|
||||
(fill-paragraph downstream 100))))
|
||||
(format (guix-warning-port)
|
||||
"~a: ~a: proposed description:~% \"~a\"~%"
|
||||
(location->string loc) (package-name package)
|
||||
(fill-paragraph (escape-quotes upstream) 77 7))))))
|
||||
gnus)
|
||||
+1
-1
@@ -73,7 +73,7 @@ if test "x$guix_build_daemon" = "xyes"; then
|
||||
|
||||
dnl Chroot support.
|
||||
AC_CHECK_FUNCS([chroot unshare])
|
||||
AC_CHECK_HEADERS([sched.h sys/param.h sys/mount.h])
|
||||
AC_CHECK_HEADERS([sched.h sys/param.h sys/mount.h tr1/unordered_set])
|
||||
|
||||
dnl lutimes and lchown: used when canonicalizing store items.
|
||||
dnl posix_fallocate: used when extracting archives.
|
||||
|
||||
+2
-1
@@ -2,7 +2,7 @@
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ(2.68)
|
||||
AC_INIT([GNU Guix], [0.8], [bug-guix@gnu.org], [guix],
|
||||
AC_INIT([GNU Guix], [0.8.1], [bug-guix@gnu.org], [guix],
|
||||
[http://www.gnu.org/software/guix/])
|
||||
AC_CONFIG_AUX_DIR([build-aux])
|
||||
|
||||
@@ -185,6 +185,7 @@ AM_CONDITIONAL([HAVE_EMACS], [test "x$EMACS" != "xno"])
|
||||
emacsuidir="${guilemoduledir}/guix/emacs"
|
||||
AC_SUBST([emacsuidir])
|
||||
AC_CONFIG_FILES([emacs/guix-init.el
|
||||
emacs/guix-profiles.el
|
||||
emacs/guix-helper.scm])
|
||||
|
||||
AC_OUTPUT
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
@@ -180,7 +180,6 @@ nodist_libexec_SCRIPTS = \
|
||||
nix/scripts/guix-authenticate
|
||||
|
||||
EXTRA_DIST += \
|
||||
nix/sync-with-upstream \
|
||||
nix/libstore/schema.sql \
|
||||
nix/AUTHORS \
|
||||
nix/COPYING
|
||||
|
||||
+20
-4
@@ -24,6 +24,12 @@ guix package}). Specifically, ``guix.el'' makes it easy to:
|
||||
@node Emacs Initial Setup
|
||||
@subsection Initial Setup
|
||||
|
||||
On the Guix System Distribution (@pxref{GNU Distribution}), ``guix.el''
|
||||
is ready to use, provided Guix is installed system-wide, which is the
|
||||
case by default. So if that is what you're using, you can happily skip
|
||||
this section and read about the fun stuff.
|
||||
|
||||
If you're not yet a happy user of GSD, a little bit of setup is needed.
|
||||
To be able to use ``guix.el'', you need to install the following
|
||||
packages:
|
||||
|
||||
@@ -56,11 +62,21 @@ Manual}):
|
||||
(require 'guix-init)
|
||||
@end example
|
||||
|
||||
Do not worry about the efficiency of that @code{require} thing. It will
|
||||
not load the whole ``guix.el'' package, it will just autoload the main
|
||||
interactive commands (@pxref{Autoload,,, elisp, The GNU Emacs Lisp
|
||||
Reference Manual}).
|
||||
By default, along with autoloading (@pxref{Autoload,,, elisp, The GNU
|
||||
Emacs Lisp Reference Manual}) the main interactive commands for
|
||||
``guix.el'' (@pxref{Emacs Commands}), requiring @code{guix-init} will
|
||||
also autoload commands for the Emacs packages installed in your user
|
||||
profile.
|
||||
|
||||
To disable automatic loading of installed Emacs packages, set
|
||||
@code{guix-package-enable-at-startup} variable to @code{nil} before
|
||||
requiring @code{guix-init}. This variable has the same meaning for
|
||||
Emacs packages installed with Guix, as @code{package-enable-at-startup}
|
||||
for the built-in Emacs package system (@pxref{Package Installation,,,
|
||||
emacs, The GNU Emacs Manual}).
|
||||
|
||||
You can activate Emacs packages installed in your profile whenever you
|
||||
want using @kbd{M-x@tie{}guix-emacs-load-autoloads}.
|
||||
|
||||
@node Emacs Usage
|
||||
@subsection Usage
|
||||
|
||||
+659
-115
File diff suppressed because it is too large
Load Diff
@@ -21,6 +21,7 @@ AUTOLOADS = emacs/guix-autoloads.el
|
||||
ELFILES = \
|
||||
emacs/guix-backend.el \
|
||||
emacs/guix-base.el \
|
||||
emacs/guix-emacs.el \
|
||||
emacs/guix-history.el \
|
||||
emacs/guix-info.el \
|
||||
emacs/guix-list.el \
|
||||
@@ -36,7 +37,8 @@ dist_lisp_DATA = \
|
||||
$(AUTOLOADS)
|
||||
|
||||
nodist_lisp_DATA = \
|
||||
emacs/guix-init.el
|
||||
emacs/guix-init.el \
|
||||
emacs/guix-profiles.el
|
||||
|
||||
$(AUTOLOADS): $(ELFILES)
|
||||
$(EMACS) --batch --eval \
|
||||
|
||||
@@ -52,6 +52,7 @@
|
||||
;;; Code:
|
||||
|
||||
(require 'geiser-mode)
|
||||
(require 'guix-emacs)
|
||||
|
||||
(defvar guix-load-path
|
||||
(file-name-directory (or load-file-name
|
||||
@@ -125,7 +126,8 @@ This REPL is used for receiving information only if
|
||||
"Hook run before executing an operation in Guix REPL.")
|
||||
|
||||
(defvar guix-after-repl-operation-hook
|
||||
'(guix-repl-operation-success-message)
|
||||
'(guix-emacs-load-autoloads-maybe
|
||||
guix-repl-operation-success-message)
|
||||
"Hook run after executing successful operation in Guix REPL.")
|
||||
|
||||
(defvar guix-repl-operation-p nil
|
||||
@@ -206,7 +208,8 @@ this address (it should be defined by
|
||||
;; A mix of the code from `geiser-repl--start-repl' and
|
||||
;; `geiser-repl--to-repl-buffer'.
|
||||
(let ((impl 'guile)
|
||||
(geiser-guile-load-path (list guix-load-path))
|
||||
(geiser-guile-load-path (cons guix-load-path
|
||||
geiser-guile-load-path))
|
||||
(geiser-repl-startup-time guix-repl-startup-time))
|
||||
(with-current-buffer buffer
|
||||
(geiser-repl-mode)
|
||||
|
||||
+1
-41
@@ -28,52 +28,12 @@
|
||||
;;; Code:
|
||||
|
||||
(require 'cl-lib)
|
||||
(require 'guix-profiles)
|
||||
(require 'guix-backend)
|
||||
(require 'guix-utils)
|
||||
(require 'guix-history)
|
||||
(require 'guix-messages)
|
||||
|
||||
|
||||
;;; Profiles
|
||||
|
||||
(defvar guix-user-profile
|
||||
(expand-file-name "~/.guix-profile")
|
||||
"User profile.")
|
||||
|
||||
(defvar guix-default-profile
|
||||
(concat (or (getenv "NIX_STATE_DIR") "/var/guix")
|
||||
"/profiles/per-user/"
|
||||
(getenv "USER")
|
||||
"/guix-profile")
|
||||
"Default Guix profile.")
|
||||
|
||||
(defvar guix-current-profile guix-default-profile
|
||||
"Current profile.")
|
||||
|
||||
(defun guix-profile-prompt (&optional default)
|
||||
"Prompt for profile and return it.
|
||||
Use DEFAULT as a start directory. If it is nil, use
|
||||
`guix-current-profile'."
|
||||
(let* ((path (read-file-name "Profile: "
|
||||
(file-name-directory
|
||||
(or default guix-current-profile))))
|
||||
(path (directory-file-name (expand-file-name path))))
|
||||
(if (string= path guix-user-profile)
|
||||
guix-default-profile
|
||||
path)))
|
||||
|
||||
(defun guix-set-current-profile (path)
|
||||
"Set `guix-current-profile' to PATH.
|
||||
Interactively, prompt for PATH. With prefix, use
|
||||
`guix-default-profile'."
|
||||
(interactive
|
||||
(list (if current-prefix-arg
|
||||
guix-default-profile
|
||||
(guix-profile-prompt))))
|
||||
(setq guix-current-profile path)
|
||||
(message "Current profile has been set to '%s'."
|
||||
guix-current-profile))
|
||||
|
||||
|
||||
;;; Parameters of the entries
|
||||
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
;;; guix-emacs.el --- Emacs packages installed with Guix
|
||||
|
||||
;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
|
||||
;; This file is part of GNU Guix.
|
||||
|
||||
;; GNU Guix is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation, either version 3 of the License, or
|
||||
;; (at your option) any later version.
|
||||
|
||||
;; GNU Guix is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; This file provides auxiliary code for working with Emacs packages
|
||||
;; installed with Guix.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'guix-profiles)
|
||||
|
||||
(defcustom guix-emacs-activate-after-operation t
|
||||
"Activate Emacs packages after installing.
|
||||
If nil, do not load autoloads of the Emacs packages after
|
||||
they are successfully installed."
|
||||
:type 'boolean
|
||||
:group 'guix)
|
||||
|
||||
(defvar guix-emacs-autoloads nil
|
||||
"List of the last loaded Emacs autoloads.")
|
||||
|
||||
(defun guix-emacs-directory (&optional profile)
|
||||
"Return directory with Emacs packages installed in PROFILE.
|
||||
If PROFILE is nil, use `guix-user-profile'."
|
||||
(expand-file-name "share/emacs/site-lisp"
|
||||
(or profile guix-user-profile)))
|
||||
|
||||
(defun guix-emacs-find-autoloads (&optional profile)
|
||||
"Return list of autoloads of Emacs packages installed in PROFILE.
|
||||
If PROFILE is nil, use `guix-user-profile'.
|
||||
Return nil if there are no emacs packages installed in PROFILE."
|
||||
(let ((dir (guix-emacs-directory profile)))
|
||||
(if (file-directory-p dir)
|
||||
(directory-files dir 'full-name "-autoloads\\.el\\'")
|
||||
(message "Directory '%s' does not exist." dir)
|
||||
nil)))
|
||||
|
||||
;;;###autoload
|
||||
(defun guix-emacs-load-autoloads (&optional all)
|
||||
"Load autoloads for Emacs packages installed in a user profile.
|
||||
If ALL is nil, activate only those packages that were installed
|
||||
after the last activation, otherwise activate all Emacs packages
|
||||
installed in `guix-user-profile'."
|
||||
(interactive "P")
|
||||
(let* ((autoloads (guix-emacs-find-autoloads))
|
||||
(files (if all
|
||||
autoloads
|
||||
(cl-nset-difference autoloads guix-emacs-autoloads
|
||||
:test #'string=))))
|
||||
(dolist (file files)
|
||||
(load file 'noerror))
|
||||
(setq guix-emacs-autoloads autoloads)))
|
||||
|
||||
(defun guix-emacs-load-autoloads-maybe ()
|
||||
"Load autoloads for Emacs packages if needed.
|
||||
See `guix-emacs-activate-after-operation' for details."
|
||||
(and guix-emacs-activate-after-operation
|
||||
(guix-emacs-load-autoloads)))
|
||||
|
||||
(provide 'guix-emacs)
|
||||
|
||||
;;; guix-emacs.el ends here
|
||||
@@ -50,6 +50,7 @@
|
||||
(and=> (getenv "HOME")
|
||||
(cut string-append <> "/.config")))
|
||||
(cut string-append <> "/guix/latest"))))
|
||||
(push! module-dir %load-path)
|
||||
(push! module-dir %load-compiled-path)
|
||||
(if (and updates-dir (file-exists? updates-dir))
|
||||
(begin
|
||||
|
||||
+13
-6
@@ -1,14 +1,21 @@
|
||||
(require 'guix-autoloads)
|
||||
(require 'guix-emacs)
|
||||
|
||||
(defvar guix-load-path
|
||||
(replace-regexp-in-string "${prefix}" "@prefix@" "@emacsuidir@")
|
||||
"Directory with scheme files for \"guix.el\" package.")
|
||||
|
||||
(defvar guix-default-profile
|
||||
(concat (or (getenv "NIX_STATE_DIR") "@guix_localstatedir@/guix")
|
||||
"/profiles/per-user/"
|
||||
(getenv "USER")
|
||||
"/guix-profile")
|
||||
"Default Guix profile.")
|
||||
(defcustom guix-package-enable-at-startup t
|
||||
"If non-nil, activate Emacs packages installed in a user profile.
|
||||
Set this variable to nil before requiring `guix-init' file to
|
||||
avoid loading autoloads of Emacs packages installed in
|
||||
`guix-user-profile'."
|
||||
:type 'boolean
|
||||
:group 'guix)
|
||||
|
||||
(add-to-list 'load-path (guix-emacs-directory))
|
||||
|
||||
(when guix-package-enable-at-startup
|
||||
(guix-emacs-load-autoloads 'all))
|
||||
|
||||
(provide 'guix-init)
|
||||
|
||||
+5
-1
@@ -853,10 +853,13 @@ OUTPUTS is a list of package outputs (may be an empty list)."
|
||||
(unless (and (null? install) (null? remove))
|
||||
(with-store store
|
||||
(let* ((derivation (run-with-store store
|
||||
(profile-derivation new-manifest)))
|
||||
(mbegin %store-monad
|
||||
(set-guile-for-build (default-guile))
|
||||
(profile-derivation new-manifest))))
|
||||
(derivations (list derivation))
|
||||
(new-profile (derivation->output-path derivation)))
|
||||
(set-build-options store
|
||||
#:print-build-trace #f
|
||||
#:use-substitutes? use-substitutes?)
|
||||
(show-manifest-transaction store manifest transaction
|
||||
#:dry-run? dry-run?)
|
||||
@@ -908,6 +911,7 @@ GENERATIONS is a list of generation numbers."
|
||||
(let* ((derivation (package-source-derivation store source))
|
||||
(derivations (list derivation)))
|
||||
(set-build-options store
|
||||
#:print-build-trace #f
|
||||
#:use-substitutes? use-substitutes?)
|
||||
(show-what-to-build store derivations
|
||||
#:use-substitutes? use-substitutes?
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
;;; guix-profiles.el --- Guix profiles
|
||||
|
||||
;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
|
||||
;; This file is part of GNU Guix.
|
||||
|
||||
;; GNU Guix is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation, either version 3 of the License, or
|
||||
;; (at your option) any later version.
|
||||
|
||||
;; GNU Guix is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(defvar guix-user-profile
|
||||
(expand-file-name "~/.guix-profile")
|
||||
"User profile.")
|
||||
|
||||
(defvar guix-default-profile
|
||||
(concat (or (getenv "NIX_STATE_DIR") "@guix_localstatedir@/guix")
|
||||
"/profiles/per-user/"
|
||||
(getenv "USER")
|
||||
"/guix-profile")
|
||||
"Default Guix profile.")
|
||||
|
||||
(defvar guix-current-profile guix-default-profile
|
||||
"Current profile.")
|
||||
|
||||
(defun guix-profile-prompt (&optional default)
|
||||
"Prompt for profile and return it.
|
||||
Use DEFAULT as a start directory. If it is nil, use
|
||||
`guix-current-profile'."
|
||||
(let* ((path (read-file-name "Profile: "
|
||||
(file-name-directory
|
||||
(or default guix-current-profile))))
|
||||
(path (directory-file-name (expand-file-name path))))
|
||||
(if (string= path guix-user-profile)
|
||||
guix-default-profile
|
||||
path)))
|
||||
|
||||
(defun guix-set-current-profile (path)
|
||||
"Set `guix-current-profile' to PATH.
|
||||
Interactively, prompt for PATH. With prefix, use
|
||||
`guix-default-profile'."
|
||||
(interactive
|
||||
(list (if current-prefix-arg
|
||||
guix-default-profile
|
||||
(guix-profile-prompt))))
|
||||
(setq guix-current-profile path)
|
||||
(message "Current profile has been set to '%s'."
|
||||
guix-current-profile))
|
||||
|
||||
(provide 'guix-profiles)
|
||||
|
||||
;;; guix-profiles.el ends here
|
||||
+118
-18
@@ -1,7 +1,7 @@
|
||||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
# Copyright © 2013, 2014 Mark H Weaver <mhw@netris.org>
|
||||
# Copyright © 2013, 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
@@ -37,13 +37,16 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/asciidoc.scm \
|
||||
gnu/packages/aspell.scm \
|
||||
gnu/packages/attr.scm \
|
||||
gnu/packages/audio.scm \
|
||||
gnu/packages/autogen.scm \
|
||||
gnu/packages/autotools.scm \
|
||||
gnu/packages/avahi.scm \
|
||||
gnu/packages/avr.scm \
|
||||
gnu/packages/backup.scm \
|
||||
gnu/packages/base.scm \
|
||||
gnu/packages/bash.scm \
|
||||
gnu/packages/bdw-gc.scm \
|
||||
gnu/packages/bioinformatics.scm \
|
||||
gnu/packages/bittorrent.scm \
|
||||
gnu/packages/bison.scm \
|
||||
gnu/packages/boost.scm \
|
||||
@@ -65,12 +68,14 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/cross-base.scm \
|
||||
gnu/packages/crypto.scm \
|
||||
gnu/packages/cryptsetup.scm \
|
||||
gnu/packages/cups.scm \
|
||||
gnu/packages/curl.scm \
|
||||
gnu/packages/cursynth.scm \
|
||||
gnu/packages/cyrus-sasl.scm \
|
||||
gnu/packages/databases.scm \
|
||||
gnu/packages/datamash.scm \
|
||||
gnu/packages/dc.scm \
|
||||
gnu/packages/debug.scm \
|
||||
gnu/packages/dejagnu.scm \
|
||||
gnu/packages/dictionaries.scm \
|
||||
gnu/packages/disk.scm \
|
||||
@@ -93,6 +98,8 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/freeipmi.scm \
|
||||
gnu/packages/ftp.scm \
|
||||
gnu/packages/fribidi.scm \
|
||||
gnu/packages/fvwm.scm \
|
||||
gnu/packages/game-development.scm \
|
||||
gnu/packages/games.scm \
|
||||
gnu/packages/gawk.scm \
|
||||
gnu/packages/gcal.scm \
|
||||
@@ -118,6 +125,7 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/gperf.scm \
|
||||
gnu/packages/gprolog.scm \
|
||||
gnu/packages/gps.scm \
|
||||
gnu/packages/graphics.scm \
|
||||
gnu/packages/graphviz.scm \
|
||||
gnu/packages/groff.scm \
|
||||
gnu/packages/grub.scm \
|
||||
@@ -155,10 +163,12 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/libunistring.scm \
|
||||
gnu/packages/libusb.scm \
|
||||
gnu/packages/libunwind.scm \
|
||||
gnu/packages/libupnp.scm \
|
||||
gnu/packages/lightning.scm \
|
||||
gnu/packages/links.scm \
|
||||
gnu/packages/linux.scm \
|
||||
gnu/packages/lisp.scm \
|
||||
gnu/packages/llvm.scm \
|
||||
gnu/packages/lout.scm \
|
||||
gnu/packages/lsh.scm \
|
||||
gnu/packages/lsof.scm \
|
||||
@@ -172,6 +182,7 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/mc.scm \
|
||||
gnu/packages/mcrypt.scm \
|
||||
gnu/packages/messaging.scm \
|
||||
gnu/packages/mg.scm \
|
||||
gnu/packages/miscfiles.scm \
|
||||
gnu/packages/mit-krb5.scm \
|
||||
gnu/packages/moe.scm \
|
||||
@@ -185,13 +196,16 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/ncurses.scm \
|
||||
gnu/packages/netpbm.scm \
|
||||
gnu/packages/nettle.scm \
|
||||
gnu/packages/ninja.scm \
|
||||
gnu/packages/node.scm \
|
||||
gnu/packages/noweb.scm \
|
||||
gnu/packages/ntp.scm \
|
||||
gnu/packages/nutrition.scm \
|
||||
gnu/packages/nvi.scm \
|
||||
gnu/packages/ocaml.scm \
|
||||
gnu/packages/ocrad.scm \
|
||||
gnu/packages/onc-rpc.scm \
|
||||
gnu/packages/openbox.scm \
|
||||
gnu/packages/openldap.scm \
|
||||
gnu/packages/openssl.scm \
|
||||
gnu/packages/orpheus.scm \
|
||||
@@ -227,17 +241,19 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/scanner.scm \
|
||||
gnu/packages/scheme.scm \
|
||||
gnu/packages/screen.scm \
|
||||
gnu/packages/scrot.scm \
|
||||
gnu/packages/sdl.scm \
|
||||
gnu/packages/search.scm \
|
||||
gnu/packages/serveez.scm \
|
||||
gnu/packages/shishi.scm \
|
||||
gnu/packages/skribilo.scm \
|
||||
gnu/packages/slang.scm \
|
||||
gnu/packages/slim.scm \
|
||||
gnu/packages/smalltalk.scm \
|
||||
gnu/packages/socat.scm \
|
||||
gnu/packages/ssh.scm \
|
||||
gnu/packages/stalonetray.scm \
|
||||
gnu/packages/swig.scm \
|
||||
gnu/packages/sxiv.scm \
|
||||
gnu/packages/synergy.scm \
|
||||
gnu/packages/tcl.scm \
|
||||
gnu/packages/tcsh.scm \
|
||||
@@ -247,7 +263,7 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/time.scm \
|
||||
gnu/packages/tmux.scm \
|
||||
gnu/packages/tor.scm \
|
||||
gnu/packages/unclutter.scm \
|
||||
gnu/packages/tre.scm \
|
||||
gnu/packages/unrtf.scm \
|
||||
gnu/packages/upnp.scm \
|
||||
gnu/packages/uucp.scm \
|
||||
@@ -263,15 +279,18 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/packages/weechat.scm \
|
||||
gnu/packages/wget.scm \
|
||||
gnu/packages/which.scm \
|
||||
gnu/packages/wine.scm \
|
||||
gnu/packages/wordnet.scm \
|
||||
gnu/packages/wv.scm \
|
||||
gnu/packages/xfig.scm \
|
||||
gnu/packages/xiph.scm \
|
||||
gnu/packages/xlockmore.scm \
|
||||
gnu/packages/xml.scm \
|
||||
gnu/packages/xnee.scm \
|
||||
gnu/packages/xdisorg.scm \
|
||||
gnu/packages/xorg.scm \
|
||||
gnu/packages/xfce.scm \
|
||||
gnu/packages/yasm.scm \
|
||||
gnu/packages/yubico.scm \
|
||||
gnu/packages/zile.scm \
|
||||
gnu/packages/zip.scm \
|
||||
gnu/packages/zsh.scm \
|
||||
@@ -291,6 +310,7 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/system/install.scm \
|
||||
gnu/system/linux.scm \
|
||||
gnu/system/linux-initrd.scm \
|
||||
gnu/system/locale.scm \
|
||||
gnu/system/shadow.scm \
|
||||
gnu/system/vm.scm \
|
||||
\
|
||||
@@ -299,6 +319,7 @@ GNU_SYSTEM_MODULES = \
|
||||
gnu/build/install.scm \
|
||||
gnu/build/linux-boot.scm \
|
||||
gnu/build/linux-initrd.scm \
|
||||
gnu/build/linux-modules.scm \
|
||||
gnu/build/vm.scm
|
||||
|
||||
|
||||
@@ -310,6 +331,11 @@ dist_patch_DATA = \
|
||||
gnu/packages/patches/abiword-pass-no-undefined-to-linker.patch \
|
||||
gnu/packages/patches/abiword-use-proper-png-api.patch \
|
||||
gnu/packages/patches/abiword-wmf-version-lookup-fix.patch \
|
||||
gnu/packages/patches/aegis-constness-error.patch \
|
||||
gnu/packages/patches/aegis-perl-tempdir1.patch \
|
||||
gnu/packages/patches/aegis-perl-tempdir2.patch \
|
||||
gnu/packages/patches/aegis-test-fixup-1.patch \
|
||||
gnu/packages/patches/aegis-test-fixup-2.patch \
|
||||
gnu/packages/patches/alsa-lib-mips-atomic-fix.patch \
|
||||
gnu/packages/patches/apr-skip-getservbyname-test.patch \
|
||||
gnu/packages/patches/ath9k-htc-firmware-binutils.patch \
|
||||
@@ -325,9 +351,16 @@ dist_patch_DATA = \
|
||||
gnu/packages/patches/clucene-pkgconfig.patch \
|
||||
gnu/packages/patches/cmake-fix-tests.patch \
|
||||
gnu/packages/patches/coreutils-dummy-man.patch \
|
||||
gnu/packages/patches/cpio-CVE-2014-9112-pt1.patch \
|
||||
gnu/packages/patches/cpio-CVE-2014-9112-pt2.patch \
|
||||
gnu/packages/patches/cpio-CVE-2014-9112-pt3.patch \
|
||||
gnu/packages/patches/cpio-CVE-2014-9112-pt4.patch \
|
||||
gnu/packages/patches/cpio-CVE-2014-9112-pt5.patch \
|
||||
gnu/packages/patches/cpio-gets-undeclared.patch \
|
||||
gnu/packages/patches/cssc-gets-undeclared.patch \
|
||||
gnu/packages/patches/cssc-missing-include.patch \
|
||||
gnu/packages/patches/clucene-contribs-lib.patch \
|
||||
gnu/packages/patches/curl-gss-api-fix.patch \
|
||||
gnu/packages/patches/cursynth-wave-rand.patch \
|
||||
gnu/packages/patches/dbus-localstatedir.patch \
|
||||
gnu/packages/patches/diffutils-gets-undeclared.patch \
|
||||
@@ -337,66 +370,91 @@ dist_patch_DATA = \
|
||||
gnu/packages/patches/duplicity-piped-password.patch \
|
||||
gnu/packages/patches/duplicity-test_selection-tmp.patch \
|
||||
gnu/packages/patches/eudev-rules-directory.patch \
|
||||
gnu/packages/patches/file-CVE-2014-3587.patch \
|
||||
gnu/packages/patches/findutils-absolute-paths.patch \
|
||||
gnu/packages/patches/flashrom-use-libftdi1.patch \
|
||||
gnu/packages/patches/flex-bison-tests.patch \
|
||||
gnu/packages/patches/gawk-shell.patch \
|
||||
gnu/packages/patches/gcc-cross-environment-variables.patch \
|
||||
gnu/packages/patches/gcc-fix-pr61801.patch \
|
||||
gnu/packages/patches/gd-mips64-deplibs-fix.patch \
|
||||
gnu/packages/patches/glib-tests-desktop.patch \
|
||||
gnu/packages/patches/glib-tests-homedir.patch \
|
||||
gnu/packages/patches/glib-tests-prlimit.patch \
|
||||
gnu/packages/patches/glib-tests-timer.patch \
|
||||
gnu/packages/patches/glib-tests-gapplication.patch \
|
||||
gnu/packages/patches/glibc-CVE-2012-3406.patch \
|
||||
gnu/packages/patches/glibc-CVE-2014-7817.patch \
|
||||
gnu/packages/patches/glibc-bootstrap-system.patch \
|
||||
gnu/packages/patches/glibc-ldd-x86_64.patch \
|
||||
gnu/packages/patches/glibc-mips-dangling-vfork-ref.patch \
|
||||
gnu/packages/patches/gmp-arm-asm-nothumb.patch \
|
||||
gnu/packages/patches/gnunet-fix-scheduler.patch \
|
||||
gnu/packages/patches/gnunet-fix-tests.patch \
|
||||
gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch \
|
||||
gnu/packages/patches/gobject-introspection-cc.patch \
|
||||
gnu/packages/patches/gobject-introspection-girepository.patch \
|
||||
gnu/packages/patches/grub-gets-undeclared.patch \
|
||||
gnu/packages/patches/gstreamer-0.10-bison3.patch \
|
||||
gnu/packages/patches/gstreamer-0.10-silly-test.patch \
|
||||
gnu/packages/patches/guile-1.8-cpp-4.5.patch \
|
||||
gnu/packages/patches/guile-arm-fixes.patch \
|
||||
gnu/packages/patches/guile-default-utf8.patch \
|
||||
gnu/packages/patches/guile-linux-syscalls.patch \
|
||||
gnu/packages/patches/guile-relocatable.patch \
|
||||
gnu/packages/patches/guix-test-networking.patch \
|
||||
gnu/packages/patches/gtkglext-disable-disable-deprecated.patch \
|
||||
gnu/packages/patches/hop-bigloo-4.0b.patch \
|
||||
gnu/packages/patches/icu4c-test-date-format.patch \
|
||||
gnu/packages/patches/inkscape-stray-comma.patch \
|
||||
gnu/packages/patches/icecat-armhf-xpcom.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1587-bug-1042567.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1587-bug-1072847.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1587-bug-1079729.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1587-bug-1080312.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1587-bug-1089207.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1590.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1592.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1593.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-1594.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-8634-pt1.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-8634-pt2.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-8638-pt1.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-8638-pt2.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-8639.patch \
|
||||
gnu/packages/patches/icecat-CVE-2014-8641.patch \
|
||||
gnu/packages/patches/irrlicht-mesa-10.patch \
|
||||
gnu/packages/patches/jbig2dec-ignore-testtest.patch \
|
||||
gnu/packages/patches/kmod-module-directory.patch \
|
||||
gnu/packages/patches/libarchive-CVE-2013-0211.patch \
|
||||
gnu/packages/patches/libarchive-fix-lzo-test-case.patch \
|
||||
gnu/packages/patches/libarchive-mtree-filename-length-fix.patch \
|
||||
gnu/packages/patches/libbonobo-activation-test-race.patch \
|
||||
gnu/packages/patches/libcanberra-sound-theme-freedesktop.patch \
|
||||
gnu/packages/patches/libevent-dns-tests.patch \
|
||||
gnu/packages/patches/liboop-mips64-deplibs-fix.patch \
|
||||
gnu/packages/patches/libmad-mips-newgcc.patch \
|
||||
gnu/packages/patches/libtheora-config-guess.patch \
|
||||
gnu/packages/patches/libtool-skip-tests.patch \
|
||||
gnu/packages/patches/libtool-skip-tests-for-mips.patch \
|
||||
gnu/packages/patches/libssh-CVE-2014-0017.patch \
|
||||
gnu/packages/patches/lm-sensors-hwmon-attrs.patch \
|
||||
gnu/packages/patches/lua51-liblua-so.patch \
|
||||
gnu/packages/patches/luit-posix.patch \
|
||||
gnu/packages/patches/m4-gets-undeclared.patch \
|
||||
gnu/packages/patches/m4-readlink-EINVAL.patch \
|
||||
gnu/packages/patches/make-impure-dirs.patch \
|
||||
gnu/packages/patches/mc-fix-ncurses-build.patch \
|
||||
gnu/packages/patches/mcron-install.patch \
|
||||
gnu/packages/patches/mhash-keygen-test-segfault.patch \
|
||||
gnu/packages/patches/minetest-subgame-env-var.patch \
|
||||
gnu/packages/patches/mit-krb5-init-fix.patch \
|
||||
gnu/packages/patches/mpc123-initialize-ao.patch \
|
||||
gnu/packages/patches/module-init-tools-moduledir.patch \
|
||||
gnu/packages/patches/mupdf-buildsystem-fix.patch \
|
||||
gnu/packages/patches/mutt-CVE-2014-9116.patch \
|
||||
gnu/packages/patches/net-tools-bitrot.patch \
|
||||
gnu/packages/patches/nvi-assume-preserve-path.patch \
|
||||
gnu/packages/patches/ninja-tests.patch \
|
||||
gnu/packages/patches/nss-pkgconfig.patch \
|
||||
gnu/packages/patches/nvi-assume-preserve-path.patch \
|
||||
gnu/packages/patches/nvi-dbpagesize-binpower.patch \
|
||||
gnu/packages/patches/nvi-db4.patch \
|
||||
gnu/packages/patches/orpheus-cast-errors-and-includes.patch \
|
||||
gnu/packages/patches/ots-no-include-missing-file.patch \
|
||||
gnu/packages/patches/patchelf-page-size.patch \
|
||||
gnu/packages/patches/patchelf-rework-for-arm.patch \
|
||||
gnu/packages/patches/patchutils-xfail-gendiff-tests.patch \
|
||||
gnu/packages/patches/perl-no-sys-dirs.patch \
|
||||
gnu/packages/patches/perl-tk-x11-discover.patch \
|
||||
@@ -409,35 +467,65 @@ dist_patch_DATA = \
|
||||
gnu/packages/patches/pulseaudio-fix-mult-test.patch \
|
||||
gnu/packages/patches/pybugz-encode-error.patch \
|
||||
gnu/packages/patches/pybugz-stty.patch \
|
||||
gnu/packages/patches/pyqt-configure.patch \
|
||||
gnu/packages/patches/python-fix-tests.patch \
|
||||
gnu/packages/patches/python-libffi-mips-n32-fix.patch \
|
||||
gnu/packages/patches/python-sqlite-3.8.4-test-fix.patch \
|
||||
gnu/packages/patches/python2-sqlite-3.8.4-test-fix.patch \
|
||||
gnu/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
|
||||
gnu/packages/patches/qt4-tests.patch \
|
||||
gnu/packages/patches/ratpoison-shell.patch \
|
||||
gnu/packages/patches/readline-link-ncurses.patch \
|
||||
gnu/packages/patches/ripperx-libm.patch \
|
||||
gnu/packages/patches/scheme48-tests.patch \
|
||||
gnu/packages/patches/scotch-test-threading.patch \
|
||||
gnu/packages/patches/sdl-libx11-1.6.patch \
|
||||
gnu/packages/patches/slim-session.patch \
|
||||
gnu/packages/patches/slim-config.patch \
|
||||
gnu/packages/patches/slim-sigusr1.patch \
|
||||
gnu/packages/patches/soprano-find-clucene.patch \
|
||||
gnu/packages/patches/source-highlight-regexrange-test.patch \
|
||||
gnu/packages/patches/sqlite-large-page-size-fix.patch \
|
||||
gnu/packages/patches/superlu-dist-scotchmetis.patch \
|
||||
gnu/packages/patches/tcsh-fix-autotest.patch \
|
||||
gnu/packages/patches/teckit-cstdio.patch \
|
||||
gnu/packages/patches/texi2html-document-encoding.patch \
|
||||
gnu/packages/patches/texi2html-i18n.patch \
|
||||
gnu/packages/patches/udev-gir-libtool.patch \
|
||||
gnu/packages/patches/util-linux-perl.patch \
|
||||
gnu/packages/patches/unzip-CVE-2014-8139.patch \
|
||||
gnu/packages/patches/unzip-CVE-2014-8140.patch \
|
||||
gnu/packages/patches/unzip-CVE-2014-8141.patch \
|
||||
gnu/packages/patches/util-linux-tests.patch \
|
||||
gnu/packages/patches/vpnc-script.patch \
|
||||
gnu/packages/patches/vtk-mesa-10.patch \
|
||||
gnu/packages/patches/w3m-fix-compile.patch \
|
||||
gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch \
|
||||
gnu/packages/patches/wmctrl-64-fix.patch \
|
||||
gnu/packages/patches/xf86-video-ark-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-ast-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-geode-glibc-2.20.patch \
|
||||
gnu/packages/patches/xf86-video-glint-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-i128-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-intel-compat-api.patch \
|
||||
gnu/packages/patches/xf86-video-intel-glibc-2.20.patch \
|
||||
gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch \
|
||||
gnu/packages/patches/xf86-video-mga-glibc-2.20.patch \
|
||||
gnu/packages/patches/xf86-video-nv-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch \
|
||||
gnu/packages/patches/xf86-video-r128-glibc-2.20.patch \
|
||||
gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-sis-update-api.patch \
|
||||
gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-tga-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-trident-remove-mibstore.patch \
|
||||
gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch \
|
||||
gnu/packages/patches/xfce4-panel-plugins.patch \
|
||||
gnu/packages/patches/xmodmap-asprintf.patch
|
||||
|
||||
MISC_DISTRO_FILES = gnu/packages/javac.in
|
||||
|
||||
bootstrapdir = $(guilemoduledir)/gnu/packages/bootstrap
|
||||
bootstrap_x86_64_linuxdir = $(bootstrapdir)/x86_64-linux
|
||||
bootstrap_i686_linuxdir = $(bootstrapdir)/i686-linux
|
||||
bootstrap_armhf_linuxdir = $(bootstrapdir)/armhf-linux
|
||||
bootstrap_mips64el_linuxdir = $(bootstrapdir)/mips64el-linux
|
||||
|
||||
dist_bootstrap_x86_64_linux_DATA = \
|
||||
@@ -452,6 +540,12 @@ dist_bootstrap_i686_linux_DATA = \
|
||||
gnu/packages/bootstrap/i686-linux/tar \
|
||||
gnu/packages/bootstrap/i686-linux/xz
|
||||
|
||||
dist_bootstrap_armhf_linux_DATA = \
|
||||
gnu/packages/bootstrap/armhf-linux/bash \
|
||||
gnu/packages/bootstrap/armhf-linux/mkdir \
|
||||
gnu/packages/bootstrap/armhf-linux/tar \
|
||||
gnu/packages/bootstrap/armhf-linux/xz
|
||||
|
||||
dist_bootstrap_mips64el_linux_DATA = \
|
||||
gnu/packages/bootstrap/mips64el-linux/bash \
|
||||
gnu/packages/bootstrap/mips64el-linux/mkdir \
|
||||
@@ -464,17 +558,20 @@ nodist_bootstrap_x86_64_linux_DATA = \
|
||||
gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz
|
||||
nodist_bootstrap_i686_linux_DATA = \
|
||||
gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz
|
||||
nodist_bootstrap_armhf_linux_DATA = \
|
||||
gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz
|
||||
nodist_bootstrap_mips64el_linux_DATA = \
|
||||
gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz
|
||||
|
||||
# Those files must remain executable, so they remain executable once
|
||||
# imported into the store.
|
||||
install-data-hook:
|
||||
set-bootstrap-executable-permissions:
|
||||
chmod +x $(DESTDIR)$(bootstrapdir)/*/{bash,mkdir,tar,xz}
|
||||
|
||||
DISTCLEANFILES = \
|
||||
$(nodist_bootstrap_x86_64_linux_DATA) \
|
||||
$(nodist_bootstrap_i686_linux_DATA) \
|
||||
$(nodist_bootstrap_armhf_linux_DATA) \
|
||||
$(nodist_bootstrap_mips64el_linux_DATA)
|
||||
|
||||
# Method to download a file from an external source.
|
||||
@@ -489,6 +586,9 @@ gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz:
|
||||
gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz:
|
||||
$(MKDIR_P) `dirname "$@"`
|
||||
$(DOWNLOAD_FILE) "$@" "b757cd46bf13ecac83fb8e955fb50096ac2d17bb610ca8eb816f29302a00a846"
|
||||
gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz:
|
||||
$(MKDIR_P) `dirname "$@"`
|
||||
$(DOWNLOAD_FILE) "$@" "e551d05d4d385d6706ab8d574856a087758294dc90ab4c06e70a157a685e23d6"
|
||||
gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz:
|
||||
$(MKDIR_P) `dirname "$@"`
|
||||
$(DOWNLOAD_FILE) "$@" "994680f0001346864aa2c2cc5110f380ee7518dcd701c614291682b8e948f73b"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Joshua S. Grant <jgrant@parenthetical.io>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -16,7 +17,10 @@
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu))
|
||||
(define-module (gnu)
|
||||
#:export (use-package-modules
|
||||
use-service-modules
|
||||
use-system-modules))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
@@ -44,4 +48,13 @@
|
||||
(module-use! i (resolve-interface m))))
|
||||
%public-modules)))
|
||||
|
||||
(define-syntax-rule (use-package-modules module ...)
|
||||
(use-modules (gnu packages module) ...))
|
||||
|
||||
(define-syntax-rule (use-service-modules module ...)
|
||||
(use-modules (gnu services module) ...))
|
||||
|
||||
(define-syntax-rule (use-system-modules module ...)
|
||||
(use-modules (gnu system module) ...))
|
||||
|
||||
;;; gnu.scm ends here
|
||||
|
||||
@@ -50,6 +50,25 @@
|
||||
,name)))
|
||||
(zero? (apply system* "groupadd" args))))
|
||||
|
||||
(define %skeleton-directory
|
||||
;; Directory containing skeleton files for new accounts.
|
||||
;; Note: keep the trailing '/' so that 'scandir' enters it.
|
||||
"/etc/skel/")
|
||||
|
||||
(define (dot-or-dot-dot? file)
|
||||
(member file '("." "..")))
|
||||
|
||||
(define* (copy-account-skeletons home
|
||||
#:optional (directory %skeleton-directory))
|
||||
"Copy the account skeletons from DIRECTORY to HOME."
|
||||
(let ((files (scandir directory (negate dot-or-dot-dot?)
|
||||
string<?)))
|
||||
(mkdir-p home)
|
||||
(for-each (lambda (file)
|
||||
(copy-file (string-append directory "/" file)
|
||||
(string-append home "/" file)))
|
||||
files)))
|
||||
|
||||
(define* (add-user name group
|
||||
#:key uid comment home shell password system?
|
||||
(supplementary-groups '())
|
||||
@@ -70,6 +89,7 @@ properties. Return #t on success."
|
||||
(cut format <> "~a:x:~a:~a:~a:~a:~a~%"
|
||||
name "0" "0" comment home shell))
|
||||
(chmod "/etc/shadow" #o600)
|
||||
(copy-account-skeletons (or home "/root"))
|
||||
#t)
|
||||
|
||||
;; Use 'useradd' from the Shadow package.
|
||||
@@ -198,18 +218,12 @@ numeric gid or #f."
|
||||
;; XXX: Dirty hack to meet sudo's expectations.
|
||||
(when (string=? (basename target) "sudoers")
|
||||
(chmod target #o440))))
|
||||
(scandir etc
|
||||
(lambda (file)
|
||||
(not (member file '("." ".."))))
|
||||
(scandir etc (negate dot-or-dot-dot?)
|
||||
|
||||
;; The default is 'string-locale<?', but we don't have
|
||||
;; it when run from the initrd's statically-linked
|
||||
;; Guile.
|
||||
string<?))
|
||||
|
||||
;; Prevent ETC from being GC'd.
|
||||
(rm-f "/var/guix/gcroots/etc-directory")
|
||||
(symlink etc "/var/guix/gcroots/etc-directory"))
|
||||
string<?)))
|
||||
|
||||
(define %setuid-directory
|
||||
;; Place where setuid programs are stored.
|
||||
|
||||
@@ -287,13 +287,6 @@ run a file system check."
|
||||
(mount source mount-point type (mount-flags->bit-mask flags)
|
||||
(if options
|
||||
(string->pointer options)
|
||||
%null-pointer))
|
||||
|
||||
;; Update /etc/mtab.
|
||||
(mkdir-p (string-append root "/etc"))
|
||||
(let ((port (open-file (string-append root "/etc/mtab") "a")))
|
||||
(format port "~a ~a ~a ~a 0 0~%"
|
||||
source mount-point type (or options ""))
|
||||
(close-port port))))))
|
||||
%null-pointer))))))
|
||||
|
||||
;;; file-systems.scm ends here
|
||||
|
||||
@@ -36,13 +36,17 @@
|
||||
|
||||
(define* (install-grub grub.cfg device mount-point)
|
||||
"Install GRUB with GRUB.CFG on DEVICE, which is assumed to be mounted on
|
||||
MOUNT-POINT."
|
||||
MOUNT-POINT.
|
||||
|
||||
Note that the caller must make sure that GRUB.CFG is registered as a GC root
|
||||
so that the fonts, background images, etc. referred to by GRUB.CFG are not
|
||||
GC'd."
|
||||
(let* ((target (string-append mount-point "/boot/grub/grub.cfg"))
|
||||
(pivot (string-append target ".new")))
|
||||
(mkdir-p (dirname target))
|
||||
|
||||
;; Copy GRUB.CFG instead of just symlinking it since it's not a GC root.
|
||||
;; Do that atomically.
|
||||
;; Copy GRUB.CFG instead of just symlinking it, because symlinks won't
|
||||
;; work when /boot is on a separate partition. Do that atomically.
|
||||
(copy-file grub.cfg pivot)
|
||||
(rename-file pivot target)
|
||||
|
||||
|
||||
+52
-52
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -26,6 +26,7 @@
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 ftw)
|
||||
#:use-module (guix build utils)
|
||||
#:use-module (gnu build linux-modules)
|
||||
#:use-module (gnu build file-systems)
|
||||
#:export (mount-essential-file-systems
|
||||
linux-command-line
|
||||
@@ -34,7 +35,6 @@
|
||||
configure-qemu-networking
|
||||
|
||||
bind-mount
|
||||
load-linux-module*
|
||||
device-number
|
||||
boot-system))
|
||||
|
||||
@@ -218,14 +218,6 @@ networking values.) Return #t if INTERFACE is up, #f otherwise."
|
||||
|
||||
(logand (network-interface-flags sock interface) IFF_UP)))
|
||||
|
||||
(define (load-linux-module* file)
|
||||
"Load Linux module from FILE, the name of a `.ko' file."
|
||||
(define (slurp module)
|
||||
;; TODO: Use 'mmap' to reduce memory usage.
|
||||
(call-with-input-file file get-bytevector-all))
|
||||
|
||||
(load-linux-module (slurp file)))
|
||||
|
||||
(define (device-number major minor)
|
||||
"Return the device number for the device with MAJOR and MINOR, for use as
|
||||
the last argument of `mknod'."
|
||||
@@ -255,41 +247,38 @@ UNIONFS."
|
||||
(newline port)
|
||||
(close-port port)))
|
||||
|
||||
(catch #t
|
||||
(lambda ()
|
||||
(if volatile-root?
|
||||
(begin
|
||||
(mkdir-p "/real-root")
|
||||
(mount root "/real-root" type MS_RDONLY)
|
||||
(mkdir-p "/rw-root")
|
||||
(mount "none" "/rw-root" "tmpfs")
|
||||
(if volatile-root?
|
||||
(begin
|
||||
(mkdir-p "/real-root")
|
||||
(mount root "/real-root" type MS_RDONLY)
|
||||
(mkdir-p "/rw-root")
|
||||
(mount "none" "/rw-root" "tmpfs")
|
||||
|
||||
;; We want read-write /dev nodes.
|
||||
(make-essential-device-nodes #:root "/rw-root")
|
||||
;; We want read-write /dev nodes.
|
||||
(make-essential-device-nodes #:root "/rw-root")
|
||||
|
||||
;; Make /root a union of the tmpfs and the actual root. Use
|
||||
;; 'max_files' to set a high RLIMIT_NOFILE for the unionfs process
|
||||
;; itself. Failing to do that, we quickly run out of file
|
||||
;; descriptors; see <http://bugs.gnu.org/17827>.
|
||||
(unless (zero? (system* unionfs "-o"
|
||||
"cow,allow_other,use_ino,suid,dev,max_files=65536"
|
||||
"/rw-root=RW:/real-root=RO"
|
||||
"/root"))
|
||||
(error "unionfs failed"))
|
||||
;; Make /root a union of the tmpfs and the actual root. Use
|
||||
;; 'max_files' to set a high RLIMIT_NOFILE for the unionfs process
|
||||
;; itself. Failing to do that, we quickly run out of file
|
||||
;; descriptors; see <http://bugs.gnu.org/17827>.
|
||||
(unless (zero? (system* unionfs "-o"
|
||||
"cow,allow_other,use_ino,suid,dev,max_files=65536"
|
||||
"/rw-root=RW:/real-root=RO"
|
||||
"/root"))
|
||||
(error "unionfs failed"))
|
||||
|
||||
;; Make sure unionfs remains alive till the end. Because
|
||||
;; 'fuse_daemonize' doesn't tell the PID of the forked daemon, we
|
||||
;; have to resort to 'pidof' here.
|
||||
(mark-as-not-killable (pidof unionfs)))
|
||||
(begin
|
||||
(check-file-system root type)
|
||||
(mount root "/root" type))))
|
||||
(lambda args
|
||||
(format (current-error-port) "exception while mounting '~a': ~s~%"
|
||||
root args)
|
||||
(start-repl)))
|
||||
;; Make sure unionfs remains alive till the end. Because
|
||||
;; 'fuse_daemonize' doesn't tell the PID of the forked daemon, we
|
||||
;; have to resort to 'pidof' here.
|
||||
(mark-as-not-killable (pidof unionfs)))
|
||||
(begin
|
||||
(check-file-system root type)
|
||||
(mount root "/root" type)))
|
||||
|
||||
(copy-file "/proc/mounts" "/root/etc/mtab"))
|
||||
;; Make sure /root/etc/mtab is a symlink to /proc/self/mounts.
|
||||
(false-if-exception
|
||||
(delete-file "/root/etc/mtab"))
|
||||
(symlink "/proc/self/mounts" "/root/etc/mtab"))
|
||||
|
||||
(define (switch-root root)
|
||||
"Switch to ROOT as the root file system, in a way similar to what
|
||||
@@ -338,16 +327,17 @@ bailing out.~%root contents: ~s~%" (scandir "/"))
|
||||
|
||||
(define* (boot-system #:key
|
||||
(linux-modules '())
|
||||
linux-module-directory
|
||||
qemu-guest-networking?
|
||||
volatile-root?
|
||||
pre-mount
|
||||
(mounts '()))
|
||||
"This procedure is meant to be called from an initrd. Boot a system by
|
||||
first loading LINUX-MODULES (a list of absolute file names of '.ko' files),
|
||||
then setting up QEMU guest networking if QEMU-GUEST-NETWORKING? is true,
|
||||
calling PRE-MOUNT, mounting the file systems specified in MOUNTS, and finally
|
||||
booting into the new root if any. The initrd supports kernel command-line
|
||||
options '--load', '--root', and '--repl'.
|
||||
first loading LINUX-MODULES (a list of module names) from
|
||||
LINUX-MODULE-DIRECTORY, then setting up QEMU guest networking if
|
||||
QEMU-GUEST-NETWORKING? is true, calling PRE-MOUNT, mounting the file systems
|
||||
specified in MOUNTS, and finally booting into the new root if any. The initrd
|
||||
supports kernel command-line options '--load', '--root', and '--repl'.
|
||||
|
||||
Mount the root file system, specified by the '--root' command-line argument,
|
||||
if any.
|
||||
@@ -368,6 +358,10 @@ to it are lost."
|
||||
mounts)
|
||||
"ext4"))
|
||||
|
||||
(define (lookup-module name)
|
||||
(string-append linux-module-directory "/"
|
||||
(ensure-dot-ko name)))
|
||||
|
||||
(display "Welcome, this is GNU's early boot Guile.\n")
|
||||
(display "Use '--repl' for an initrd REPL.\n\n")
|
||||
|
||||
@@ -382,7 +376,10 @@ to it are lost."
|
||||
(start-repl))
|
||||
|
||||
(display "loading kernel modules...\n")
|
||||
(for-each load-linux-module* linux-modules)
|
||||
(current-module-debugging-port (current-output-port))
|
||||
(for-each (cut load-linux-module* <>
|
||||
#:lookup-module lookup-module)
|
||||
(map lookup-module linux-modules))
|
||||
|
||||
(when qemu-guest-networking?
|
||||
(unless (configure-qemu-networking)
|
||||
@@ -394,6 +391,14 @@ to it are lost."
|
||||
;; Prepare the real root file system under /root.
|
||||
(unless (file-exists? "/root")
|
||||
(mkdir "/root"))
|
||||
|
||||
(when (procedure? pre-mount)
|
||||
;; Do whatever actions are needed before mounting the root file
|
||||
;; system--e.g., installing device mappings. Error out when the
|
||||
;; return value is false.
|
||||
(unless (pre-mount)
|
||||
(error "pre-mount actions failed")))
|
||||
|
||||
(if root
|
||||
(mount-root-file-system (canonicalize-device-spec root)
|
||||
root-fs-type
|
||||
@@ -404,11 +409,6 @@ to it are lost."
|
||||
(mkdir "/root/dev")
|
||||
(make-essential-device-nodes #:root "/root"))
|
||||
|
||||
(when (procedure? pre-mount)
|
||||
;; Do whatever actions are needed before mounting--e.g., installing
|
||||
;; device mappings.
|
||||
(pre-mount))
|
||||
|
||||
;; Mount the specified file systems.
|
||||
(for-each mount-file-system
|
||||
(remove root-mount-point? mounts))
|
||||
|
||||
@@ -0,0 +1,166 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu build linux-modules)
|
||||
#:use-module (guix elf)
|
||||
#:use-module (rnrs io ports)
|
||||
#:use-module (rnrs bytevectors)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (ice-9 vlist)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (dot-ko
|
||||
ensure-dot-ko
|
||||
module-dependencies
|
||||
recursive-module-dependencies
|
||||
modules-loaded
|
||||
module-loaded?
|
||||
load-linux-module*
|
||||
|
||||
current-module-debugging-port))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
;;; Tools to deal with Linux kernel modules.
|
||||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define current-module-debugging-port
|
||||
(make-parameter (%make-void-port "w")))
|
||||
|
||||
(define (section-contents elf section)
|
||||
"Return the contents of SECTION in ELF as a bytevector."
|
||||
(let* ((modinfo (elf-section-by-name elf ".modinfo"))
|
||||
(contents (make-bytevector (elf-section-size modinfo))))
|
||||
(bytevector-copy! (elf-bytes elf) (elf-section-offset modinfo)
|
||||
contents 0
|
||||
(elf-section-size modinfo))
|
||||
contents))
|
||||
|
||||
(define %not-nul
|
||||
(char-set-complement (char-set #\nul)))
|
||||
|
||||
(define (nul-separated-string->list str)
|
||||
"Split STR at occurrences of the NUL character and return the resulting
|
||||
string list."
|
||||
(string-tokenize str %not-nul))
|
||||
|
||||
(define (key=value->pair str)
|
||||
"Assuming STR has the form \"KEY=VALUE\", return a pair like (KEY
|
||||
. \"VALUE\")."
|
||||
(let ((= (string-index str #\=)))
|
||||
(cons (string->symbol (string-take str =))
|
||||
(string-drop str (+ 1 =)))))
|
||||
|
||||
(define (modinfo-section-contents file)
|
||||
"Return the contents of the '.modinfo' section of FILE as a list of
|
||||
key/value pairs.."
|
||||
(let* ((bv (call-with-input-file file get-bytevector-all))
|
||||
(elf (parse-elf bv))
|
||||
(modinfo (section-contents elf ".modinfo")))
|
||||
(map key=value->pair
|
||||
(nul-separated-string->list (utf8->string modinfo)))))
|
||||
|
||||
(define %not-comma
|
||||
(char-set-complement (char-set #\,)))
|
||||
|
||||
(define (module-dependencies file)
|
||||
"Return the list of modules that FILE depends on. The returned list
|
||||
contains module names, not actual file names."
|
||||
(let ((info (modinfo-section-contents file)))
|
||||
(match (assq 'depends info)
|
||||
(('depends . what)
|
||||
(string-tokenize what %not-comma)))))
|
||||
|
||||
(define dot-ko
|
||||
(cut string-append <> ".ko"))
|
||||
|
||||
(define (ensure-dot-ko name)
|
||||
"Return NAME with a '.ko' prefix appended, unless it already has it."
|
||||
(if (string-suffix? ".ko" name)
|
||||
name
|
||||
(dot-ko name)))
|
||||
|
||||
(define* (recursive-module-dependencies files
|
||||
#:key (lookup-module dot-ko))
|
||||
"Return the topologically-sorted list of file names of the modules depended
|
||||
on by FILES, recursively. File names of modules are determined by applying
|
||||
LOOKUP-MODULE to the module name."
|
||||
(let loop ((files files)
|
||||
(result '())
|
||||
(visited vlist-null))
|
||||
(match files
|
||||
(()
|
||||
(delete-duplicates (reverse result)))
|
||||
((head . tail)
|
||||
(let* ((visited? (vhash-assoc head visited))
|
||||
(deps (if visited?
|
||||
'()
|
||||
(map lookup-module (module-dependencies head))))
|
||||
(visited (if visited?
|
||||
visited
|
||||
(vhash-cons head #t visited))))
|
||||
(loop (append deps tail)
|
||||
(append result deps) visited))))))
|
||||
|
||||
(define %not-newline
|
||||
(char-set-complement (char-set #\newline)))
|
||||
|
||||
(define (modules-loaded)
|
||||
"Return the list of names of currently loaded Linux modules."
|
||||
(let* ((contents (call-with-input-file "/proc/modules"
|
||||
get-string-all))
|
||||
(lines (string-tokenize contents %not-newline)))
|
||||
(match (map string-tokenize lines)
|
||||
(((modules . _) ...)
|
||||
modules))))
|
||||
|
||||
(define (module-loaded? module)
|
||||
"Return #t if MODULE is already loaded. MODULE must be a Linux module name,
|
||||
not a file name."
|
||||
(member module (modules-loaded)))
|
||||
|
||||
(define* (load-linux-module* file
|
||||
#:key
|
||||
(recursive? #t)
|
||||
(lookup-module dot-ko))
|
||||
"Load Linux module from FILE, the name of a `.ko' file. When RECURSIVE? is
|
||||
true, load its dependencies first (à la 'modprobe'.) The actual files
|
||||
containing modules depended on are obtained by calling LOOKUP-MODULE with the
|
||||
module name."
|
||||
(define (slurp module)
|
||||
;; TODO: Use 'mmap' to reduce memory usage.
|
||||
(call-with-input-file file get-bytevector-all))
|
||||
|
||||
(when recursive?
|
||||
(for-each (cut load-linux-module* <> #:lookup-module lookup-module)
|
||||
(map lookup-module (module-dependencies file))))
|
||||
|
||||
(format (current-module-debugging-port)
|
||||
"loading Linux module from '~a'...~%" file)
|
||||
|
||||
(catch 'system-error
|
||||
(lambda ()
|
||||
(load-linux-module (slurp file)))
|
||||
(lambda args
|
||||
;; If this module was already loaded and we're in modprobe style, ignore
|
||||
;; the error.
|
||||
(unless (and recursive? (= EEXIST (system-error-errno args)))
|
||||
(apply throw args)))))
|
||||
|
||||
;;; linux-modules.scm ends here
|
||||
@@ -178,6 +178,12 @@ volume name."
|
||||
(display "populating...\n")
|
||||
(populate-root-file-system system-directory target-directory))
|
||||
|
||||
(define (register-grub.cfg-root target grub.cfg)
|
||||
"On file system TARGET, register GRUB.CFG as a GC root."
|
||||
(let ((directory (string-append target "/var/guix/gcroots")))
|
||||
(mkdir-p directory)
|
||||
(symlink grub.cfg (string-append directory "/grub.cfg"))))
|
||||
|
||||
(define* (initialize-hard-disk device
|
||||
#:key
|
||||
system-directory
|
||||
@@ -222,6 +228,9 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
|
||||
|
||||
(install-grub grub.cfg device target-directory)
|
||||
|
||||
;; Register GRUB.CFG as a GC root.
|
||||
(register-grub.cfg-root target-directory grub.cfg)
|
||||
|
||||
;; 'guix-register' resets timestamps and everything, so no need to do it
|
||||
;; once more in that case.
|
||||
(unless register-closures?
|
||||
|
||||
+51
-29
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;;
|
||||
@@ -30,6 +30,8 @@
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-11)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (srfi srfi-39)
|
||||
#:export (search-patch
|
||||
search-bootstrap-binary
|
||||
@@ -64,24 +66,29 @@
|
||||
;; and an extra environment variable. One advantage of this setup is
|
||||
;; that everything just works in an auto-compilation setting.
|
||||
|
||||
(define %patch-path
|
||||
(make-parameter
|
||||
(map (cut string-append <> "/gnu/packages/patches")
|
||||
%load-path)))
|
||||
|
||||
(define %bootstrap-binaries-path
|
||||
(make-parameter
|
||||
(map (cut string-append <> "/gnu/packages/bootstrap")
|
||||
%load-path)))
|
||||
|
||||
(define (search-patch file-name)
|
||||
"Search the patch FILE-NAME."
|
||||
(search-path (%patch-path) file-name))
|
||||
"Search the patch FILE-NAME. Raise an error if not found."
|
||||
(or (search-path (%patch-path) file-name)
|
||||
(raise (condition
|
||||
(&message (message (format #f (_ "~a: patch not found")
|
||||
file-name)))))))
|
||||
|
||||
(define (search-bootstrap-binary file-name system)
|
||||
"Search the bootstrap binary FILE-NAME for SYSTEM."
|
||||
(search-path (%bootstrap-binaries-path)
|
||||
(string-append system "/" file-name)))
|
||||
"Search the bootstrap binary FILE-NAME for SYSTEM. Raise an error if not
|
||||
found."
|
||||
(or (search-path (%bootstrap-binaries-path)
|
||||
(string-append system "/" file-name))
|
||||
(raise (condition
|
||||
(&message
|
||||
(message
|
||||
(format #f (_ "could not find bootstrap binary '~a' \
|
||||
for system '~a'")
|
||||
file-name system)))))))
|
||||
|
||||
(define %distro-root-directory
|
||||
;; Absolute file name of the module hierarchy.
|
||||
@@ -104,25 +111,40 @@
|
||||
(make-parameter
|
||||
(append environment `((,%distro-root-directory . "gnu/packages"))))))
|
||||
|
||||
(define %patch-path
|
||||
;; Define it after '%package-module-path' so that '%load-path' contains user
|
||||
;; directories, allowing patches in $GUIX_PACKAGE_PATH to be found.
|
||||
(make-parameter
|
||||
(map (lambda (directory)
|
||||
(if (string=? directory %distro-root-directory)
|
||||
(string-append directory "/gnu/packages/patches")
|
||||
directory))
|
||||
%load-path)))
|
||||
|
||||
(define* (scheme-files directory)
|
||||
"Return the list of Scheme files found under DIRECTORY."
|
||||
(file-system-fold (const #t) ; enter?
|
||||
(lambda (path stat result) ; leaf
|
||||
(if (string-suffix? ".scm" path)
|
||||
(cons path result)
|
||||
result))
|
||||
(lambda (path stat result) ; down
|
||||
result)
|
||||
(lambda (path stat result) ; up
|
||||
result)
|
||||
(const #f) ; skip
|
||||
(lambda (path stat errno result)
|
||||
(warning (_ "cannot access `~a': ~a~%")
|
||||
path (strerror errno))
|
||||
result)
|
||||
'()
|
||||
directory
|
||||
stat))
|
||||
"Return the list of Scheme files found under DIRECTORY, recursively. The
|
||||
returned list is sorted in alphabetical order."
|
||||
|
||||
;; Sort entries so that 'fold-packages' works in a deterministic fashion
|
||||
;; regardless of details of the underlying file system.
|
||||
(sort (file-system-fold (const #t) ; enter?
|
||||
(lambda (path stat result) ; leaf
|
||||
(if (string-suffix? ".scm" path)
|
||||
(cons path result)
|
||||
result))
|
||||
(lambda (path stat result) ; down
|
||||
result)
|
||||
(lambda (path stat result) ; up
|
||||
result)
|
||||
(const #f) ; skip
|
||||
(lambda (path stat errno result)
|
||||
(warning (_ "cannot access `~a': ~a~%")
|
||||
path (strerror errno))
|
||||
result)
|
||||
'()
|
||||
directory
|
||||
stat)
|
||||
string<?))
|
||||
|
||||
(define file-name->module-name
|
||||
(let ((not-slash (char-set-complement (char-set #\/))))
|
||||
|
||||
+16
-10
@@ -1,6 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -20,8 +21,9 @@
|
||||
(define-module (gnu packages acl)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (gnu packages attr)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu))
|
||||
@@ -41,19 +43,23 @@
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; FIXME: Investigate test suite failures
|
||||
#:test-target "tests"
|
||||
#:phases
|
||||
(alist-cons-after
|
||||
'configure 'patch-makefile-SHELL
|
||||
(lambda _
|
||||
(patch-makefile-SHELL "include/buildmacros"))
|
||||
(alist-replace
|
||||
'install
|
||||
(alist-cons-after
|
||||
'build 'patch-exec-bin-sh
|
||||
(lambda _
|
||||
(zero? (system* "make" "install" "install-lib")))
|
||||
%standard-phases))))
|
||||
(substitute* "test/run"
|
||||
(("/bin/sh") (which "sh"))))
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda _
|
||||
(zero? (system* "make" "install" "install-lib" "install-dev")))
|
||||
%standard-phases))))
|
||||
(inputs `(("attr" ,attr)))
|
||||
(native-inputs
|
||||
`(("gettext" ,gnu-gettext)))
|
||||
`(("gettext" ,gnu-gettext)
|
||||
("perl" ,perl)
|
||||
("sed" ,sed)))
|
||||
|
||||
(home-page
|
||||
"http://savannah.nongnu.org/projects/acl")
|
||||
|
||||
+20
-6
@@ -631,7 +631,10 @@ system administrator.")
|
||||
"002l6h27pnhb77b65frhazbhknsxvrsnkpi43j7i0qw1lrgi7nkf"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--with-logpath=/var/log/sudo.log")
|
||||
`(#:configure-flags '("--with-logpath=/var/log/sudo.log"
|
||||
"--with-rundir=/run/sudo"
|
||||
"--with-vardir=/var/db/sudo"
|
||||
"--with-iologdir=/var/log/sudo-io")
|
||||
#:phases (alist-cons-before
|
||||
'configure 'pre-configure
|
||||
(lambda _
|
||||
@@ -645,7 +648,13 @@ system administrator.")
|
||||
"")
|
||||
(("^install: (.*)install-sudoers(.*)" _ before after)
|
||||
;; Don't try to create /etc/sudoers.
|
||||
(string-append "install: " before after "\n"))))
|
||||
(string-append "install: " before after "\n"))
|
||||
(("\\$\\(DESTDIR\\)\\$\\(rundir\\)")
|
||||
;; Don't try to create /run/sudo.
|
||||
"$(TMPDIR)/dummy")
|
||||
(("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
|
||||
;; Don't try to create /var/db/sudo.
|
||||
"$(TMPDIR)/dummy")))
|
||||
%standard-phases)
|
||||
|
||||
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
|
||||
@@ -689,9 +698,12 @@ commands and their arguments.")
|
||||
(let ((port (open-file ".config" "al")))
|
||||
(display "
|
||||
CONFIG_DEBUG_SYSLOG=y
|
||||
CONFIG_CTRL_IFACE_DBUS=y
|
||||
CONFIG_CTRL_IFACE_DBUS_NEW=y
|
||||
CONFIG_CTRL_IFACE_DBUS_INTRO=y
|
||||
|
||||
# TODO: Add a variant of this package with DBus support.
|
||||
#CONFIG_CTRL_IFACE_DBUS=y
|
||||
#CONFIG_CTRL_IFACE_DBUS_NEW=y
|
||||
#CONFIG_CTRL_IFACE_DBUS_INTRO=y
|
||||
|
||||
CONFIG_DRIVER_NL80211=y
|
||||
CFLAGS += $(shell pkg-config libnl-3.0 --cflags)
|
||||
CONFIG_LIBNL32=y
|
||||
@@ -708,7 +720,9 @@ commands and their arguments.")
|
||||
(inputs
|
||||
`(("readline" ,readline)
|
||||
("libnl" ,libnl)
|
||||
("dbus" ,dbus)
|
||||
;; TODO: Add a variant with DBus support. This significantly increases
|
||||
;; the size of its closure since DBus depends on libx11.
|
||||
;; ("dbus" ,dbus)
|
||||
("openssl" ,o:openssl)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -29,6 +29,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix utils))
|
||||
|
||||
|
||||
@@ -83,14 +84,14 @@ solve the shortest vector problem.")
|
||||
(define-public pari-gp
|
||||
(package
|
||||
(name "pari-gp")
|
||||
(version "2.7.1")
|
||||
(version "2.7.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-"
|
||||
version ".tar.gz"))
|
||||
(sha256 (base32
|
||||
"1gj1rddi22hinzwy7r6hljgbi252wwwyd6gapg4hvcn0ycc7jqyc"))))
|
||||
"1b0hzyhafpxhmiljyhnsh6c27ydsvb2599fshwq2fjfm96awjxmc"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("gmp" ,gmp)
|
||||
("perl" ,perl)
|
||||
@@ -123,14 +124,14 @@ PARI is also available as a C library to allow for faster computations.")
|
||||
(define-public gp2c
|
||||
(package
|
||||
(name "gp2c")
|
||||
(version "0.0.9pl1")
|
||||
(version "0.0.9pl2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://pari.math.u-bordeaux.fr/pub/pari/GP2C/gp2c-"
|
||||
version ".tar.gz"))
|
||||
(sha256 (base32
|
||||
"1p36060vwhn38j77r4c3jqyaslvhvgm6fdw2486k7krxk5ai7ph5"))))
|
||||
"02h35fwz1caicii7fj8zb9ky4hcrd8rqmzkyvhbls0r05yg5bwwb"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("perl" ,perl)))
|
||||
(inputs `(("pari-gp" ,pari-gp)))
|
||||
@@ -345,3 +346,57 @@ cosine/ sine transforms or DCT/DST).")
|
||||
(description
|
||||
(string-append (package-description fftw)
|
||||
" With OpenMPI parallelism support."))))
|
||||
|
||||
(define-public eigen
|
||||
(package
|
||||
(name "eigen")
|
||||
(version "3.2.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bitbucket.org/eigen/eigen/get/"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14l5hlgxxymwyava5mx97ipyk3ma3alaj586aaz1xh1r700a7sxm"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; There are 3 test failures in the "unsupported" directory,
|
||||
;; but maintainers say it's a known issue and it's unsupported
|
||||
;; anyway, so just skip them.
|
||||
'(substitute* "CMakeLists.txt"
|
||||
(("add_subdirectory\\(unsupported\\)")
|
||||
"# Do not build the tests for unsupported features.\n")))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(;; Turn off debugging symbols to save space.
|
||||
#:build-type "Release"
|
||||
|
||||
;; Use 'make check', as per
|
||||
;; <http://eigen.tuxfamily.org/index.php?title=Tests>.
|
||||
#:test-target "check"
|
||||
|
||||
#:phases (alist-cons-before
|
||||
'check 'build-tests
|
||||
(lambda _
|
||||
;; First build the tests, in parallel.
|
||||
;; See <http://eigen.tuxfamily.org/index.php?title=Tests>.
|
||||
(let* ((cores (current-processor-count))
|
||||
(dash-j (format #f "-j~a" cores)))
|
||||
;; These variables are supposed to be honored.
|
||||
(setenv "EIGEN_MAKE_ARGS" dash-j)
|
||||
(setenv "EIGEN_CTEST_ARGS" dash-j)
|
||||
|
||||
(zero? (system* "make" "buildtests" dash-j))))
|
||||
%standard-phases)))
|
||||
(home-page "http://eigen.tuxfamily.org")
|
||||
(synopsis "C++ template library for linear algebra")
|
||||
(description
|
||||
"Eigen is a C++ template library for linear algebra: matrices, vectors,
|
||||
numerical solvers, and related algorithms. It provides an elegant API based
|
||||
on \"expression templates\". It is versatile: it supports all matrix sizes,
|
||||
all standard numeric types, various matrix decompositions and geometry
|
||||
features, and more.")
|
||||
|
||||
;; Most of the code is MPLv2, with a few files under LGPLv2.1+ or BSD-3.
|
||||
;; See 'COPYING.README' for details.
|
||||
(license mpl2.0)))
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
'(#:parallel-build? #f
|
||||
#:parallel-tests? #f))
|
||||
(inputs `(("perl" ,perl)
|
||||
("libtool" ,libtool)))
|
||||
("libltdl" ,libltdl)))
|
||||
(home-page "http://apr.apache.org/")
|
||||
(synopsis "The Apache Portable Runtime Library")
|
||||
(description
|
||||
@@ -64,14 +64,14 @@ around or take advantage of platform-specific deficiencies or features.")
|
||||
(define-public apr-util
|
||||
(package
|
||||
(name "apr-util")
|
||||
(version "1.5.3")
|
||||
(version "1.5.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://apache/apr/apr-util-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0s1rpqjy5xr03k9s4xrsm5wvhj5286vlkf6jvqayw99yy5sb3vbq"))))
|
||||
"0bn81pfscy9yjvbmyx442svf43s6dhrdfcsnkpxz43fai5qk5kx6"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("apr" ,apr)))
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages audio)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages linux))
|
||||
|
||||
(define-public jack-1
|
||||
(package
|
||||
(name "jack")
|
||||
(version "0.124.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://jackaudio.org/downloads/jack-audio-connection-kit-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mk1wnx33anp6haxfjjkfhwbaknfblsvj35nxvz0hvspcmhdyhpb"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("bdb" ,bdb)
|
||||
("libuuid" ,util-linux)))
|
||||
(home-page "http://jackaudio.org/")
|
||||
(synopsis "JACK audio connection kit")
|
||||
(description
|
||||
"JACK is a low-latency audio server. It can connect a number of
|
||||
different applications to an audio device, as well as allowing them to share
|
||||
audio between themselves. JACK is different from other audio server efforts
|
||||
in that it has been designed from the ground up to be suitable for
|
||||
professional audio work. This means that it focuses on two key areas:
|
||||
synchronous execution of all clients, and low latency operation.")
|
||||
;; Most files are licensed under the GPL. However, the libjack/ tree is
|
||||
;; licensed under the LGPL in order to allow for proprietary usage.
|
||||
(license '(license:gpl2+ license:lgpl2.1+))))
|
||||
+73
-46
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -45,7 +45,7 @@
|
||||
(base32
|
||||
"113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("m4" ,m4)))
|
||||
;; XXX: testsuite: 209 and 279 failed. The latter is an impurity. It
|
||||
@@ -161,24 +161,24 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
|
||||
(define-public automake
|
||||
(package
|
||||
(name "automake")
|
||||
(version "1.14.1")
|
||||
(version "1.15")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/automake/automake-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0s86rzdayj1licgj35q0mnynv5xa8f4p32m36blc5jk9id5z1d59"))
|
||||
"0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r"))
|
||||
(patches
|
||||
(list (search-patch "automake-skip-amhello-tests.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(native-inputs
|
||||
`(("autoconf" ,(autoconf-wrapper))
|
||||
("perl" ,perl)))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "ACLOCAL_PATH")
|
||||
(directories '("share/aclocal")))))
|
||||
(files '("share/aclocal")))))
|
||||
(arguments
|
||||
'(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
@@ -238,52 +238,48 @@ Makefile, simplifying the entire process for the developer.")
|
||||
(define-public libtool
|
||||
(package
|
||||
(name "libtool")
|
||||
(version "2.4.2")
|
||||
(version "2.4.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libtool/libtool-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0649qfpzkswgcj9vqkkr9rn4nlcx80faxpyqscy2k1x9c94f93dk"))
|
||||
(patches
|
||||
(list (search-patch "libtool-skip-tests.patch")
|
||||
(search-patch "libtool-skip-tests-for-mips.patch")))))
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libtool/libtool-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zhphv4n9bdd6sz66lqfrfqcsnv89mg2bykgi5w9401va4vc3al4"))
|
||||
(patches
|
||||
(list (search-patch "libtool-skip-tests.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs `(("m4" ,m4)))
|
||||
(native-inputs `(("m4" ,m4)
|
||||
("perl" ,perl)))
|
||||
|
||||
;; Separate binaries from the rest. During bootstrap, only ltdl is
|
||||
;; used; not depending on the binaries allows us to avoid retaining
|
||||
;; a reference to the bootstrap bash.
|
||||
(outputs '("bin" ; libtoolize, libtool, etc.
|
||||
"out")) ; libltdl.so, ltdl.h, etc.
|
||||
("perl" ,perl)
|
||||
("automake" ,automake) ;some tests rely on 'aclocal'
|
||||
("autoconf" ,(autoconf-wrapper)))) ;others on 'autom4te'
|
||||
|
||||
(arguments
|
||||
(if (%current-target-system)
|
||||
'() ; no `check' phase when cross-building
|
||||
'(#:phases (alist-cons-before
|
||||
'check 'pre-check
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Run the test suite in parallel, if possible.
|
||||
(let ((ncores
|
||||
(cond
|
||||
((getenv "NIX_BUILD_CORES")
|
||||
=>
|
||||
(lambda (n)
|
||||
(if (zero? (string->number n))
|
||||
(number->string (current-processor-count))
|
||||
n)))
|
||||
(else "1"))))
|
||||
(setenv "TESTSUITEFLAGS"
|
||||
(string-append "-j" ncores)))
|
||||
`(;; Libltdl is provided as a separate package, so don't install it here.
|
||||
#:configure-flags '("--disable-ltdl-install")
|
||||
|
||||
;; Path references to /bin/sh.
|
||||
(let ((bash (assoc-ref inputs "bash")))
|
||||
(substitute* "tests/testsuite"
|
||||
(("/bin/sh")
|
||||
(string-append bash "/bin/bash")))))
|
||||
%standard-phases))))
|
||||
;; XXX: There are test failures on mips64el-linux starting from 2.4.4:
|
||||
;; <http://hydra.gnu.org/build/181662>.
|
||||
#:tests? ,(not (string-prefix? "mips64"
|
||||
(or (%current-target-system)
|
||||
(%current-system))))
|
||||
|
||||
#:phases (alist-cons-before
|
||||
'check 'pre-check
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Run the test suite in parallel, if possible.
|
||||
(setenv "TESTSUITEFLAGS"
|
||||
(string-append
|
||||
"-j"
|
||||
(number->string (parallel-job-count))))
|
||||
|
||||
;; Path references to /bin/sh.
|
||||
(let ((bash (assoc-ref inputs "bash")))
|
||||
(substitute* "tests/testsuite"
|
||||
(("/bin/sh")
|
||||
(string-append bash "/bin/bash")))))
|
||||
%standard-phases)))
|
||||
(synopsis "Generic shared library support tools")
|
||||
(description
|
||||
"GNU Libtool helps in the creation and use of shared libraries, by
|
||||
@@ -291,3 +287,34 @@ presenting a single consistent, portable interface that hides the usual
|
||||
complexity of working with shared libraries across platforms.")
|
||||
(license gpl3+)
|
||||
(home-page "http://www.gnu.org/software/libtool/")))
|
||||
|
||||
(define-public libltdl
|
||||
;; This is a libltdl package separate from the libtool package. This is
|
||||
;; useful because, unlike libtool, it has zero extra dependencies (making it
|
||||
;; readily usable during bootstrap), and it builds very quickly since
|
||||
;; Libtool's extensive test suite isn't run.
|
||||
(package
|
||||
(name "libltdl")
|
||||
(version "2.4.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libtool/libtool-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0v3zq08qxv7k5067mpqrkjkjl3wphhg06i696mka90mzadc5nad8"))
|
||||
(patches
|
||||
(list (search-patch "libtool-skip-tests.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("--enable-ltdl-install") ;really install it
|
||||
#:phases (alist-cons-before
|
||||
'configure 'change-directory
|
||||
(lambda _
|
||||
(chdir "libltdl"))
|
||||
%standard-phases)))
|
||||
|
||||
(synopsis "System-independent dlopen wrapper of GNU libtool")
|
||||
(description (package-description libtool))
|
||||
(home-page (package-home-page libtool))
|
||||
(license lgpl2.1+)))
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages avr)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages cross-base))
|
||||
|
||||
(define-public avr-libc
|
||||
(package
|
||||
(name "avr-libc")
|
||||
(version "1.8.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://savannah//avr-libc/avr-libc-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0sd9qkvhmk9av4g1f8dsjwc309hf1g0731bhvicnjb3b3d42l1n3"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:out-of-source? #t
|
||||
#:configure-flags '("--host=avr")))
|
||||
|
||||
(native-inputs `(("cross-binutils" ,(cross-binutils "avr"))
|
||||
("cross-gcc" ,xgcc-avr)))
|
||||
(home-page "http://www.nongnu.org/avr-libc/")
|
||||
(synopsis "The AVR C Library")
|
||||
(description
|
||||
"AVR Libc is a project whose goal is to provide a high quality C library
|
||||
for use with GCC on Atmel AVR microcontrollers.")
|
||||
(license (bsd-style "http://www.nongnu.org/avr-libc/LICENSE.txt"))))
|
||||
+25
-23
@@ -3,6 +3,7 @@
|
||||
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -64,14 +65,14 @@ command-line arguments, multiple languages, and so on.")
|
||||
(define-public grep
|
||||
(package
|
||||
(name "grep")
|
||||
(version "2.20")
|
||||
(version "2.21")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/grep/grep-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0rcs0spsxdmh6yz8y4frkqp6f5iw19mdbdl9s2v6956hq0mlbbzh"))))
|
||||
"1pp5n15qwxrw1pibwjhhgsibyv5cafhamf8lwzjygs6y00fa2i2j"))))
|
||||
(build-system gnu-build-system)
|
||||
(synopsis "Print lines matching a pattern")
|
||||
(description
|
||||
@@ -311,14 +312,14 @@ change. GNU make offers many powerful extensions over the standard utility.")
|
||||
(define-public binutils
|
||||
(package
|
||||
(name "binutils")
|
||||
(version "2.24")
|
||||
(version "2.25")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/binutils/binutils-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ds1y7qa0xqihw4ihnsgg6bxanmb228r228ddvwzgrv4jszcbs75"))
|
||||
"08r9i26b05zcwb9zxb6zllpfdiiicdfsgbpsjlrjmvx3rxjzrpi2"))
|
||||
(patches (list (search-patch "binutils-ld-new-dtags.patch")
|
||||
(search-patch "binutils-loongson-workaround.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
@@ -374,32 +375,37 @@ included.")
|
||||
(("use_ldconfig=yes")
|
||||
"use_ldconfig=no")))
|
||||
(modules '((guix build utils)))
|
||||
(patches (list (search-patch "glibc-ldd-x86_64.patch")))))
|
||||
(patches (list (search-patch "glibc-CVE-2014-7817.patch")
|
||||
(search-patch "glibc-CVE-2012-3406.patch")
|
||||
(search-patch "glibc-mips-dangling-vfork-ref.patch")
|
||||
(search-patch "glibc-ldd-x86_64.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
|
||||
;; users should automatically pull Linux headers as well.
|
||||
(propagated-inputs `(("linux-headers" ,linux-libre-headers)))
|
||||
|
||||
;; Store the locales separately (~100 MiB). Note that "out" retains a
|
||||
;; reference to them anyway, so there's no space savings here.
|
||||
;; TODO: Eventually we may want to add a $LOCALE_ARCHIVE search path like
|
||||
;; Nixpkgs does.
|
||||
(outputs '("out" "locales" "debug"))
|
||||
(outputs '("out" "debug"))
|
||||
|
||||
(arguments
|
||||
`(#:out-of-source? #t
|
||||
#:configure-flags
|
||||
(list "--enable-add-ons"
|
||||
"--sysconfdir=/etc"
|
||||
(string-append "--localedir=" (assoc-ref %outputs "locales")
|
||||
"/share/locale")
|
||||
|
||||
;; Installing a locale archive with all the locales is to
|
||||
;; expensive (~100 MiB), so we rely on users to install the
|
||||
;; locales they really want.
|
||||
;;
|
||||
;; Set the default locale path. In practice, $LOCPATH may be
|
||||
;; defined to point whatever locales users want. However, setuid
|
||||
;; binaries don't honor $LOCPATH, so they'll instead look into
|
||||
;; $libc_cv_localedir; we choose /run/current-system/locale, with
|
||||
;; the idea that it is going to be populated by the sysadmin.
|
||||
;;
|
||||
;; `--localedir' is not honored, so work around it.
|
||||
;; See <http://sourceware.org/ml/libc-alpha/2013-03/msg00093.html>.
|
||||
(string-append "libc_cv_localedir="
|
||||
(assoc-ref %outputs "locales")
|
||||
"/share/locale")
|
||||
(string-append "libc_cv_localedir=/run/current-system/locale")
|
||||
|
||||
(string-append "--with-headers="
|
||||
(assoc-ref %build-inputs "linux-headers")
|
||||
@@ -476,11 +482,7 @@ included.")
|
||||
"")
|
||||
(("exec @PERL@")
|
||||
"exec perl"))))
|
||||
(alist-cons-after
|
||||
'install 'install-locales
|
||||
(lambda _
|
||||
(zero? (system* "make" "localedata/install-locales")))
|
||||
%standard-phases))))
|
||||
%standard-phases)))
|
||||
|
||||
(inputs `(("static-bash" ,(static-package bash-light))))
|
||||
|
||||
@@ -502,7 +504,7 @@ with the Linux kernel.")
|
||||
(define-public tzdata
|
||||
(package
|
||||
(name "tzdata")
|
||||
(version "2014a")
|
||||
(version "2014j")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -510,7 +512,7 @@ with the Linux kernel.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cg843ajz4g16axpz56zvalwsbp1s764na2bk4fb44ayx162bzvw"))))
|
||||
"038fvj6zf51k6z9sbbxbj87ajaf69l3whal2vwshbm4l0qr71n52"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
@@ -557,7 +559,7 @@ with the Linux kernel.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xfkqi1q8cnxqbv8azdj5pqlzhkjz6xag09f1z0s8rxi86jkpf85"))))))
|
||||
"1qpd12imy7q5hb5fhk48mfw65s0xlrkmms0zr2gk0mj88qjn3m3z"))))))
|
||||
(home-page "http://www.iana.org/time-zones")
|
||||
(synopsis "Database of current and historical time zones")
|
||||
(description "The Time Zone Database (often called tz or zoneinfo)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -81,8 +81,10 @@
|
||||
(27 "1gnsfvq6bhb3srlbh0cannj2hackdsipcg7z0ds7zlk1hp96mdqy")
|
||||
(28 "17a65c4fn4c5rgsiw9gqqnzhznh3gwnd2xzzv2dppyi48znxpc78") ;CVE-2014-7186
|
||||
(29 "14k27p28r5l2fz3r03kd0x72vvsq8bja8c6hjz5kxikbzsbs7i2c") ;CVE-2014-6277
|
||||
(30 "0nrqb0m7s89qsrbfaffpilc5gcf82bx9yvgzld4hr79p5y54yhw5"))) ;CVE-2014-6278
|
||||
|
||||
(30 "0nrqb0m7s89qsrbfaffpilc5gcf82bx9yvgzld4hr79p5y54yhw5") ;CVE-2014-6278
|
||||
(31 "07d62bl3z7qa8v6kgk47vzzazw563mlk9zhrsr4xsbqgvmcrylnd")
|
||||
(32 "0jjgapfq4qhmndfrw8c3q3lva8xjdhlbd9cc631v41b0kb95g4w8")
|
||||
(33 "05ma5rlxiadnfh925p4y7s0vvk917kmsdb1mfdx05gizl63pfapv")))
|
||||
(define (download-patches store count)
|
||||
"Download COUNT Bash patches into store. Return a list of
|
||||
number/base32-hash tuples, directly usable in the 'patch-series' form."
|
||||
|
||||
@@ -0,0 +1,198 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages bioinformatics)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python))
|
||||
|
||||
(define-public bedtools
|
||||
(package
|
||||
(name "bedtools")
|
||||
(version "2.22.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/arq5x/bedtools2/archive/v"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16aq0w3dmbd0853j32xk9jin4vb6v6fgakfyvrsmsjizzbn3fpfl"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("python" ,python-2)))
|
||||
(inputs `(("samtools" ,samtools)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
'(#:test-target "test"
|
||||
#:phases
|
||||
(alist-cons-after
|
||||
'unpack 'patch-makefile-SHELL-definition
|
||||
(lambda _
|
||||
;; patch-makefile-SHELL cannot be used here as it does not
|
||||
;; yet patch definitions with `:='. Since changes to
|
||||
;; patch-makefile-SHELL result in a full rebuild, features
|
||||
;; of patch-makefile-SHELL are reimplemented here.
|
||||
(substitute* "Makefile"
|
||||
(("^SHELL := .*$") (string-append "SHELL := " (which "bash") " -e \n"))))
|
||||
(alist-delete
|
||||
'configure
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
|
||||
(mkdir-p bin)
|
||||
(for-each (lambda (file)
|
||||
(copy-file file (string-append bin (basename file))))
|
||||
(find-files "bin" ".*"))))
|
||||
%standard-phases)))))
|
||||
(home-page "https://github.com/arq5x/bedtools2")
|
||||
(synopsis "Tools for genome analysis and arithmetic")
|
||||
(description
|
||||
"Collectively, the bedtools utilities are a swiss-army knife of tools for
|
||||
a wide-range of genomics analysis tasks. The most widely-used tools enable
|
||||
genome arithmetic: that is, set theory on the genome. For example, bedtools
|
||||
allows one to intersect, merge, count, complement, and shuffle genomic
|
||||
intervals from multiple files in widely-used genomic file formats such as BAM,
|
||||
BED, GFF/GTF, VCF.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public bowtie
|
||||
(package
|
||||
(name "bowtie")
|
||||
(version "2.2.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/BenLangmead/bowtie2/archive/v"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15dnbqippwvhyh9zqjhaxkabk7lm1xbh1nvar1x4b5kwm117zijn"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "Makefile"
|
||||
(("^CC = .*$") "CC = gcc")
|
||||
(("^CPP = .*$") "CPP = g++")
|
||||
;; replace BUILD_HOST and BUILD_TIME for deterministic build
|
||||
(("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"")
|
||||
(("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\"")))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("perl" ,perl)
|
||||
("perl-clone" ,perl-clone)
|
||||
("perl-test-deep" ,perl-test-deep)
|
||||
("perl-test-simple" ,perl-test-simple)
|
||||
("python" ,python-2)))
|
||||
(arguments
|
||||
'(#:make-flags '("allall")
|
||||
#:phases
|
||||
(alist-delete
|
||||
'configure
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
|
||||
(mkdir-p bin)
|
||||
(for-each (lambda (file)
|
||||
(copy-file file (string-append bin file)))
|
||||
(find-files "." "bowtie2.*"))))
|
||||
(alist-replace
|
||||
'check
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(system* "perl"
|
||||
"scripts/test/simple_tests.pl"
|
||||
"--bowtie2=./bowtie2"
|
||||
"--bowtie2-build=./bowtie2-build"))
|
||||
%standard-phases)))))
|
||||
(home-page "http://bowtie-bio.sourceforge.net/bowtie2/index.shtml")
|
||||
(synopsis "Fast and sensitive nucleotide sequence read aligner")
|
||||
(description
|
||||
"Bowtie 2 is a fast and memory-efficient tool for aligning sequencing
|
||||
reads to long reference sequences. It is particularly good at aligning reads
|
||||
of about 50 up to 100s or 1,000s of characters, and particularly good at
|
||||
aligning to relatively long (e.g. mammalian) genomes. Bowtie 2 indexes the
|
||||
genome with an FM Index to keep its memory footprint small: for the human
|
||||
genome, its memory footprint is typically around 3.2 GB. Bowtie 2 supports
|
||||
gapped, local, and paired-end alignment modes.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public samtools
|
||||
(package
|
||||
(name "samtools")
|
||||
(version "1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "mirror://sourceforge/samtools/"
|
||||
version "/samtools-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1y5p2hs4gif891b4ik20275a8xf3qrr1zh9wpysp4g8m0g1jckf2"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(;; There are 87 test failures when building on non-64-bit architectures
|
||||
;; due to invalid test data. This has since been fixed upstream (see
|
||||
;; <https://github.com/samtools/samtools/pull/307>), but as there has
|
||||
;; not been a new release we disable the tests for all non-64-bit
|
||||
;; systems.
|
||||
#:tests? ,(string=? (or (%current-system) (%current-target-system))
|
||||
"x86_64-linux")
|
||||
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
|
||||
#:phases
|
||||
(alist-cons-after
|
||||
'unpack
|
||||
'patch-makefile-curses
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("-lcurses") "-lncurses")))
|
||||
(alist-cons-after
|
||||
'unpack
|
||||
'patch-tests
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((bash (assoc-ref inputs "bash")))
|
||||
(substitute* "test/test.pl"
|
||||
;; The test script calls out to /bin/bash
|
||||
(("/bin/bash")
|
||||
(string-append bash "/bin/bash"))
|
||||
;; There are two failing tests upstream relating to the "stats"
|
||||
;; subcommand in test_usage_subcommand ("did not have Usage"
|
||||
;; and "usage did not mention samtools stats"), so we disable
|
||||
;; them.
|
||||
(("(test_usage_subcommand\\(.*\\);)" cmd)
|
||||
(string-append "unless ($subcommand eq 'stats') {" cmd "};")))))
|
||||
(alist-delete
|
||||
'configure
|
||||
%standard-phases)))))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(inputs `(("ncurses" ,ncurses)
|
||||
("perl" ,perl)
|
||||
("python" ,python)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "http://samtools.sourceforge.net")
|
||||
(synopsis "Utilities to efficiently manipulate nucleotide sequence alignments")
|
||||
(description
|
||||
"Samtools implements various utilities for post-processing nucleotide
|
||||
sequence alignments in the SAM, BAM, and CRAM formats, including indexing,
|
||||
variant calling (in conjunction with bcftools), and a simple alignment
|
||||
viewer.")
|
||||
(license license:expat)))
|
||||
@@ -1,4 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -20,6 +21,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module ((guix licenses) #:prefix l:)
|
||||
#:use-module (gnu packages openssl)
|
||||
#:use-module (gnu packages libevent)
|
||||
@@ -30,7 +32,11 @@
|
||||
#:use-module ((gnu packages compression)
|
||||
#:select (zlib))
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gtk))
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cyrus-sasl))
|
||||
|
||||
(define-public transmission
|
||||
(package
|
||||
@@ -44,11 +50,12 @@
|
||||
(sha256
|
||||
(base32
|
||||
"1sxr1magqb5s26yvr5yhs1f7bmir8gl09niafg64lhgfnhv1kz59"))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(outputs '("out" ; library and command-line interface
|
||||
"gui")) ; graphical user interface
|
||||
(arguments
|
||||
'(#:phases (alist-cons-after
|
||||
'(#:glib-or-gtk-wrap-excluded-outputs '("out")
|
||||
#:phases (alist-cons-after
|
||||
'install 'move-gui
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Move the GUI to its own output, so that "out" doesn't
|
||||
@@ -88,3 +95,63 @@ DHT, µTP, PEX and Magnet Links.")
|
||||
;;
|
||||
;; A few files files carry an MIT/X11 license header.
|
||||
(license l:gpl3+)))
|
||||
|
||||
(define-public libtorrent
|
||||
(package
|
||||
(name "libtorrent")
|
||||
(version "0.13.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://libtorrent.rakshasa.no/downloads/libtorrent-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ma910br5vxrfpm4f4w4942lpmhwvqjnnf9h8vpf52fw35qhjkkh"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("openssl" ,openssl)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
;; Add this when you enable tests:
|
||||
;; ("cppunit" ,cppunit)
|
||||
))
|
||||
(arguments
|
||||
;; FIXME: enable tests on the next release:
|
||||
;; https://github.com/rakshasa/libtorrent/issues/59
|
||||
`(#:tests? #f))
|
||||
(synopsis "BitTorrent library of rtorrent")
|
||||
(description
|
||||
"LibTorrent is a BitTorrent library used by and developed in parallel
|
||||
with the BitTorrent client rtorrent. It is written in C++ with emphasis on
|
||||
speed and efficiency.")
|
||||
(home-page "http://libtorrent.rakshasa.no/")
|
||||
(license l:gpl2+)))
|
||||
|
||||
(define-public rtorrent
|
||||
(package
|
||||
(name "rtorrent")
|
||||
(version "0.9.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://libtorrent.rakshasa.no/downloads/rtorrent-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"113yrrac75vqi4g8r6bgs0ggjllj9bkg9shv08vqzdhkwqg2q2mw"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("libtorrent" ,libtorrent)
|
||||
("ncurses" ,ncurses)
|
||||
("curl" ,curl)
|
||||
("cyrus-sasl" ,cyrus-sasl)
|
||||
("openssl" ,openssl)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
("cppunit" ,cppunit)))
|
||||
(synopsis "BitTorrent client with ncurses interface")
|
||||
(description
|
||||
"rTorrent is a BitTorrent client with an ncurses interface. It supports
|
||||
full encryption, DHT, PEX, and Magnet Links. It can also be controlled via
|
||||
XML-RPC over SCGI.")
|
||||
(home-page "http://libtorrent.rakshasa.no/")
|
||||
(license l:gpl2+)))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -53,7 +53,7 @@
|
||||
;; Boost's 'context' library is not yet supported on mips64, so
|
||||
;; we disable it. The 'coroutine' library depends on 'context',
|
||||
;; so we disable that too.
|
||||
,@(if (equal? "mips64el-linux" (or (%current-target-system)
|
||||
,@(if (string-prefix? "mips64" (or (%current-target-system)
|
||||
(%current-system)))
|
||||
'("--without-context" "--without-coroutine")
|
||||
'()))))
|
||||
|
||||
+60
-14
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -58,9 +59,9 @@
|
||||
"Return a variant of SOURCE, an <origin> instance, whose method uses
|
||||
%BOOTSTRAP-GUILE to do its job."
|
||||
(define (boot fetch)
|
||||
(lambda* (store url hash-algo hash
|
||||
(lambda* (url hash-algo hash
|
||||
#:optional name #:key system)
|
||||
(fetch store url hash-algo hash
|
||||
(fetch url hash-algo hash
|
||||
#:guile %bootstrap-guile
|
||||
#:system system)))
|
||||
|
||||
@@ -87,10 +88,13 @@
|
||||
(patch patch))
|
||||
(origin-patches source))))))
|
||||
|
||||
(define (package-from-tarball name source program-to-test description)
|
||||
(define* (package-from-tarball name source program-to-test description
|
||||
#:key snippet)
|
||||
"Return a package that correspond to the extraction of SOURCE.
|
||||
PROGRAM-TO-TEST is a program to run after extraction of SOURCE, to
|
||||
check whether everything is alright."
|
||||
check whether everything is alright. If SNIPPET is provided, it is
|
||||
evaluated after extracting SOURCE. SNIPPET should return true if
|
||||
successful, or false to signal an error."
|
||||
(package
|
||||
(name name)
|
||||
(version "0")
|
||||
@@ -112,6 +116,7 @@ check whether everything is alright."
|
||||
(with-directory-excursion out
|
||||
(and (zero? (system* tar "xvf"
|
||||
(string-append builddir "/binaries.tar")))
|
||||
,@(if snippet (list snippet) '())
|
||||
(zero? (system* (string-append "bin/" ,program-to-test)
|
||||
"--version"))))))))
|
||||
(inputs
|
||||
@@ -157,11 +162,13 @@ check whether everything is alright."
|
||||
"Return the name of Glibc's dynamic linker for SYSTEM."
|
||||
(cond ((string=? system "x86_64-linux") "/lib/ld-linux-x86-64.so.2")
|
||||
((string=? system "i686-linux") "/lib/ld-linux.so.2")
|
||||
((string=? system "armhf-linux") "/lib/ld-linux-armhf.so.3")
|
||||
((string=? system "mips64el-linux") "/lib/ld.so.1")
|
||||
|
||||
;; XXX: This one is used bare-bones, without a libc, so add a case
|
||||
;; here just so we can keep going.
|
||||
((string=? system "xtensa-elf") "no-ld.so")
|
||||
((string=? system "avr") "no-ld.so")
|
||||
|
||||
(else (error "dynamic linker name not known for this system"
|
||||
system))))
|
||||
@@ -185,7 +192,11 @@ check whether everything is alright."
|
||||
(xz (->store "xz"))
|
||||
(mkdir (->store "mkdir"))
|
||||
(bash (->store "bash"))
|
||||
(guile (->store "guile-2.0.9.tar.xz"))
|
||||
(guile (->store (match system
|
||||
("armhf-linux"
|
||||
"guile-2.0.11.tar.xz")
|
||||
(_
|
||||
"guile-2.0.9.tar.xz"))))
|
||||
(builder
|
||||
(add-text-to-store store
|
||||
"build-bootstrap-guile.sh"
|
||||
@@ -245,7 +256,11 @@ $out/bin/guile --version~%"
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (map (cut string-append <> "/" system
|
||||
"/20131110/static-binaries.tar.xz")
|
||||
(match system
|
||||
("armhf-linux"
|
||||
"/20150101/static-binaries.tar.xz")
|
||||
(_
|
||||
"/20131110/static-binaries.tar.xz")))
|
||||
%bootstrap-base-urls))
|
||||
(sha256
|
||||
(match system
|
||||
@@ -255,11 +270,21 @@ $out/bin/guile --version~%"
|
||||
("i686-linux"
|
||||
(base32
|
||||
"0s5b3jb315n13m1k8095l0a5hfrsz8g0fv1b6riyc5hnxqyphlak"))
|
||||
("armhf-linux"
|
||||
(base32
|
||||
"0gf0fn2kbpxkjixkmx5f4z6hv6qpmgixl69zgg74dbsfdfj8jdv5"))
|
||||
("mips64el-linux"
|
||||
(base32
|
||||
"072y4wyfsj1bs80r6vbybbafy8ya4vfy7qj25dklwk97m6g71753"))))))
|
||||
"true" ; the program to test
|
||||
"Bootstrap binaries of Coreutils, Awk, etc."))
|
||||
"fgrep" ; the program to test
|
||||
"Bootstrap binaries of Coreutils, Awk, etc."
|
||||
#:snippet
|
||||
'(let ((path (list (string-append (getcwd) "/bin"))))
|
||||
(chmod "bin" #o755)
|
||||
(patch-shebang "bin/egrep" path)
|
||||
(patch-shebang "bin/fgrep" path)
|
||||
(chmod "bin" #o555)
|
||||
#t)))
|
||||
|
||||
(define %bootstrap-binutils
|
||||
(package-from-tarball "binutils-bootstrap"
|
||||
@@ -267,7 +292,11 @@ $out/bin/guile --version~%"
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (map (cut string-append <> "/" system
|
||||
"/20131110/binutils-2.23.2.tar.xz")
|
||||
(match system
|
||||
("armhf-linux"
|
||||
"/20150101/binutils-2.25.tar.xz")
|
||||
(_
|
||||
"/20131110/binutils-2.23.2.tar.xz")))
|
||||
%bootstrap-base-urls))
|
||||
(sha256
|
||||
(match system
|
||||
@@ -277,6 +306,9 @@ $out/bin/guile --version~%"
|
||||
("i686-linux"
|
||||
(base32
|
||||
"14jgwf9gscd7l2pnz610b1zia06dvcm2qyzvni31b8zpgmcai2v9"))
|
||||
("armhf-linux"
|
||||
(base32
|
||||
"1v7dj6bzn6m36f20gw31l99xaabq4xrhrx3gwqkhhig0mdlmr69q"))
|
||||
("mips64el-linux"
|
||||
(base32
|
||||
"1x8kkhcxmfyzg1ddpz2pxs6fbdl6412r7x0nzbmi5n7mj8zw2gy7"))))))
|
||||
@@ -321,7 +353,11 @@ $out/bin/guile --version~%"
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (map (cut string-append <> "/" (%current-system)
|
||||
"/20131110/glibc-2.18.tar.xz")
|
||||
(match (%current-system)
|
||||
("armhf-linux"
|
||||
"/20150101/glibc-2.20.tar.xz")
|
||||
(_
|
||||
"/20131110/glibc-2.18.tar.xz")))
|
||||
%bootstrap-base-urls))
|
||||
(sha256
|
||||
(match (%current-system)
|
||||
@@ -331,6 +367,9 @@ $out/bin/guile --version~%"
|
||||
("i686-linux"
|
||||
(base32
|
||||
"1hgrccw1zqdc7lvgivwa54d9l3zsim5pqm0dykxg0z522h6gr05w"))
|
||||
("armhf-linux"
|
||||
(base32
|
||||
"18cmgvpllqfpn6khsmivqib7ys8ymnq0hdzi3qp24prik0ykz8gn"))
|
||||
("mips64el-linux"
|
||||
(base32
|
||||
"0k97a3whzx3apsi9n2cbsrr79ad6lh00klxph9hw4fqyp1abkdsg")))))))))
|
||||
@@ -392,7 +431,11 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (map (cut string-append <> "/" (%current-system)
|
||||
"/20131110/gcc-4.8.2.tar.xz")
|
||||
(match (%current-system)
|
||||
("armhf-linux"
|
||||
"/20150101/gcc-4.8.4.tar.xz")
|
||||
(_
|
||||
"/20131110/gcc-4.8.2.tar.xz")))
|
||||
%bootstrap-base-urls))
|
||||
(sha256
|
||||
(match (%current-system)
|
||||
@@ -402,16 +445,19 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
|
||||
("i686-linux"
|
||||
(base32
|
||||
"150c1arrf2k8vfy6dpxh59vcgs4p1bgiz2av5m19dynpks7rjnyw"))
|
||||
("armhf-linux"
|
||||
(base32
|
||||
"0ghz825yzp43fxw53kd6afm8nkz16f7dxi9xi40bfwc8x3nbbr8v"))
|
||||
("mips64el-linux"
|
||||
(base32
|
||||
"1m5miqkyng45l745n0sfafdpjkqv9225xf44jqkygwsipj2cv9ks")))))))))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "CPATH")
|
||||
(directories '("include")))
|
||||
(files '("include")))
|
||||
(search-path-specification
|
||||
(variable "LIBRARY_PATH")
|
||||
(directories '("lib" "lib64")))))
|
||||
(files '("lib" "lib64")))))
|
||||
(synopsis "Bootstrap binaries of the GNU Compiler Collection")
|
||||
(description #f)
|
||||
(home-page #f)
|
||||
|
||||
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
@@ -98,8 +98,8 @@
|
||||
("zip" ,zip)))
|
||||
(synopsis "Many common UNIX utilities in a single executable")
|
||||
(description "BusyBox combines tiny versions of many common UNIX utilities
|
||||
into a single small executable. It provides a fairly complete
|
||||
environment for any small or embedded system.")
|
||||
into a single small executable. It provides a fairly complete environment for
|
||||
any small or embedded system.")
|
||||
(home-page "http://www.busybox.net")
|
||||
;; Some files are gplv2+
|
||||
(license gpl2)))
|
||||
|
||||
+108
-3
@@ -32,7 +32,11 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages which))
|
||||
#:use-module (gnu packages which)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages wget)
|
||||
#:use-module (gnu packages xiph))
|
||||
|
||||
(define-public libcddb
|
||||
(package
|
||||
@@ -68,14 +72,14 @@ caching facility provided by the library.")
|
||||
(define-public libcdio
|
||||
(package
|
||||
(name "libcdio")
|
||||
(version "0.92")
|
||||
(version "0.93")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libcdio/libcdio-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1b9zngn8nnxb1yyngi1kwi73nahp4lsx59j17q1bahzz58svydik"))))
|
||||
"0xb9km1750ndr7nglgbv1smv03dy8nkcfd9djbzqn3ldzlicswj9"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("ncurses" ,ncurses)
|
||||
@@ -217,3 +221,104 @@ files. Dvdisaster works at the image level so that the recovery does not
|
||||
depend on the file system of the medium. The maximum error correction
|
||||
capacity is user-selectable.")
|
||||
(license gpl2+)))
|
||||
|
||||
(define-public cd-discid
|
||||
(package
|
||||
(name "cd-discid")
|
||||
(version "1.4")
|
||||
(home-page "http://linukz.org/cd-discid.shtml")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://linukz.org/download/cd-discid-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qrcvn7227qaayjcd5rm7z0k5q89qfy5qkdgwr5pd7ih0va8rmpz"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "Makefile"
|
||||
(("/usr/bin/install")
|
||||
"install")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
#:phases (alist-delete 'configure %standard-phases)
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX="
|
||||
(assoc-ref %outputs "out")))))
|
||||
(synopsis "Get CDDB discid information from an audio CD")
|
||||
(description
|
||||
"cd-discid is a command-line tool to retrieve CDDB discid information
|
||||
from an audio CD.")
|
||||
(license gpl2+)))
|
||||
|
||||
(define-public abcde
|
||||
(package
|
||||
(name "abcde")
|
||||
(version "2.6")
|
||||
(home-page "http://abcde.einval.com/")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append home-page "/download/abcde-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0y2cg233n2hixs0ji76dggpzgf52v4c4mnpwiai889ql2piafgk8"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "Makefile"
|
||||
(("/usr/bin/install")
|
||||
"install")
|
||||
(("^etcdir = .*$")
|
||||
(string-append "etcdir = $(prefix)/etc\n"))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-replace
|
||||
'configure
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
(substitute* "Makefile"
|
||||
(("^prefix = .*$")
|
||||
(string-append "prefix = "
|
||||
(assoc-ref outputs "out")
|
||||
"\n"))))
|
||||
(alist-cons-after
|
||||
'install 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((wget (assoc-ref inputs "wget"))
|
||||
(vorbis (assoc-ref inputs "vorbis-tools"))
|
||||
(parano (assoc-ref inputs "cdparanoia"))
|
||||
(which (assoc-ref inputs "which"))
|
||||
(discid (assoc-ref inputs "cd-discid"))
|
||||
(out (assoc-ref outputs "out")))
|
||||
(define (wrap file)
|
||||
(wrap-program file
|
||||
`("PATH" ":" prefix
|
||||
(,(string-append out "/bin:"
|
||||
wget "/bin:"
|
||||
which "/bin:"
|
||||
vorbis "/bin:"
|
||||
discid "/bin:"
|
||||
parano "/bin")))))
|
||||
|
||||
(for-each wrap
|
||||
(find-files (string-append out "/bin")
|
||||
".*"))))
|
||||
%standard-phases))
|
||||
#:tests? #f))
|
||||
|
||||
(inputs `(("wget" ,wget)
|
||||
("which" ,which)
|
||||
("cdparanoia" ,cdparanoia)
|
||||
("cd-discid" ,cd-discid)
|
||||
("vorbis-tools" ,vorbis-tools)
|
||||
|
||||
;; A couple of Python and Perl scripts are included.
|
||||
("python" ,python)
|
||||
("perl" ,perl)))
|
||||
|
||||
(synopsis "Command-line audio CD ripper")
|
||||
(description
|
||||
"abcde is a front-end command-line utility (actually, a shell script)
|
||||
that grabs tracks off a CD, encodes them to Ogg/Vorbis, MP3, FLAC, Ogg/Speex
|
||||
and/or MPP/MP+ (Musepack) format, and tags them, all in one go.")
|
||||
(license gpl2+)))
|
||||
|
||||
@@ -122,19 +122,6 @@
|
||||
("file" ,file-boot0)
|
||||
,@%bootstrap-inputs))
|
||||
|
||||
(define* (nix-system->gnu-triplet
|
||||
#:optional (system (%current-system)) (vendor "unknown"))
|
||||
"Return an a guess of the GNU triplet corresponding to Nix system
|
||||
identifier SYSTEM."
|
||||
(let* ((dash (string-index system #\-))
|
||||
(arch (substring system 0 dash))
|
||||
(os (substring system (+ 1 dash))))
|
||||
(string-append arch
|
||||
"-" vendor "-"
|
||||
(if (string=? os "linux")
|
||||
"linux-gnu"
|
||||
os))))
|
||||
|
||||
(define* (boot-triplet #:optional (system (%current-system)))
|
||||
;; Return the triplet used to create the cross toolchain needed in the
|
||||
;; first bootstrapping stage.
|
||||
@@ -544,7 +531,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||
(native-inputs `(("texinfo" ,texinfo-boot0)
|
||||
,@(package-native-inputs gcc-boot0)))
|
||||
|
||||
(inputs `(("gmp-source" ,(package-source gmp))
|
||||
(inputs `(("gmp-source" ,(bootstrap-origin (package-source gmp)))
|
||||
("mpfr-source" ,(package-source mpfr))
|
||||
("mpc-source" ,(package-source mpc))
|
||||
("binutils" ,binutils-final)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
@@ -70,6 +70,26 @@ independent of the input data and can be reduced, if necessary, at some cost
|
||||
in compression.")
|
||||
(license license:zlib)))
|
||||
|
||||
(define-public fastjar
|
||||
(package
|
||||
(name "fastjar")
|
||||
(version "0.98")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://savannah/fastjar/fastjar-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0iginbz2m15hcsa3x4y7v3mhk54gr1r7m3ghx0pg4n46vv2snmpi"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("zlib" ,zlib)))
|
||||
(home-page "http://savannah.nongnu.org/projects/fastjar")
|
||||
(synopsis "Replacement for Sun's 'jar' utility")
|
||||
(description
|
||||
"FastJar is an attempt to create a much faster replacement for Sun's 'jar'
|
||||
utility. Instead of being written in Java, FastJar is written in C.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gzip
|
||||
(package
|
||||
(name "gzip")
|
||||
@@ -95,13 +115,7 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in
|
||||
(home-page "http://www.gnu.org/software/gzip/")))
|
||||
|
||||
(define-public bzip2
|
||||
(let ((fix-man-dir
|
||||
;; Move man pages to $out/share/.
|
||||
'(lambda* (#:key outputs #:allow-other-keys)
|
||||
(with-directory-excursion (assoc-ref outputs "out")
|
||||
(mkdir "share")
|
||||
(rename-file "man" "share/man"))))
|
||||
(build-shared-lib
|
||||
(let ((build-shared-lib
|
||||
;; Build a shared library.
|
||||
'(lambda* (#:key inputs #:allow-other-keys)
|
||||
(patch-makefile-SHELL "Makefile-libbz2_so")
|
||||
@@ -151,20 +165,16 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in
|
||||
`(alist-cons-before
|
||||
'build 'build-shared-lib ,build-shared-lib
|
||||
(alist-cons-after
|
||||
'install 'fix-man-dir ,fix-man-dir
|
||||
(alist-cons-after
|
||||
'install 'install-shared-lib ,install-shared-lib
|
||||
(alist-replace 'configure ,set-cross-environment
|
||||
%standard-phases))))
|
||||
'install 'install-shared-lib ,install-shared-lib
|
||||
(alist-replace 'configure ,set-cross-environment
|
||||
%standard-phases)))
|
||||
|
||||
;; Native compilation: build the shared library.
|
||||
`(alist-cons-before
|
||||
'build 'build-shared-lib ,build-shared-lib
|
||||
(alist-cons-after
|
||||
'install 'fix-man-dir ,fix-man-dir
|
||||
(alist-cons-after
|
||||
'install 'install-shared-lib ,install-shared-lib
|
||||
(alist-delete 'configure %standard-phases)))))
|
||||
'install 'install-shared-lib ,install-shared-lib
|
||||
(alist-delete 'configure %standard-phases))))
|
||||
|
||||
#:make-flags (list (string-append "PREFIX="
|
||||
(assoc-ref %outputs "out")))
|
||||
|
||||
+14
-1
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -19,6 +20,7 @@
|
||||
(define-module (gnu packages cpio)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu))
|
||||
@@ -34,8 +36,19 @@
|
||||
(sha256
|
||||
(base32
|
||||
"1gavgpzqwgkpagjxw72xgxz52y1ifgz0ckqh8g7cckz7jvyhp0mv"))
|
||||
(patches (list (search-patch "cpio-gets-undeclared.patch")))))
|
||||
(patches (list (search-patch "cpio-CVE-2014-9112-pt1.patch")
|
||||
(search-patch "cpio-CVE-2014-9112-pt2.patch")
|
||||
(search-patch "cpio-CVE-2014-9112-pt3.patch")
|
||||
(search-patch "cpio-CVE-2014-9112-pt4.patch")
|
||||
(search-patch "cpio-CVE-2014-9112-pt5.patch")
|
||||
(search-patch "cpio-gets-undeclared.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; FIXME: autoconf is needed to run autom4te, to update to test suite
|
||||
;; after the CVE-2014-9112 patches. Remove this when cpio is
|
||||
;; updated to post-2.11.
|
||||
(native-inputs `(("autoconf" ,autoconf)))
|
||||
|
||||
(home-page "https://www.gnu.org/software/cpio/")
|
||||
(synopsis "Manage cpio and tar file archives")
|
||||
(description
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -88,7 +89,6 @@ may be either a libc package or #f.)"
|
||||
(substitute-keyword-arguments (package-arguments gcc-4.8)
|
||||
((#:configure-flags flags)
|
||||
`(append (list ,(string-append "--target=" target)
|
||||
,@(gcc-configure-flags-for-triplet target)
|
||||
,@(if libc
|
||||
'()
|
||||
`( ;; Disable features not needed at this stage.
|
||||
@@ -234,10 +234,10 @@ GCC that does not target a libc; otherwise, target that libc."
|
||||
(search-paths
|
||||
(list (search-path-specification
|
||||
(variable "CROSS_CPATH")
|
||||
(directories '("include")))
|
||||
(files '("include")))
|
||||
(search-path-specification
|
||||
(variable "CROSS_LIBRARY_PATH")
|
||||
(directories '("lib" "lib64")))))
|
||||
(files '("lib" "lib64")))))
|
||||
(native-search-paths '())))
|
||||
|
||||
(define* (cross-libc target
|
||||
@@ -308,15 +308,35 @@ XBINUTILS and the cross tool chain."
|
||||
;;;
|
||||
|
||||
(define-public xgcc-mips64el
|
||||
(let ((triplet "mips64el-linux-gnuabi64")) ; N64 ABI
|
||||
(let* ((triplet "mips64el-linux-gnuabi64") ;N64 ABI
|
||||
(xgcc (cross-gcc triplet
|
||||
(cross-binutils triplet)
|
||||
(cross-libc triplet))))
|
||||
;; Don't attempt to build this cross-compiler on i686;
|
||||
;; see <http://bugs.gnu.org/19598>.
|
||||
(package (inherit xgcc)
|
||||
(supported-systems (fold delete
|
||||
(package-supported-systems xgcc)
|
||||
'("mips64el-linux" "i686-linux"))))))
|
||||
|
||||
(define-public xgcc-avr
|
||||
;; AVR cross-compiler, used to build AVR-Libc.
|
||||
(let ((triplet "avr"))
|
||||
(cross-gcc triplet
|
||||
(cross-binutils triplet)
|
||||
(cross-libc triplet))))
|
||||
(cross-binutils triplet))))
|
||||
|
||||
(define-public xgcc-xtensa
|
||||
;; Bare-bones Xtensa cross-compiler, used to build the Atheros firmware.
|
||||
(cross-gcc "xtensa-elf"))
|
||||
|
||||
(define-public xgcc-armhf
|
||||
(let* ((triplet "arm-linux-gnueabihf")
|
||||
(xgcc (cross-gcc triplet
|
||||
(cross-binutils triplet)
|
||||
(cross-libc triplet))))
|
||||
(package (inherit xgcc)
|
||||
(supported-systems (delete "armhf-linux" %supported-systems)))))
|
||||
|
||||
;; (define-public xgcc-armel
|
||||
;; (let ((triplet "armel-linux-gnueabi"))
|
||||
;; (cross-gcc triplet
|
||||
|
||||
@@ -0,0 +1,293 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages cups)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages avahi)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages fonts) ;font-dejavu
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gnutls)
|
||||
#:use-module (gnu packages pdf)
|
||||
#:use-module (gnu packages pkg-config))
|
||||
|
||||
(define-public cups-filters
|
||||
(package
|
||||
(name "cups-filters")
|
||||
(version "1.0.61")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "http://openprinting.org/download/cups-filters/"
|
||||
"cups-filters-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1bq48nnrarlbf6qc93bz1n5wlh6j420gppbck3r45sinwhz5wa7m"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; install backends, banners and filters to cups-filters output
|
||||
;; directory, not the cups server directory
|
||||
'(substitute* "Makefile.in"
|
||||
(("CUPS_DATADIR = @CUPS_DATADIR@")
|
||||
"CUPS_DATADIR = $(PREFIX)/share/cups")
|
||||
(("pkgcupsserverrootdir = \\$\\(CUPS_SERVERROOT\\)")
|
||||
"pkgcupsserverrootdir = $(PREFIX)")
|
||||
(("pkgbackenddir = \\$\\(CUPS_SERVERBIN\\)/backend")
|
||||
"pkgbackenddir = $(PREFIX)/backend")
|
||||
(("pkgfilterdir = \\$\\(CUPS_SERVERBIN\\)/filter")
|
||||
"pkgfilterdir = $(PREFIX)/filter")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags (list (string-append "PREFIX=" %output))
|
||||
#:configure-flags
|
||||
`(,(string-append "--with-test-font-path="
|
||||
(assoc-ref %build-inputs "font-dejavu")
|
||||
"/share/fonts/truetype/DejaVuSans.ttf")
|
||||
,(string-append "--with-rcdir="
|
||||
(assoc-ref %outputs "out") "/etc/rc.d"))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("font-dejavu" ,font-dejavu) ;needed by test suite
|
||||
("ghostscript" ,ghostscript)
|
||||
("ijs" ,ijs)
|
||||
("dbus" ,dbus)
|
||||
("lcms" ,lcms)
|
||||
("libjpeg-8" ,libjpeg-8)
|
||||
("libpng" ,libpng)
|
||||
("libtiff" ,libtiff)
|
||||
("glib" ,glib)
|
||||
("qpdf" ,qpdf)
|
||||
("poppler" ,poppler)
|
||||
("cups-minimal" ,cups-minimal)))
|
||||
(home-page "http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters")
|
||||
(synopsis "OpenPrinting CUPS filters and backends")
|
||||
(description
|
||||
"Contains backends, filters, and other software that was once part of the
|
||||
core CUPS distribution but is no longer maintained by Apple Inc. In addition
|
||||
it contains additional filters developed independently of Apple, especially
|
||||
filters for the PDF-centric printing workflow introduced by OpenPrinting.")
|
||||
;; Different filters and backends have different licenses; see COPYING for
|
||||
;; details
|
||||
(license (list license:gpl2
|
||||
license:gpl2+
|
||||
license:gpl3
|
||||
license:gpl3+
|
||||
license:lgpl2.0+
|
||||
license:expat))))
|
||||
|
||||
;; CUPS on non-MacOS systems requires cups-filters. Since cups-filters also
|
||||
;; depends on CUPS libraries and binaries, cups-minimal has been added to
|
||||
;; satisfy this dependency.
|
||||
(define-public cups-minimal
|
||||
(package
|
||||
(name "cups-minimal")
|
||||
(version "2.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.cups.org/software/"
|
||||
version "/cups-" version "-source.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1kbc85kwhm1vyzahblrg3qih9yypggs91d13gdrbnaac8q7jd9jr"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
'("--disable-launchd"
|
||||
"--disable-systemd"
|
||||
"--disable-avahi"
|
||||
"--disable-dnssd")
|
||||
;; Seven tests fail, mostly because of files that are provided by the
|
||||
;; cups-filters package.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'configure
|
||||
'patch-makedefs
|
||||
(lambda _
|
||||
(substitute* "Makedefs.in"
|
||||
(("INITDIR.*=.*@INITDIR@") "INITDIR = @prefix@/@INITDIR@")
|
||||
(("/bin/sh") (which "sh"))))
|
||||
(alist-cons-before
|
||||
'build
|
||||
'patch-tests
|
||||
(lambda _
|
||||
(substitute* "test/ippserver.c"
|
||||
(("# else /\\* HAVE_AVAHI \\*/") "#elif defined(HAVE_AVAHI)")))
|
||||
%standard-phases))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("zlib" ,zlib)
|
||||
("gnutls" ,gnutls)))
|
||||
(home-page "http://www.cups.org")
|
||||
(synopsis "The Common Unix Printing System")
|
||||
(description
|
||||
"CUPS is a printing system that uses the Internet Printing
|
||||
Protocol (IPP). It provides System V and BSD command-line interfaces, as well
|
||||
as a Web interface and a C programming interface to manage printers and print
|
||||
jobs. It supports printing to both local (parallel, serial, USB) and
|
||||
networked printers, and printers can be shared from one computer to another.
|
||||
Internally, CUPS uses PostScript Printer Description (PPD) files to describe
|
||||
printer capabilities and features and a wide variety of generic and
|
||||
device-specific programs to convert and print many types of files.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public cups
|
||||
(package (inherit cups-minimal)
|
||||
(name "cups")
|
||||
(arguments
|
||||
`(;; Three tests fail:
|
||||
;; * two tests in ipp-1.1.test related to "RFC 2911 section 3.2.6:
|
||||
;; Get-Jobs Operation"
|
||||
;; * test of number of error/warning messages, probably related to a
|
||||
;; missing font.
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
'("--disable-launchd"
|
||||
"--disable-systemd")
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'configure
|
||||
'patch-makedefs
|
||||
(lambda _
|
||||
(substitute* "Makedefs.in"
|
||||
(("INITDIR.*=.*@INITDIR@") "INITDIR = @prefix@/@INITDIR@")
|
||||
(("/bin/sh") (which "sh"))))
|
||||
(alist-cons-before
|
||||
'check
|
||||
'patch-tests
|
||||
(lambda _
|
||||
(let ((filters (assoc-ref %build-inputs "cups-filters"))
|
||||
(catpath (string-append
|
||||
(assoc-ref %build-inputs "coreutils") "/bin/"))
|
||||
(testdir (string-append (getcwd) "/tmp/")))
|
||||
(mkdir testdir)
|
||||
(substitute* "test/run-stp-tests.sh"
|
||||
((" *BASE=/tmp/") (string-append "BASE=" testdir))
|
||||
|
||||
;; allow installation of filters from output dir and from
|
||||
;; cups-filters
|
||||
(("for dir in /usr/libexec/cups/filter /usr/lib/cups/filter")
|
||||
(string-append
|
||||
"for dir in "
|
||||
(assoc-ref %outputs "out") "/lib/cups/filter "
|
||||
filters "/filter"))
|
||||
|
||||
;; check for charsets in cups-filters output
|
||||
(("/usr/share/cups/charsets")
|
||||
(string-append filters "/share/cups/charsets"))
|
||||
|
||||
;; install additional required filters
|
||||
(("instfilter texttopdf texttopdf pdf")
|
||||
(string-append
|
||||
"instfilter texttopdf texttopdf pdf;"
|
||||
"instfilter imagetoraster imagetoraster raster;"
|
||||
"instfilter gstoraster gstoraster raster;"
|
||||
"instfilter urftopdf urftopdf pdf;"
|
||||
"instfilter rastertopdf rastertopdf pdf;"
|
||||
"instfilter pstopdf pstopdf pdf"))
|
||||
|
||||
;; specify location of lpstat binary
|
||||
(("description=\"`lpstat -l")
|
||||
"description=\"`../systemv/lpstat -l")
|
||||
|
||||
;; patch shebangs of embedded scripts
|
||||
(("#!/bin/sh") (string-append "#!" (which "sh")))
|
||||
|
||||
;; also link mime definitions from cups-filters
|
||||
;; to enable the additional filters for the test suite
|
||||
(("ln -s \\$root/conf/mime\\.types")
|
||||
(string-append
|
||||
"ln -s " filters
|
||||
"/share/cups/mime/cupsfilters.types $BASE/share/mime; "
|
||||
"ln -s $root/conf/mime.types"))
|
||||
(("ln -s \\$root/conf/mime\\.convs")
|
||||
(string-append
|
||||
"ln -s " filters
|
||||
"/share/cups/mime/cupsfilters.convs $BASE/share/mime; "
|
||||
"ln -s $root/conf/mime.convs")))
|
||||
|
||||
;; fix search path for "cat"
|
||||
(substitute* "cups/testfile.c"
|
||||
(("cupsFileFind\\(\"cat\", \"/bin\"")
|
||||
(string-append "cupsFileFind(\"cat\", \"" catpath "\""))
|
||||
(("cupsFileFind\\(\"cat\", \"/bin:/usr/bin\"")
|
||||
(string-append "cupsFileFind(\"cat\", \"" catpath "\"")))))
|
||||
(alist-cons-after
|
||||
'install
|
||||
'install-cups-filters-symlinks
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(cups-filters (assoc-ref inputs "cups-filters")))
|
||||
;; charsets
|
||||
(symlink
|
||||
(string-append cups-filters "/share/cups/charsets")
|
||||
(string-append out "/share/charsets"))
|
||||
|
||||
;; mime types, driver file, ppds
|
||||
(for-each
|
||||
(lambda (f)
|
||||
(symlink (string-append cups-filters f)
|
||||
(string-append out f)))
|
||||
'("/share/cups/mime/cupsfilters.types"
|
||||
"/share/cups/mime/cupsfilters.convs"
|
||||
"/share/cups/drv/cupsfilters.drv"
|
||||
"/share/ppd"))
|
||||
|
||||
;; filters
|
||||
(for-each
|
||||
(lambda (f)
|
||||
(symlink f
|
||||
(string-append out "/lib/cups/filter" (basename f))))
|
||||
(find-files (string-append cups-filters "/filter") ".*"))
|
||||
|
||||
;; backends
|
||||
(for-each
|
||||
(lambda (f)
|
||||
(symlink (string-append cups-filters f)
|
||||
(string-append out "/lib/cups" f)))
|
||||
'("/backend/parallel"
|
||||
"/backend/serial"))
|
||||
|
||||
;; banners
|
||||
(let ((banners "/share/cups/banners"))
|
||||
(delete-file-recursively (string-append out banners))
|
||||
(symlink (string-append cups-filters banners)
|
||||
(string-append out banners)))
|
||||
|
||||
;; assorted data
|
||||
(let ((data "/share/cups/data"))
|
||||
(delete-file-recursively (string-append out data))
|
||||
(symlink (string-append cups-filters data)
|
||||
(string-append out data)))))
|
||||
%standard-phases)))))
|
||||
(inputs
|
||||
`(("avahi" ,avahi)
|
||||
("gnutls" ,gnutls)
|
||||
("cups-filters" ,cups-filters)
|
||||
("zlib" ,zlib)))))
|
||||
+13
-6
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -36,14 +37,15 @@
|
||||
(define-public curl
|
||||
(package
|
||||
(name "curl")
|
||||
(version "7.37.1")
|
||||
(version "7.40.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://curl.haxx.se/download/curl-"
|
||||
version ".tar.lzma"))
|
||||
(sha256
|
||||
(base32
|
||||
"10yfh4hy8wbkj43la238hg6h8i9wyp1cvvk8kl0giac1020imn5d"))))
|
||||
"1a15fdc26b3vwwmchzzpd3l1hfyhx06dn7b6lkikqd7kgwvg5ps7"))
|
||||
(patches (list (search-patch "curl-gss-api-fix.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("gnutls" ,gnutls)
|
||||
("gss" ,gss)
|
||||
@@ -61,11 +63,16 @@
|
||||
`(#:configure-flags '("--with-gnutls" "--with-gssapi")
|
||||
;; Add a phase to patch '/bin/sh' occurances in tests/runtests.pl
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'check 'patch-runtests
|
||||
(alist-replace
|
||||
'check
|
||||
(lambda _
|
||||
(substitute* "tests/runtests.pl"
|
||||
(("/bin/sh") (which "sh"))))
|
||||
(substitute* "tests/runtests.pl"
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
;; The top-level "make check" does "make -C tests quiet-test", which
|
||||
;; is too quiet. Use the "test" target instead, which is more
|
||||
;; verbose.
|
||||
(zero? (system* "make" "-C" "tests" "test")))
|
||||
%standard-phases)))
|
||||
(synopsis "Command line tool for transferring data with URL syntax")
|
||||
(description
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
;;; Copyright © 2012, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
||||
;;; Copyright © 2014 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -213,7 +213,7 @@ types are supported, as is encryption.")
|
||||
(define-public sqlite
|
||||
(package
|
||||
(name "sqlite")
|
||||
(version "3.8.4.3")
|
||||
(version "3.8.7.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
;; TODO: Download from sqlite.org once this bug :
|
||||
@@ -233,9 +233,7 @@ types are supported, as is encryption.")
|
||||
"/sqlite-autoconf-" numeric-version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0rcdsk5sz34w8vy0g5yhfms4saiq81i872jxx5m5sjij7bi9bsg0"))
|
||||
(patches
|
||||
(list (search-patch "sqlite-large-page-size-fix.patch")))))
|
||||
"1v2rhgsx27in6dcvxk0pkxc0zrbl38biimjg6c1zxz85jh9hydw6"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("readline" ,readline)))
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages debug)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages indent)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pretty-print))
|
||||
|
||||
(define-public delta
|
||||
(package
|
||||
(name "delta")
|
||||
(version "2006.08.03")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "http://ftp.de.debian.org/debian/pool/main/d/delta/"
|
||||
"delta_" version ".orig.tar.gz")
|
||||
;; This uri seems to send guix download into an infinite loop
|
||||
(string-append "http://delta.tigris.org/files/documents/3103/"
|
||||
"33566/delta-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"184wh35pf2ddx97319s6sgkzpz48xxkbwzcjpycv009bm53lh61q"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs ;Installed programs are perl scripts
|
||||
`(("perl" ,perl)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Makefile contains no install target
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(doc (string-append out "/share/doc/delta-" ,version)))
|
||||
(begin
|
||||
(mkdir-p bin)
|
||||
(mkdir-p doc)
|
||||
(for-each (lambda (h)
|
||||
(copy-file h (string-append doc "/" (basename h))))
|
||||
`("License.txt" ,@(find-files "www" ".*\\.html")))
|
||||
(for-each (lambda (b)
|
||||
(copy-file b (string-append bin "/" b)))
|
||||
`("delta" "multidelta" "topformflat")))))
|
||||
(alist-delete 'configure %standard-phases))))
|
||||
(home-page "http://delta.tigris.org/")
|
||||
(synopsis "Heuristical file minimizer")
|
||||
(description
|
||||
"Delta assists you in minimizing \"interesting\" files subject to a test
|
||||
of their interestingness. A common such situation is when attempting to
|
||||
isolate a small failure-inducing substring of a large input that causes your
|
||||
program to exhibit a bug.")
|
||||
;; See License.txt, which is a bsd-3 license, despite the project's
|
||||
;; home-page pointing to a bsd-2 license.
|
||||
(license bsd-3)))
|
||||
|
||||
(define-public c-reduce
|
||||
(package
|
||||
(name "c-reduce")
|
||||
(version "2.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "http://embed.cs.utah.edu/creduce/"
|
||||
"creduce-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0wh0fkyg2l41d2wkndrgdiai9g2qiav7jik7cys21vmgzq01pyy2"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "clang_delta/TransformationManager.cpp"
|
||||
(("llvm/Config/config.h") "llvm/Config/llvm-config.h")))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("astyle" ,astyle)
|
||||
("delta" ,delta)
|
||||
("llvm" ,llvm)
|
||||
("clang" ,clang)
|
||||
("flex" ,flex)
|
||||
("indent" ,indent)
|
||||
("perl" ,perl)
|
||||
("benchmark-timer" ,perl-benchmark-timer)
|
||||
("exporter-lite" ,perl-exporter-lite)
|
||||
("file-which" ,perl-file-which)
|
||||
("getopt-tabular" ,perl-getopt-tabular)
|
||||
("regex-common" ,perl-regexp-common)
|
||||
("sys-cpu" ,perl-sys-cpu)))
|
||||
(arguments
|
||||
`(#:phases (alist-cons-after
|
||||
'install 'set-load-paths
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Tell creduce where to find the perl modules it needs.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(prog (string-append out "/bin/creduce")))
|
||||
(wrap-program
|
||||
prog
|
||||
`("PERL5LIB" ":" prefix
|
||||
,(map (lambda (p)
|
||||
(string-append (assoc-ref inputs p)
|
||||
"/lib/perl5/site_perl/"
|
||||
,(package-version perl)))
|
||||
'("benchmark-timer" "exporter-lite"
|
||||
"file-which" "getopt-tabular"
|
||||
"regex-common" "sys-cpu"))))))
|
||||
%standard-phases)))
|
||||
(home-page "http://embed.cs.utah.edu/creduce")
|
||||
(synopsis "Reducer for interesting code")
|
||||
(description
|
||||
"C-Reduce is a tool that takes a large C or C++ program that has a
|
||||
property of interest (such as triggering a compiler bug) and automatically
|
||||
produces a much smaller C/C++ program that has the same property. It is
|
||||
intended for use by people who discover and report bugs in compilers and other
|
||||
tools that process C/C++ code.")
|
||||
(license ncsa)))
|
||||
@@ -29,14 +29,14 @@
|
||||
(define-public vera
|
||||
(package
|
||||
(name "vera")
|
||||
(version "1.21a")
|
||||
(version "1.22")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/vera/vera-" version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09qz1g8js8qw735wmd8kraqbk1d1997v3px2lcc58frf1r66bp8f"))))
|
||||
"1anx6ikwlkg7bn3c5a8xxrp33bvhfgxmncvnqbn2fp1hnbhqh5i7"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:builder (begin
|
||||
|
||||
@@ -100,7 +100,7 @@ tables, and it understands a variety of different formats.")
|
||||
(define-public ddrescue
|
||||
(package
|
||||
(name "ddrescue")
|
||||
(version "1.18.1")
|
||||
(version "1.19")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -108,7 +108,7 @@ tables, and it understands a variety of different formats.")
|
||||
version ".tar.lz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ad1ifby89wys8lxh4d24y5lih6hkz54jhv6sf6bs1i7sd7lnqaq"))))
|
||||
"1f278w7i9sx45jk6fsw1kyzx743k3alx1c4w1q8sk05ckafhr3gd"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://www.gnu.org/software/ddrescue/ddrescue.html")
|
||||
(synopsis "Data recovery utility")
|
||||
|
||||
@@ -84,3 +84,58 @@ left corner.
|
||||
dwm draws a small customizable border around windows to indicate the focus
|
||||
state.")
|
||||
(license x11)))
|
||||
|
||||
(define-public dmenu
|
||||
(package
|
||||
(name "dmenu")
|
||||
(version "4.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dl.suckless.org/tools/dmenu-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l58jpxrr80fmyw5pgw5alm5qry49aw6y049745wl991v2cdcb08"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no tests
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX=" %output))
|
||||
#:phases
|
||||
(alist-delete 'configure %standard-phases)))
|
||||
(inputs
|
||||
`(("libx11" ,libx11)
|
||||
("libxinerama" ,libxinerama)))
|
||||
(home-page "http://tools.suckless.org/dmenu/")
|
||||
(synopsis "Dynamic menu")
|
||||
(description
|
||||
"A dynamic menu for X, originally designed for dwm. It manages large
|
||||
numbers of user-defined menu items efficiently.")
|
||||
(license x11)))
|
||||
|
||||
(define-public slock
|
||||
(package
|
||||
(name "slock")
|
||||
(version "1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dl.suckless.org/tools/slock-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1r70s3npmp0nyrfdsxz8cw1i1z8n9phqdlw02wjphv341h3yajp0"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no tests
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX=" %output))
|
||||
#:phases (alist-delete 'configure %standard-phases)))
|
||||
(inputs
|
||||
`(("libx11" ,libx11)
|
||||
("libxext" ,libxext)
|
||||
("libxinerama" ,libxinerama)))
|
||||
(home-page "http://tools.suckless.org/slock/")
|
||||
(synopsis "Simple X session lock")
|
||||
(description
|
||||
"Simple X session lock with trivial feedback on password entry.")
|
||||
(license x11)))
|
||||
|
||||
+24
-2
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -87,7 +88,7 @@ addr2line, and more.")
|
||||
(define-public patchelf
|
||||
(package
|
||||
(name "patchelf")
|
||||
(version "0.6")
|
||||
(version "0.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -96,9 +97,30 @@ addr2line, and more.")
|
||||
"/patchelf-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"00bw29vdsscsili65wcb5ay0gvg1w0ljd00sb5xc6br8bylpyzpw"))
|
||||
"1rqpg84wrd3fa16wa9vqdvasnc05yz49w207cz1l0wrl4k8q97y9"))
|
||||
(patches (list (search-patch "patchelf-page-size.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; XXX: The upstream 'patchelf' doesn't support ARM. The only available
|
||||
;; patch makes significant changes to the algorithm, possibly
|
||||
;; introducing bugs. So, we apply the patch only on ARM systems.
|
||||
(inputs
|
||||
(if (string-prefix? "arm" (or (%current-target-system) (%current-system)))
|
||||
`(("patch/rework-for-arm" ,(search-patch
|
||||
"patchelf-rework-for-arm.patch")))
|
||||
'()))
|
||||
(arguments
|
||||
(if (string-prefix? "arm" (or (%current-target-system) (%current-system)))
|
||||
`(#:phases (alist-cons-after
|
||||
'unpack 'patch/rework-for-arm
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((patch-file
|
||||
(assoc-ref inputs "patch/rework-for-arm")))
|
||||
(zero? (system* "patch" "--force" "-p1"
|
||||
"--input" patch-file))))
|
||||
%standard-phases))
|
||||
'()))
|
||||
|
||||
(home-page "http://nixos.org/patchelf.html")
|
||||
(synopsis "Modify the dynamic linker and RPATH of ELF executables")
|
||||
(description
|
||||
|
||||
+200
-4
@@ -1,7 +1,8 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -23,6 +24,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages gtk)
|
||||
@@ -44,6 +46,10 @@
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages acl)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages linux) ;alsa
|
||||
#:use-module (gnu packages xiph)
|
||||
#:use-module (gnu packages mp3)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (srfi srfi-1))
|
||||
|
||||
@@ -58,7 +64,7 @@
|
||||
(sha256
|
||||
(base32
|
||||
"1zflm6ac34s6v166p58ilxrxbxjm0q2wfc25f8y0mjml1lbr3qs7"))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-cons-before
|
||||
'configure 'fix-/bin/pwd
|
||||
@@ -114,6 +120,7 @@ languages.")
|
||||
(name "emacs-no-x-toolkit")
|
||||
(synopsis "The extensible, customizable, self-documenting text
|
||||
editor (without an X toolkit)" )
|
||||
(build-system gnu-build-system)
|
||||
(inputs (append `(("inotify-tools" ,inotify-tools))
|
||||
(alist-delete "gtk+" (package-inputs emacs))))
|
||||
(arguments (append '(#:configure-flags '("--with-x-toolkit=no"))
|
||||
@@ -135,6 +142,15 @@ editor (without an X toolkit)" )
|
||||
(sha256
|
||||
(base32 "1mrk0bzqcpfhsw6635qznn47nzfy9ps7wrhkpymswdfpw5mdsry5"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-cons-after
|
||||
'install 'post-install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(symlink "geiser-install.el"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/share/emacs/site-lisp/"
|
||||
"geiser-autoloads.el")))
|
||||
%standard-phases)))
|
||||
(inputs `(("guile" ,guile-2.0)
|
||||
("emacs" ,emacs)))
|
||||
(home-page "http://nongnu.org/geiser/")
|
||||
@@ -186,6 +202,7 @@ giving her access to live metadata.")
|
||||
(copy-file source target)
|
||||
(with-directory-excursion lisp-dir
|
||||
(parameterize ((%emacs emacs))
|
||||
(emacs-generate-autoloads ,name lisp-dir)
|
||||
(emacs-batch-eval '(byte-compile-file "paredit.el"))))))))
|
||||
(home-page "http://mumble.net/~campbell/emacs/paredit/")
|
||||
(synopsis "Emacs minor mode for editing parentheses")
|
||||
@@ -240,7 +257,13 @@ when typing parentheses directly or commenting out code line by line.")
|
||||
(emacs-substitute-variables "magit.el"
|
||||
("magit-git-executable" (string-append git "/bin/git"))
|
||||
("magit-gitk-executable" (string-append git:gui "/bin/gitk")))))
|
||||
%standard-phases))))
|
||||
(alist-cons-after
|
||||
'install 'post-install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(emacs-generate-autoloads
|
||||
,name (string-append (assoc-ref outputs "out")
|
||||
"/share/emacs/site-lisp/")))
|
||||
%standard-phases)))))
|
||||
(home-page "http://magit.github.io/")
|
||||
(synopsis "Emacs interface for the Git version control system")
|
||||
(description
|
||||
@@ -317,6 +340,7 @@ operations.")
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/share/emacs/site-lisp")
|
||||
(for-each delete-file '("ChangeLog" "ChangeLog.1"))
|
||||
(symlink "w3m-load.el" "w3m-autoloads.el")
|
||||
#t)))
|
||||
%standard-phases)))))
|
||||
(home-page "http://emacs-w3m.namazu.org/")
|
||||
@@ -359,9 +383,181 @@ operations.")
|
||||
(let ((wget (assoc-ref inputs "wget")))
|
||||
(emacs-substitute-variables "wget.el"
|
||||
("wget-command" (string-append wget "/bin/wget")))))
|
||||
%standard-phases))))
|
||||
(alist-cons-after
|
||||
'install 'post-install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(emacs-generate-autoloads
|
||||
"wget" (string-append (assoc-ref outputs "out")
|
||||
"/share/emacs/site-lisp/")))
|
||||
%standard-phases)))))
|
||||
(home-page "http://www.emacswiki.org/emacs/EmacsWget")
|
||||
(synopsis "Simple file downloader for Emacs based on wget")
|
||||
(description
|
||||
"Emacs-wget is an emacs interface for the wget file downloader.")
|
||||
(license gpl2+)))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Multimedia.
|
||||
;;;
|
||||
|
||||
(define-public emms
|
||||
(package
|
||||
(name "emms")
|
||||
(version "4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/emms/emms-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1q0n3iwva8bvai2rl9sm49sdjmk0wi7vajz4knz01l7g67nrp87l"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "Makefile"
|
||||
(("/usr/bin/install-info")
|
||||
;; No need to use 'install-info' since it would create a
|
||||
;; useless 'dir' file.
|
||||
"true")
|
||||
(("^INFODIR=.*")
|
||||
;; Install Info files to $out/share/info, not $out/info.
|
||||
"INFODIR := $(PREFIX)/share/info\n")
|
||||
(("/site-lisp/emms")
|
||||
;; Install directly in share/emacs/site-lisp, not in a
|
||||
;; sub-directory.
|
||||
"/site-lisp")
|
||||
(("^all: (.*)\n" _ rest)
|
||||
;; Build 'emms-print-metadata'.
|
||||
(string-append "all: " rest " emms-print-metadata\n"))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(guix build emacs-utils))
|
||||
#:imported-modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(guix build emacs-utils))
|
||||
|
||||
#:phases (alist-replace
|
||||
'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(vorbis (assoc-ref inputs "vorbis-tools"))
|
||||
(alsa (assoc-ref inputs "alsa-utils"))
|
||||
(mpg321 (assoc-ref inputs "mpg321"))
|
||||
(mp3info (assoc-ref inputs "mp3info")))
|
||||
;; Specify the installation directory.
|
||||
(substitute* "Makefile"
|
||||
(("PREFIX=.*$")
|
||||
(string-append "PREFIX := " out "\n")))
|
||||
|
||||
(setenv "SHELL" (which "sh"))
|
||||
(setenv "CC" "gcc")
|
||||
|
||||
;; Specify the absolute file names of the various
|
||||
;; programs so that everything works out-of-the-box.
|
||||
(with-directory-excursion "lisp"
|
||||
(emacs-substitute-variables
|
||||
"emms-player-mpg321-remote.el"
|
||||
("emms-player-mpg321-remote-command"
|
||||
(string-append mpg321 "/bin/mpg321")))
|
||||
(substitute* "emms-player-simple.el"
|
||||
(("\"ogg123\"")
|
||||
(string-append "\"" vorbis "/bin/ogg123\"")))
|
||||
(emacs-substitute-variables "emms-info-ogginfo.el"
|
||||
("emms-info-ogginfo-program-name"
|
||||
(string-append vorbis "/bin/ogginfo")))
|
||||
(emacs-substitute-variables "emms-info-libtag.el"
|
||||
("emms-info-libtag-program-name"
|
||||
(string-append out "/bin/emms-print-metadata")))
|
||||
(emacs-substitute-variables "emms-info-mp3info.el"
|
||||
("emms-info-mp3info-program-name"
|
||||
(string-append mp3info "/bin/mp3info")))
|
||||
(substitute* "emms-volume-amixer.el"
|
||||
(("\"amixer\"")
|
||||
(string-append "\"" alsa "/bin/amixer\"")))
|
||||
(substitute* "emms-tag-editor.el"
|
||||
(("\"mp3info\"")
|
||||
(string-append mp3info "/bin/mp3info"))))))
|
||||
(alist-cons-before
|
||||
'install 'pre-install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; The 'install' rule expects the target directory to
|
||||
;; exist.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(man1 (string-append out "/share/man/man1")))
|
||||
(mkdir-p man1)
|
||||
#t))
|
||||
(alist-cons-after
|
||||
'install 'post-install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(target (string-append
|
||||
out "/bin/emms-print-metadata")))
|
||||
(symlink "emms-auto.el"
|
||||
(string-append out "/share/emacs/site-lisp/"
|
||||
"emms-autoloads.el"))
|
||||
(mkdir-p (dirname target))
|
||||
(copy-file "src/emms-print-metadata" target)
|
||||
(chmod target #o555)))
|
||||
%standard-phases)))
|
||||
#:tests? #f))
|
||||
(native-inputs `(("emacs" ,emacs) ;for (guix build emacs-utils)
|
||||
("texinfo" ,texinfo)))
|
||||
(inputs `(("alsa-utils" ,alsa-utils)
|
||||
("vorbis-tools" ,vorbis-tools)
|
||||
("mpg321" ,mpg321)
|
||||
("taglib" ,taglib)
|
||||
("mp3info" ,mp3info)))
|
||||
(synopsis "Emacs Multimedia System")
|
||||
(description
|
||||
"EMMS is the Emacs Multimedia System. It is a small front-end which
|
||||
can control one of the supported external players. Thus, it supports
|
||||
whatever formats are supported by your music player. It also
|
||||
supports tagging and playlist management, all behind a clean and
|
||||
light user interface.")
|
||||
(home-page "http://www.gnu.org/software/emms/")
|
||||
(license gpl3+)))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Miscellaneous.
|
||||
;;;
|
||||
|
||||
(define-public bbdb
|
||||
(package
|
||||
(name "bbdb")
|
||||
(version "3.1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://savannah/bbdb/bbdb-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1gs16bbpiiy01w9pyg12868r57kx1v3hnw04gmqsmpc40l1hyy05"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; We don't want to build and install the PDF.
|
||||
'(substitute* "doc/Makefile.in"
|
||||
(("^doc_DATA = .*$")
|
||||
"doc_DATA =\n")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-cons-after
|
||||
'install 'post-install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Add an autoloads file with the right name for guix.el.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(site (string-append out "/share/emacs/site-lisp")))
|
||||
(with-directory-excursion site
|
||||
(symlink "bbdb-loaddefs.el" "bbdb-autoloads.el"))))
|
||||
%standard-phases)))
|
||||
(native-inputs `(("emacs" ,emacs)))
|
||||
(home-page "http://savannah.nongnu.org/projects/bbdb/")
|
||||
(synopsis "Contact management utility for Emacs")
|
||||
(description
|
||||
"BBDB is the Insidious Big Brother Database for GNU Emacs. It provides
|
||||
an address book for email and snail mail addresses, phone numbers and the
|
||||
like. It can be linked with various Emacs mail clients (Message and Mail
|
||||
mode, Rmail, Gnus, MH-E, and VM). BBDB is fully customizable.")
|
||||
(license gpl3+)))
|
||||
|
||||
+9
-19
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -27,14 +27,14 @@
|
||||
(define-public file
|
||||
(package
|
||||
(name "file")
|
||||
(version "5.19")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ftp.astron.com/pub/file/file-"
|
||||
version ".tar.gz"))
|
||||
(sha256 (base32
|
||||
"0z1sgrcfy6d285kj5izy1yypf371bjl3247plh9ppk0svaxv714l"))
|
||||
(patches (list (search-patch "file-CVE-2014-3587.patch")))))
|
||||
(version "5.22")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ftp.astron.com/pub/file/file-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"02zw14hw3gqlw91w2f2snbirvyrp7r83irvnnkjcb25q9kjaiqy4"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; When cross-compiling, this package depends upon a native install of
|
||||
@@ -50,13 +50,3 @@ of the file.")
|
||||
(license bsd-2)
|
||||
(home-page "http://www.darwinsys.com/file/")))
|
||||
|
||||
(define-public file-5.20 ;fix for CVE-2014-3710
|
||||
(package (inherit file)
|
||||
(version "5.20")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ftp.astron.com/pub/file/file-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0iyjs9z8kp43gz7gva4j67h4p0n53f7q8x3ibai9s01sp3xnphsv"))))))
|
||||
|
||||
@@ -28,21 +28,27 @@
|
||||
(define-public fish
|
||||
(package
|
||||
(name "fish")
|
||||
(version "2.1.0")
|
||||
(version "2.1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://fishshell.com/files/"
|
||||
version "/fish-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i7h3hx8iszli3d4kphw79sz9m07f2lc2c9hr9smdps5s7wpllmg"))))
|
||||
"096rhi911s3j618cvp8fj9pb4jniy3y6415jvjg8bhszsp1x7r5p"))
|
||||
(modules '((guix build utils)))
|
||||
;; Don't try to install /etc/fish/config.fish.
|
||||
(snippet
|
||||
'(substitute* "Makefile.in"
|
||||
((".*INSTALL.*sysconfdir.*fish.*") "")))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)))
|
||||
(inputs
|
||||
`(("ncurses" ,ncurses)))
|
||||
(arguments
|
||||
'(#:tests? #f)) ; no check target
|
||||
'(#:tests? #f ; no check target
|
||||
#:configure-flags '("--sysconfdir=/etc")))
|
||||
(synopsis "The friendly interactive shell")
|
||||
(description
|
||||
"Fish (friendly interactive shell) is a shell focused on interactive use,
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
(substitute* "makeinclude.in"
|
||||
(("/bin/sh") (which "sh"))))
|
||||
%standard-phases)))
|
||||
(home-page "https://www.fltk.org")
|
||||
(home-page "http://www.fltk.org")
|
||||
(synopsis "3D C++ GUI library")
|
||||
(description "FLTK is a C++ GUI toolkit providing modern GUI functionality
|
||||
without the bloat. It supports 3D graphics via OpenGL and its built-in GLUT
|
||||
|
||||
+78
-13
@@ -1,7 +1,8 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Joshua Grant <tadni@riseup.net>
|
||||
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -24,16 +25,15 @@
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module ((gnu packages base)
|
||||
#:select (tar))
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages pkg-config))
|
||||
|
||||
(define-public ttf-dejavu
|
||||
(define-public font-dejavu
|
||||
(package
|
||||
(name "ttf-dejavu")
|
||||
(name "font-dejavu")
|
||||
(version "2.34")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
@@ -97,9 +97,9 @@ provide serif, sans and monospaced variants.")
|
||||
(license:x11-style
|
||||
"http://dejavu-fonts.org/"))))
|
||||
|
||||
(define-public ttf-bitstream-vera
|
||||
(define-public font-bitstream-vera
|
||||
(package
|
||||
(name "ttf-bitstream-vera")
|
||||
(name "font-bitstream-vera")
|
||||
(version "1.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
@@ -143,17 +143,17 @@ provide serif, sans and monospaced variants.")
|
||||
(native-inputs `(("source" ,source)
|
||||
("tar" ,tar)
|
||||
("bzip2" ,bzip2)))
|
||||
(home-page "https://www-old.gnome.org/fonts/")
|
||||
(home-page "http://www.gnome.org/fonts/")
|
||||
(synopsis "Bitstream Vera sans-serif typeface")
|
||||
(description "Vera is a sans-serif typeface from Bitstream, Inc. This
|
||||
package provides the TrueType (TTF) files.")
|
||||
(license
|
||||
(license:x11-style
|
||||
"https://www-old.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"))))
|
||||
"http://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"))))
|
||||
|
||||
(define-public freefont-ttf
|
||||
(define-public font-gnu-freefont-ttf
|
||||
(package
|
||||
(name "freefont-ttf")
|
||||
(name "font-gnu-freefont-ttf")
|
||||
(version "20100919")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
@@ -203,9 +203,74 @@ package provides the TrueType (TTF) files.")
|
||||
10646/Unicode UCS (Universal Character Set).")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public terminus-font
|
||||
(define-public font-liberation
|
||||
(package
|
||||
(name "terminus-font")
|
||||
(name "font-liberation")
|
||||
(version "2.00.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://fedorahosted.org/releases/l/i/"
|
||||
"liberation-fonts/liberation-fonts-ttf-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
(let ((tar (string-append (assoc-ref %build-inputs "tar")
|
||||
"/bin/tar"))
|
||||
(PATH (string-append (assoc-ref %build-inputs "gzip")
|
||||
"/bin"))
|
||||
(font-dir (string-append %output "/share/fonts/truetype"))
|
||||
(doc-dir (string-append %output "/share/doc/" ,name)))
|
||||
(setenv "PATH" PATH)
|
||||
(system* tar "xvf" (assoc-ref %build-inputs "source"))
|
||||
(mkdir-p font-dir)
|
||||
(mkdir-p doc-dir)
|
||||
(chdir (string-append "liberation-fonts-ttf-" ,version))
|
||||
(for-each (lambda (ttf)
|
||||
(copy-file ttf
|
||||
(string-append font-dir "/"
|
||||
(basename ttf))))
|
||||
(find-files "." "\\.ttf$"))
|
||||
(for-each (lambda (doc)
|
||||
(copy-file doc
|
||||
(string-append doc-dir "/"
|
||||
(basename doc))))
|
||||
'("AUTHORS" "ChangeLog" "LICENSE" "README" "TODO"))))))
|
||||
(native-inputs
|
||||
`(("source" ,source)
|
||||
("tar" ,tar)
|
||||
("gzip" ,gzip)))
|
||||
(home-page "https://fedorahosted.org/liberation-fonts/")
|
||||
(synopsis
|
||||
"Fonts compatible with Arial, Times New Roman, and Courier New")
|
||||
(description
|
||||
"The Liberation font family aims at metric compatibility with
|
||||
Arial, Times New Roman, and Courier New.
|
||||
|
||||
There are three sets:
|
||||
|
||||
- Sans (a substitute for Arial, Albany, Helvetica, Nimbus Sans L, and
|
||||
Bitstream Vera Sans);
|
||||
|
||||
- Serif (a substitute for Times New Roman, Thorndale, Nimbus Roman, and
|
||||
Bitstream Vera Serif);
|
||||
|
||||
- Mono (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L,
|
||||
and Bitstream Vera Sans Mono).
|
||||
|
||||
The Liberation Fonts are sponsored by Red Hat.")
|
||||
(license license:silofl1.1)))
|
||||
|
||||
(define-public font-terminus
|
||||
(package
|
||||
(name "font-terminus")
|
||||
(version "4.39")
|
||||
(source
|
||||
(origin
|
||||
|
||||
+18
-10
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -75,18 +75,18 @@ anti-aliased glyph bitmap generation with 256 gray levels.")
|
||||
(define-public fontconfig
|
||||
(package
|
||||
(name "fontconfig")
|
||||
(version "2.10.93")
|
||||
(version "2.11.92")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.freedesktop.org/software/fontconfig/release/fontconfig-"
|
||||
version ".tar.bz2"))
|
||||
(sha256 (base32
|
||||
"172j5vsgx2xplsk5mrxrspbn5lrswq6gnxkxjgcrx0j8i0kiz47a"))))
|
||||
"18r45dcnaj93izwfr082qiwg8ka7ll6j0c9yf1slblm542d5pmd9"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("expat" ,expat)
|
||||
("freetype" ,freetype)
|
||||
("gs-fonts" ,gs-fonts)))
|
||||
(propagated-inputs `(("expat" ,expat)
|
||||
("freetype" ,freetype)))
|
||||
(inputs `(("gs-fonts" ,gs-fonts)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(arguments
|
||||
@@ -147,10 +147,19 @@ X11-system or any other graphical user interface.")
|
||||
(version "2.5.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
(uri (list
|
||||
(string-append
|
||||
"http://scripts.sil.org/svn-view/teckit/TAGS/TECkit_"
|
||||
(string-map (lambda (x) (if (char=? x #\.) #\_ x)) version)
|
||||
".tar.gz"))
|
||||
".tar.gz")
|
||||
"http://pkgs.fedoraproject.org/repo/pkgs/teckit/TECkit_2_5_1.tar.gz/4913f71f0f42bfd9cf8f161688b35dea/TECkit_2_5_1.tar.gz"
|
||||
;; This used to be the canonical URL but it vanished.
|
||||
;; See <http://bugs.gnu.org/19600>.
|
||||
;; (string-append
|
||||
;; "http://scripts.sil.org/svn-view/teckit/TAGS/TECkit_"
|
||||
;; (string-map (lambda (x) (if (char=? x #\.) #\_ x)) version)
|
||||
;; ".tar.gz")
|
||||
))
|
||||
(sha256 (base32
|
||||
"0fjiwvic8mdxpkyccfp7zh26y9xnvkp0skqbyfkrjiacd191k82r"))
|
||||
(patches (list (search-patch "teckit-cstdio.patch")))))
|
||||
@@ -272,8 +281,7 @@ smooth contours with constant curvature at the spline joins.")
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("libtool-bin" ,libtool "bin")))
|
||||
("libtool" ,libtool)))
|
||||
(arguments
|
||||
`(#:phases (alist-cons-before
|
||||
'configure 'bootstrap
|
||||
|
||||
@@ -27,14 +27,14 @@
|
||||
(define-public freeipmi
|
||||
(package
|
||||
(name "freeipmi")
|
||||
(version "1.4.5")
|
||||
(version "1.4.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/freeipmi/freeipmi-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"033zakrk3kvi4y41kslicr90b3yb2kj052cl6nbja7ybn70y9nkz"))))
|
||||
"06smdsri1v5v2smrd3jxq3n135x7cx0npcimc37lb144gzgyk9wz"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("readline" ,readline) ("libgcrypt" ,libgcrypt)))
|
||||
|
||||
+52
-3
@@ -17,7 +17,7 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages ftp)
|
||||
#:use-module ((guix licenses) #:select (gpl3+))
|
||||
#:use-module ((guix licenses) #:select (gpl3+ clarified-artistic))
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
@@ -30,14 +30,14 @@
|
||||
(define-public lftp
|
||||
(package
|
||||
(name "lftp")
|
||||
(version "4.4.15")
|
||||
(version "4.6.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://lftp.yar.ru/ftp/lftp-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0s38vc2ij869dwx3i1c7sk96mqv0hknf3cqf86av59rqnix0px3m"))))
|
||||
"1grmp8zg7cjgjinz66mrh53whigkqzl90nlxj05hapnhk3ns3vni"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
@@ -54,3 +54,52 @@ uses the Readline library for input. It has bookmarks, a built-in mirror
|
||||
command, and can transfer several files in parallel. It was designed with
|
||||
reliability in mind.")
|
||||
(license gpl3+)))
|
||||
|
||||
(define-public ncftp
|
||||
(package
|
||||
(name "ncftp")
|
||||
(version "3.2.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ftp.ncftp.com/ncftp/ncftp-"
|
||||
version "-src.tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hlx12i0lwi99qsrx7nccf4nvwjj2gych4yks5y179b1ax0y5sxl"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Use the right 'rm' and 'ls'.
|
||||
(substitute* (cons "configure"
|
||||
(find-files "."
|
||||
"^(Makefile\\.in|.*\\.sh)$"))
|
||||
(("/bin/(rm|ls)" _ command)
|
||||
command))
|
||||
|
||||
;; This is free software, avoid any confusion.
|
||||
(substitute* (find-files "." "\\.c$")
|
||||
(("a freeware program")
|
||||
"free software"))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-replace
|
||||
'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; This is an old 'configure' script that doesn't
|
||||
;; understand variables passed as arguments.
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(setenv "CONFIG_SHELL" (which "sh"))
|
||||
(setenv "SHELL" (which "sh"))
|
||||
(zero? (system* "./configure"
|
||||
(string-append "--prefix=" out)))))
|
||||
%standard-phases)
|
||||
#:tests? #f)) ;there are no tests
|
||||
(inputs `(("ncurses" ,ncurses)))
|
||||
(home-page "http://www.ncftp.com/ncftp/")
|
||||
(synopsis "Command-line File Transfer Protocol (FTP) client")
|
||||
(description
|
||||
"NcFTP Client (or just NcFTP) is a set of command-line programs to access
|
||||
File Transfer Protocol (FTP) servers. This includes 'ncftp', an interactive
|
||||
FTP browser, as well as non-interactive commands such as 'ncftpput' and
|
||||
'ncftpget'.")
|
||||
(license clarified-artistic)))
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages fvwm)
|
||||
#:use-module ((guix licenses) #:select (gpl2+))
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages fribidi)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg))
|
||||
|
||||
(define-public fvwm
|
||||
(package
|
||||
(name "fvwm")
|
||||
(version "2.6.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"ftp://ftp.fvwm.org/pub/fvwm/version-2/fvwm-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ks8igvmzm0m0sra05k8xzc8vkqy3gv1qskl6davw1irqnarjm11"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("pkg-config" ,pkg-config)
|
||||
("xsltproc" ,libxslt)))
|
||||
(inputs
|
||||
`(("fribidi" ,fribidi)
|
||||
("libpng" ,libpng)
|
||||
("librsvg" ,librsvg)
|
||||
("libxcursor" ,libxcursor)
|
||||
("libxext" ,libxext)
|
||||
("libxft" ,libxft)
|
||||
("libxinerama" ,libxinerama)
|
||||
("libxpm" ,libxpm)
|
||||
("libxt" ,libxt)
|
||||
("readline" ,readline)))
|
||||
(synopsis "Virtual window manager for X11")
|
||||
(description
|
||||
"FVWM is an extremely powerful ICCCM-compliant multiple virtual desktop
|
||||
window manager for the X Window system.")
|
||||
(home-page "http://www.fvwm.org/")
|
||||
(license gpl2+)))
|
||||
@@ -0,0 +1,85 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Tomáš Čech <sleep_walker@suse.cz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages game-development)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages compression))
|
||||
|
||||
(define-public bullet
|
||||
(package
|
||||
(name "bullet")
|
||||
(version "2.82-r2704")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bullet.googlecode.com/files/bullet-"
|
||||
version ".tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1lnfksxa9b1slyfcxys313ymsllvbsnxh9np06azkbgpfvmwkr37"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments '(#:tests? #f ; no 'test' target
|
||||
#:configure-flags (list
|
||||
(string-append
|
||||
"-DCMAKE_CXX_FLAGS=-fPIC "
|
||||
(or (getenv "CXXFLAGS") "")))))
|
||||
(home-page "http://bulletphysics.org/")
|
||||
(synopsis "3D physics engine library")
|
||||
(description
|
||||
"Bullet is a physics engine library usable for collision detection. It
|
||||
is used in some video games and movies.")
|
||||
(license license:zlib)))
|
||||
|
||||
(define-public tiled
|
||||
(package
|
||||
(name "tiled")
|
||||
(version "0.11.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/bjorn/tiled/archive/v"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"03a15vbzjfwc8dpifbjvd0gnr208mzmdkgs2nlc8zq6z0a4h4jqd"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("qt" ,qt)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(alist-replace
|
||||
'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(system* "qmake"
|
||||
(string-append "PREFIX=" out))))
|
||||
%standard-phases)))
|
||||
(home-page "http://www.mapeditor.org/")
|
||||
(synopsis "Tile map editor")
|
||||
(description
|
||||
"Tiled is a general purpose tile map editor. It is meant to be used for
|
||||
editing maps of any tile-based game, be it an RPG, a platformer or a Breakout
|
||||
clone.")
|
||||
|
||||
;; As noted in 'COPYING', part of it is under GPLv2+, while the rest is
|
||||
;; under BSD-2.
|
||||
(license license:gpl2+)))
|
||||
+160
-51
@@ -5,7 +5,8 @@
|
||||
;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com>
|
||||
;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net>
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2014, 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -59,6 +60,9 @@
|
||||
#:use-module (gnu packages xiph)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages video)
|
||||
#:use-module (gnu packages which)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
@@ -81,12 +85,13 @@
|
||||
("readline" ,readline)
|
||||
("gtk+" ,gtk+-2)
|
||||
("mesa" ,mesa)
|
||||
("glu" ,glu)
|
||||
("gtkglext" ,gtkglext)
|
||||
("sqlite" ,sqlite)
|
||||
("libcanberra" ,libcanberra)))
|
||||
(native-inputs `(("python-2" ,python-2)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://gnubg.org")
|
||||
(home-page "http://gnubg.org")
|
||||
(synopsis "Backgammon game")
|
||||
(description "The GNU backgammon application can be used for playing, analyzing and
|
||||
teaching the game. It has an advanced evaluation engine based on artificial
|
||||
@@ -110,6 +115,7 @@ representation of the playing board.")
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("gtk+" ,gtk+-2)
|
||||
("mesa" ,mesa)
|
||||
("glu" ,glu)
|
||||
("libx11" ,libx11)
|
||||
("guile" ,guile-2.0)
|
||||
("gtkglext" ,gtkglext)))
|
||||
@@ -168,7 +174,8 @@ scriptable with Guile.")
|
||||
(let ((prefix (assoc-ref outputs "out")))
|
||||
;; Create directories that the makefile assumes exist.
|
||||
(mkdir-p (string-append prefix "/bin"))
|
||||
(mkdir-p (string-append prefix "/share/applications"))))
|
||||
(mkdir-p (string-append prefix "/share/applications"))
|
||||
(mkdir-p (string-append prefix "/share/pixmaps"))))
|
||||
;; No configure script.
|
||||
(alist-delete 'configure %standard-phases))))
|
||||
#:tests? #f)) ;; No check target.
|
||||
@@ -207,6 +214,7 @@ that beneath its ruins lay buried an ancient evil.")
|
||||
("sdl-image" ,sdl-image)
|
||||
("sdl-mixer" ,sdl-mixer)
|
||||
("mesa" ,mesa)
|
||||
("glu" ,glu)
|
||||
("libpng" ,libpng)
|
||||
("boost" ,boost)))
|
||||
(arguments
|
||||
@@ -278,7 +286,7 @@ a C library, so they can easily be integrated into other programs.")
|
||||
(string-append "--prefix=" out)))))
|
||||
%standard-phases)))
|
||||
(inputs `(("ncurses" ,ncurses)))
|
||||
(home-page "http://wwww.asty.org/cmatrix")
|
||||
(home-page "http://www.asty.org/cmatrix")
|
||||
(synopsis "Simulate the display from \"The Matrix\"")
|
||||
(description "CMatrix simulates the display from \"The Matrix\" and is
|
||||
based on the screensaver from the movie's website. It works with terminal
|
||||
@@ -299,7 +307,7 @@ asynchronously and at a user-defined speed.")
|
||||
(base32
|
||||
"1jckpg1qi1vjr3pqs0dnip3rmn0mgklx63xflrpqiv3cx2qlz8kn"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://wwww.gnu.org/software/chess")
|
||||
(home-page "http://www.gnu.org/software/chess")
|
||||
(synopsis "Full chess implementation")
|
||||
(description "GNU Chess is a chess engine. It allows you to compete
|
||||
against the computer in a game of chess, either through the default terminal
|
||||
@@ -512,40 +520,6 @@ alternative layouts Dvorak and Colemak, as well as for the numpad. Tutorials
|
||||
are primarily in English, however some in other languages are provided.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public tiled
|
||||
(package
|
||||
(name "tiled")
|
||||
(version "0.10.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/bjorn/tiled/archive/v"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0p4p3lv4nw11fkfvvyjirb93r2x4w2rrc2w650gl2k57k92jpiij"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("qt" ,qt)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(alist-replace
|
||||
'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(system* "qmake"
|
||||
(string-append "PREFIX=" out))))
|
||||
%standard-phases)))
|
||||
(home-page "http://www.mapeditor.org/")
|
||||
(synopsis "Tile map editor")
|
||||
(description
|
||||
"Tiled is a general purpose tile map editor. It is meant to be used for
|
||||
editing maps of any tile-based game, be it an RPG, a platformer or a Breakout
|
||||
clone.")
|
||||
|
||||
;; As noted in 'COPYING', part of it is under GPLv2+, while the rest is
|
||||
;; under BSD-2.
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public openal
|
||||
(package
|
||||
(name "openal")
|
||||
@@ -606,14 +580,21 @@ buffers, and audio capture.")
|
||||
(and (zero? (system* "unzip" source))
|
||||
;; The actual source is buried a few directories deep.
|
||||
(chdir "irrlicht-1.8.1/source/Irrlicht/")))
|
||||
;; No configure script
|
||||
(alist-delete 'configure %standard-phases)))
|
||||
(alist-cons-after
|
||||
'unpack 'apply-patch/mesa-10-fix
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(zero? (system* "patch" "--force" "-p3" "-i"
|
||||
(assoc-ref inputs "patch/mesa-10-fix"))))
|
||||
;; No configure script
|
||||
(alist-delete 'configure %standard-phases))))
|
||||
#:tests? #f ; no check target
|
||||
#:make-flags '("CC=gcc" "sharedlib")))
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)))
|
||||
`(("patch/mesa-10-fix" ,(search-patch "irrlicht-mesa-10.patch"))
|
||||
("unzip" ,unzip)))
|
||||
(inputs
|
||||
`(("mesa" ,mesa)))
|
||||
`(("mesa" ,mesa)
|
||||
("glu" ,glu)))
|
||||
(synopsis "3D game engine written in C++")
|
||||
(description
|
||||
"The Irrlicht Engine is a high performance realtime 3D engine written in
|
||||
@@ -626,7 +607,7 @@ for common mesh file formats, and collision detection.")
|
||||
(define minetest-data
|
||||
(package
|
||||
(name "minetest-data")
|
||||
(version "0.4.10")
|
||||
(version "0.4.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -634,7 +615,7 @@ for common mesh file formats, and collision detection.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09mr71kl7mf4ihszqz1vnwk814p7fvqknad150iic2340a7qzf0i"))))
|
||||
"0hzb27srv6f2j84dpxx2p0p0aaq9vdp5jvbrfpklb5q5ssdjxvc6"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs
|
||||
`(("source" ,source)
|
||||
@@ -666,7 +647,7 @@ for common mesh file formats, and collision detection.")
|
||||
(define-public minetest
|
||||
(package
|
||||
(name "minetest")
|
||||
(version "0.4.10")
|
||||
(version "0.4.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -674,10 +655,7 @@ for common mesh file formats, and collision detection.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xxv0g83iqszjgwnbdcbsprqg76cb6jnbsh5qhm7lcwx4wy2y2k2"))
|
||||
;; This patch will be included in future upstream releases.
|
||||
;; See: https://github.com/minetest/minetest/commit/fd5eaae2babb322f8a3e2acab55a12e218814c8e
|
||||
(patches (list (search-patch "minetest-subgame-env-var.patch")))))
|
||||
"0h223svzkvp63b77nqfxy7k8whw4543gahs3kxd3x4myi5ax5z5f"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
@@ -705,7 +683,7 @@ for common mesh file formats, and collision detection.")
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "MINETEST_SUBGAME_PATH")
|
||||
(directories '("share/minetest/games")))))
|
||||
(files '("share/minetest/games")))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
@@ -733,3 +711,134 @@ single player. Mods and texture packs allow players to personalize the game
|
||||
in different ways.")
|
||||
(home-page "http://minetest.net")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define glkterm
|
||||
(package
|
||||
(name "glkterm")
|
||||
(version "1.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.ifarchive.org/if-archive/programming/"
|
||||
"glk/implementations/glkterm-104.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zlj9nlnkdlvgbiliczinirqygiq8ikg5hzh5vgcmnpg9pvnwga7"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs `(("ncurses" ,ncurses))) ; required by Make.glkterm
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
#:phases
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(inc (string-append out "/include")))
|
||||
(mkdir-p inc)
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(copy-file file (string-append inc "/" file)))
|
||||
'("glk.h" "glkstart.h" "gi_blorb.h" "gi_dispa.h" "Make.glkterm"))
|
||||
(mkdir (string-append out "/lib"))
|
||||
(copy-file "libglkterm.a" (string-append out "/lib/libglkterm.a"))))
|
||||
(alist-delete 'configure %standard-phases))))
|
||||
(home-page "http://www.eblong.com/zarf/glk/")
|
||||
(synopsis "Curses Implementation of the Glk API")
|
||||
(description
|
||||
"Glk defines a portable API for applications with text UIs. It was
|
||||
primarily designed for interactive fiction, but it should be suitable for many
|
||||
interactive text utilities, particularly those based on a command line.
|
||||
This is an implementation of the Glk library which runs in a terminal window,
|
||||
using the curses.h library for screen control.")
|
||||
(license (license:fsf-free "file://README"))))
|
||||
|
||||
(define-public glulxe
|
||||
(package
|
||||
(name "glulxe")
|
||||
(version "0.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.ifarchive.org/if-archive/programming/"
|
||||
"glulx/interpreters/glulxe/glulxe-052.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"19iw6kl8ncqcy9pv4gsqfh3xsa1n94zd234rqavvmxccnf3nj19g"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("glk" ,glkterm)))
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
#:make-flags
|
||||
(let* ((glk (assoc-ref %build-inputs "glk")))
|
||||
(list (string-append "GLKINCLUDEDIR=" glk "/include")
|
||||
(string-append "GLKLIBDIR=" glk "/lib")
|
||||
(string-append "GLKMAKEFILE=" "Make.glkterm")))
|
||||
#:phases
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
|
||||
(mkdir-p bin)
|
||||
(copy-file "glulxe" (string-append bin "/glulxe"))))
|
||||
(alist-delete 'configure %standard-phases))))
|
||||
(home-page "http://www.eblong.com/zarf/glulx/")
|
||||
(synopsis "Interpreter for Glulx VM")
|
||||
(description
|
||||
"Glulx is a 32-bit portable virtual machine intended for writing and
|
||||
playing interactive fiction. It was designed by Andrew Plotkin to relieve
|
||||
some of the restrictions in the venerable Z-machine format. This is the
|
||||
reference interpreter, using Glk API.")
|
||||
(license (license:fsf-free "file://README"))))
|
||||
|
||||
(define-public retroarch
|
||||
(package
|
||||
(name "retroarch")
|
||||
(version "1.0.0.3-beta")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/libretro/RetroArch/archive/"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1iqcrb076xiih20sk8n1w79xsp4fb8pj4vkmdc1xn562h56y4nxx"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no tests
|
||||
#:phases
|
||||
(alist-replace
|
||||
'configure
|
||||
(lambda _
|
||||
(substitute* "qb/qb.libs.sh"
|
||||
(("/bin/true") (which "true")))
|
||||
(zero? (system*
|
||||
"./configure"
|
||||
(string-append "--prefix=" %output)
|
||||
(string-append "--global-config-dir=" %output "/etc"))))
|
||||
%standard-phases)))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("ffmpeg" ,ffmpeg)
|
||||
("freetype" ,freetype)
|
||||
("libxinerama" ,libxinerama)
|
||||
("libxkbcommon" ,libxkbcommon)
|
||||
("libxml2" ,libxml2)
|
||||
("libxv" ,libxv)
|
||||
("mesa" ,mesa)
|
||||
("openal" ,openal)
|
||||
("pulseaudio" ,pulseaudio)
|
||||
("python" ,python)
|
||||
("sdl" ,sdl2)
|
||||
("udev" ,eudev)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("which" ,which)))
|
||||
(home-page "http://www.libretro.com/")
|
||||
(synopsis "Reference frontend for the libretro API")
|
||||
(description
|
||||
"Libretro is a simple but powerful development interface that allows for
|
||||
the easy creation of emulators, games and multimedia applications that can plug
|
||||
straight into any libretro-compatible frontend. RetroArch is the official
|
||||
reference frontend for the libretro API, currently used by most as a modular
|
||||
multi-system game/emulator system.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
+13
-11
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -55,16 +55,18 @@
|
||||
'((substitute* "extension/Makefile.in"
|
||||
(("^.*: check-for-shared-lib-support" match)
|
||||
(string-append "### " match))))
|
||||
'())
|
||||
|
||||
;; XXX FIXME prerelease libtool fails on MIPS in the
|
||||
;; absence of /usr/bin/file.
|
||||
,@(if (equal? "mips64el-linux" (or (%current-target-system)
|
||||
(%current-system)))
|
||||
'((substitute* "extension/configure"
|
||||
(("/usr/bin/file") (which "file"))))
|
||||
'())))
|
||||
%standard-phases)))
|
||||
|
||||
(alist-cons-before
|
||||
'check 'install-locales
|
||||
(lambda _
|
||||
;; A bunch of tests require the availability of a UTF-8
|
||||
;; locale and otherwise fail. Give them what they want.
|
||||
(setenv "LOCPATH" (getcwd))
|
||||
(zero? (system* "localedef" "--no-archive"
|
||||
"--prefix" (getcwd) "-i" "en_US"
|
||||
"-f" "UTF-8" "./en_US.UTF-8")))
|
||||
%standard-phases))))
|
||||
(inputs `(("libsigsegv" ,libsigsegv)
|
||||
|
||||
,@(if (%current-target-system)
|
||||
|
||||
+110
-13
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -25,9 +26,11 @@
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module ((gnu packages perl) #:select (perl))
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (ice-9 regex))
|
||||
|
||||
@@ -35,7 +38,7 @@
|
||||
;; Base URL for GCC's infrastructure.
|
||||
"ftp://gcc.gnu.org/pub/gcc/infrastructure/")
|
||||
|
||||
(define-public (gcc-configure-flags-for-triplet target)
|
||||
(define (gcc-configure-flags-for-triplet target)
|
||||
"Return a list of additional GCC `configure' flags for TARGET, a GNU triplet.
|
||||
|
||||
The purpose of this procedure is to translate extended GNU triplets---e.g.,
|
||||
@@ -45,8 +48,17 @@ where the OS part is overloaded to denote a specific ABI---into GCC
|
||||
;; Triplets recognized by glibc as denoting the N64 ABI; see
|
||||
;; ports/sysdeps/mips/preconfigure.
|
||||
'("--with-abi=64"))
|
||||
|
||||
((string-match "^arm.*-gnueabihf$" target)
|
||||
'("--with-arch=armv7-a"
|
||||
"--with-float=hard"
|
||||
"--with-mode=thumb"
|
||||
|
||||
;; See <https://wiki.debian.org/ArmHardFloatPort/VfpComparison#FPU>
|
||||
"--with-fpu=vfpv3-d16"))
|
||||
|
||||
(else
|
||||
;; TODO: Add `armel.*gnueabi', `hf', etc.
|
||||
;; TODO: Add `arm.*-gnueabi', etc.
|
||||
'())))
|
||||
|
||||
(define-public gcc-4.7
|
||||
@@ -101,11 +113,11 @@ where the OS part is overloaded to denote a specific ABI---into GCC
|
||||
"/include")
|
||||
"--without-headers")))
|
||||
|
||||
;; When cross-compiling GCC, pass the right options for the
|
||||
;; target triplet.
|
||||
(or (and=> (%current-target-system)
|
||||
gcc-configure-flags-for-triplet)
|
||||
'())
|
||||
;; Pass the right options for the target triplet.
|
||||
(let ((triplet
|
||||
(or (%current-target-system)
|
||||
(nix-system->gnu-triplet (%current-system)))))
|
||||
(gcc-configure-flags-for-triplet triplet))
|
||||
|
||||
(maybe-target-tools))))))
|
||||
(package
|
||||
@@ -178,9 +190,19 @@ where the OS part is overloaded to denote a specific ABI---into GCC
|
||||
;; The following is not performed for `--without-headers'
|
||||
;; cross-compiler builds.
|
||||
|
||||
;; Join multi-line definitions of GLIBC_DYNAMIC_LINKER* into a
|
||||
;; single line, to allow the next step to work properly.
|
||||
(for-each
|
||||
(lambda (x)
|
||||
(substitute* (find-files "gcc/config"
|
||||
"^linux(64|-elf|-eabi)?\\.h$")
|
||||
(("(#define GLIBC_DYNAMIC_LINKER.*)\\\\\n$" _ line)
|
||||
line)))
|
||||
'(1 2 3))
|
||||
|
||||
;; Fix the dynamic linker's file name.
|
||||
(substitute* (find-files "gcc/config"
|
||||
"^linux(64|-elf)?\\.h$")
|
||||
"^linux(64|-elf|-eabi)?\\.h$")
|
||||
(("#define GLIBC_DYNAMIC_LINKER([^ ]*).*$" _ suffix)
|
||||
(format #f "#define GLIBC_DYNAMIC_LINKER~a \"~a\"~%"
|
||||
suffix
|
||||
@@ -197,6 +219,11 @@ where the OS part is overloaded to denote a specific ABI---into GCC
|
||||
;; libgcc_s.so when pthread_cancel support is needed, but
|
||||
;; having it in the application's RUNPATH isn't enough; see
|
||||
;; <http://sourceware.org/ml/libc-help/2013-11/msg00023.html>.)
|
||||
;;
|
||||
;; NOTE: The '-lgcc_s' added below needs to be removed in a
|
||||
;; later phase of %gcc-static. If you change the string
|
||||
;; below, make sure to update the relevant code in
|
||||
;; %gcc-static package as needed.
|
||||
(format #f "#define GNU_USER_TARGET_LIB_SPEC \
|
||||
\"-L~a/lib %{!static:-rpath=~a/lib %{!static-libgcc:-rpath=~a/lib64 -rpath=~a/lib -lgcc_s}} \" ~a"
|
||||
libc libc libdir libdir suffix))
|
||||
@@ -245,10 +272,10 @@ where the OS part is overloaded to denote a specific ABI---into GCC
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "CPATH")
|
||||
(directories '("include")))
|
||||
(files '("include")))
|
||||
(search-path-specification
|
||||
(variable "LIBRARY_PATH")
|
||||
(directories '("lib" "lib64")))))
|
||||
(files '("lib" "lib64")))))
|
||||
|
||||
(properties `((gcc-libc . ,(assoc-ref inputs "libc"))))
|
||||
(synopsis "GNU Compiler Collection")
|
||||
@@ -261,15 +288,14 @@ Go. It also includes runtime support libraries for these languages.")
|
||||
|
||||
(define-public gcc-4.8
|
||||
(package (inherit gcc-4.7)
|
||||
(version "4.8.3")
|
||||
(version "4.8.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gcc/gcc-"
|
||||
version "/gcc-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"07hg10zs7gnqz58my10ch0zygizqh0z0bz6pv4pgxx45n48lz3ka"))
|
||||
(patches (list (search-patch "gcc-fix-pr61801.patch")))))))
|
||||
"15c6gwm6dzsaagamxkak5smdkf1rdfbqqjs9jdbrp3lbg4ism02a"))))))
|
||||
|
||||
(define-public gcc-4.9
|
||||
(package (inherit gcc-4.7)
|
||||
@@ -312,6 +338,77 @@ Go. It also includes runtime support libraries for these languages.")
|
||||
;; a cyclic dependency. <http://debbugs.gnu.org/18101>
|
||||
#:separate-lib-output? #f))
|
||||
|
||||
(define-public gcj-4.8
|
||||
(package (inherit gcc-4.8)
|
||||
(name "gcj")
|
||||
(inputs
|
||||
`(("fastjar" ,fastjar)
|
||||
("perl" ,perl)
|
||||
("javac.in" ,(search-path %load-path
|
||||
"gnu/packages/javac.in"))
|
||||
("ecj-bootstrap" ,ecj-bootstrap-4.8)
|
||||
,@(package-inputs gcc-4.8)))
|
||||
;; Suppress the separate "lib" output, because otherwise the
|
||||
;; "lib" and "out" outputs would refer to each other, creating
|
||||
;; a cyclic dependency. <http://debbugs.gnu.org/18101>
|
||||
(outputs
|
||||
(delete "lib" (package-outputs gcc-4.8)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments `(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 regex)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
,@(package-arguments gcc-4.8))
|
||||
((#:configure-flags flags)
|
||||
`(let ((ecj (assoc-ref %build-inputs "ecj-bootstrap")))
|
||||
`("--enable-java-home"
|
||||
"--enable-gjdoc"
|
||||
,(string-append "--with-ecj-jar=" ecj)
|
||||
"--enable-languages=java"
|
||||
,@(remove (cut string-match "--enable-languages.*" <>)
|
||||
,flags))))
|
||||
((#:phases phases)
|
||||
`(alist-cons-after
|
||||
'install 'install-javac-and-javap-wrappers
|
||||
(lambda _
|
||||
(let* ((javac (assoc-ref %build-inputs "javac.in"))
|
||||
(ecj (assoc-ref %build-inputs "ecj-bootstrap"))
|
||||
(gcj (assoc-ref %outputs "out"))
|
||||
(gcjbin (string-append gcj "/bin/"))
|
||||
(jvm (string-append gcj "/lib/jvm/"))
|
||||
(target (string-append jvm "/bin/javac")))
|
||||
|
||||
(symlink (string-append gcjbin "jcf-dump")
|
||||
(string-append jvm "/bin/javap"))
|
||||
|
||||
(copy-file ecj (string-append gcj "/share/java/ecj.jar"))
|
||||
|
||||
;; Create javac wrapper from the template javac.in by
|
||||
;; replacing the @VARIABLES@ with paths.
|
||||
(copy-file javac target)
|
||||
(patch-shebang target)
|
||||
(substitute* target
|
||||
(("@JAVA@")
|
||||
(string-append jvm "/bin/java"))
|
||||
(("@ECJ_JAR@")
|
||||
(string-append gcj "/share/java/ecj.jar"))
|
||||
(("@RT_JAR@")
|
||||
(string-append jvm "/jre/lib/rt.jar"))
|
||||
(("@TOOLS_JAR@")
|
||||
(string-append jvm "/lib/tools.jar")))
|
||||
(chmod target #o755)
|
||||
#t))
|
||||
,phases))))))
|
||||
|
||||
(define ecj-bootstrap-4.8
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "ftp://sourceware.org/pub/java/ecj-4.8.jar")
|
||||
(sha256
|
||||
(base32
|
||||
"10fpqfbdzff1zcbxzh66xc8xbij9saykcj4xzm19wk9p3n7i5zcq"))))
|
||||
|
||||
(define-public gcc-objc-4.8
|
||||
(custom-gcc gcc-4.8 "gcc-objc" '("objc")))
|
||||
|
||||
|
||||
+10
-12
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -24,6 +25,7 @@
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module ((guix licenses) #:select (bsd-style)))
|
||||
|
||||
(define-public gd
|
||||
@@ -31,25 +33,21 @@
|
||||
(name "gd")
|
||||
|
||||
;; Note: With libgd.org now pointing to bitbucket.org, genuine old
|
||||
;; tarballs are no longer available. Notably, versions 2.0.34 and .35 are
|
||||
;; tarballs are no longer available. Notably, versions 2.0.x are
|
||||
;; missing.
|
||||
(version "2.0.33")
|
||||
(version "2.1.1")
|
||||
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri "https://bitbucket.org/libgd/gd-libgd/get/GD_2_0_33.tar.gz")
|
||||
(uri (string-append
|
||||
"https://bitbucket.org/libgd/gd-libgd/downloads/"
|
||||
"libgd-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yrbx8mj9pykyzm0zl1q86xlkdvkajcsf5jmg688vhw9yc5wmbbw"))
|
||||
(patches
|
||||
(list (search-patch "gd-mips64-deplibs-fix.patch")))))
|
||||
"11djy9flzxczphigqgp7fbbblbq35gqwwhn9xfcckawlapa1xnls"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-cons-after
|
||||
'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "src"))
|
||||
%standard-phases)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("freetype" ,freetype)
|
||||
("libpng" ,libpng)
|
||||
|
||||
@@ -35,14 +35,14 @@
|
||||
(define-public gdb
|
||||
(package
|
||||
(name "gdb")
|
||||
(version "7.8.1")
|
||||
(version "7.8.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gdb/gdb-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0dfwmcgvlfyvgs8cwslbk42291qwxyriwa3l6j645x46hfsj4xs9"))))
|
||||
"11a4fj1vpsny71kz7xqqbqk3kgzbs5cfjj3z9gm0hpvxfkam8nb0"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; FIXME "make check" fails on single-processor systems.
|
||||
|
||||
@@ -35,14 +35,14 @@
|
||||
(define-public gnu-gettext
|
||||
(package
|
||||
(name "gettext")
|
||||
(version "0.19.3")
|
||||
(version "0.19.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gettext/gettext-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xmkxviqnq60h4wmh3bi6b1zkc9qsk3l1lv91k0iwfrxb982v5ck"))))
|
||||
"0gvz86m4cs8bdf3mwmwsyx6lrq4ydfxgadrgd9jlx32z3bnz3jca"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("expat" ,expat)))
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -18,6 +20,7 @@
|
||||
|
||||
(define-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages image)
|
||||
@@ -33,14 +36,14 @@
|
||||
(define-public lcms
|
||||
(package
|
||||
(name "lcms")
|
||||
(version "2.4")
|
||||
(version "2.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://downloads.sourceforge.net/project/lcms/lcms/"
|
||||
version "/lcms2-" version ".tar.gz"))
|
||||
(sha256 (base32
|
||||
"1s1ppvqaydf2yqc72mw6zfviwxccb311a6hrbi802sgjxw84sl9a"))))
|
||||
"1c8lgq8gfs3nyplvbx9k8wzfj6r2bqi3f611vb1m8z3476454wji"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("libjpeg-8" ,libjpeg-8)
|
||||
("libtiff" ,libtiff)
|
||||
@@ -118,13 +121,13 @@ printing, and psresize, for adjusting page sizes.")
|
||||
(define-public ghostscript
|
||||
(package
|
||||
(name "ghostscript")
|
||||
(version "9.06.0")
|
||||
(version "9.14.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/ghostscript/gnu-ghostscript-"
|
||||
version ".tar.xz"))
|
||||
(sha256 (base32
|
||||
"0bcg2203p7cm0f53f3s883xhj2c91xnaxakj2cy7kcdknfxplvs4"))))
|
||||
"0q4jj41p0qbr4mgcc9q78f5zs8cm1g57wgryhsm2yq4lfslm3ib1"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("freetype" ,freetype)
|
||||
("lcms" ,lcms)
|
||||
@@ -160,7 +163,50 @@ printing, and psresize, for adjusting page sizes.")
|
||||
file format. It also includes a C library that implements the graphics
|
||||
capabilities of the PostScript language. It supports a wide variety of
|
||||
output file formats and printers.")
|
||||
(license license:gpl3+)
|
||||
(license license:agpl3+)
|
||||
(home-page "http://www.gnu.org/software/ghostscript/")))
|
||||
|
||||
(define-public ijs
|
||||
(package
|
||||
(name "ijs")
|
||||
(version "9.14.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/ghostscript/gnu-ghostscript-"
|
||||
version ".tar.xz"))
|
||||
(sha256 (base32
|
||||
"0q4jj41p0qbr4mgcc9q78f5zs8cm1g57wgryhsm2yq4lfslm3ib1"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("libtool" ,libtool)
|
||||
("automake" ,automake)
|
||||
("autoconf" ,autoconf)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(alist-cons-after
|
||||
'unpack 'autogen
|
||||
(lambda _
|
||||
;; need to regenerate macros
|
||||
(system* "autoreconf" "-if")
|
||||
;; do not run configure
|
||||
(substitute* "autogen.sh"
|
||||
(("^.*\\$srcdir/configure.*") ""))
|
||||
(system* "bash" "autogen.sh")
|
||||
|
||||
;; create configure script in ./ijs/
|
||||
(chdir "ijs")
|
||||
;; do not run configure
|
||||
(substitute* "autogen.sh"
|
||||
(("^.*\\$srcdir/configure.*") "")
|
||||
(("^ + && echo Now type.*$") ""))
|
||||
(zero? (system* "bash" "autogen.sh")))
|
||||
%standard-phases)))
|
||||
(synopsis "IJS driver framework for inkjet and other raster devices")
|
||||
(description
|
||||
"IJS is a protocol for transmission of raster page images. This package
|
||||
provides the reference implementation of the raster printer driver
|
||||
architecture.")
|
||||
(license license:expat)
|
||||
(home-page "http://www.gnu.org/software/ghostscript/")))
|
||||
|
||||
(define-public gs-fonts
|
||||
|
||||
+11
-7
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -21,6 +21,7 @@
|
||||
#:use-module (guix download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gtk)
|
||||
@@ -74,7 +75,10 @@ provided as well as the framework to add new color models and data types.")
|
||||
"09nlv06li9nrn74ifpm7223mxpg0s7cii702z72cpbwrjh6nlbnz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(;; More than just the one test disabled below now fails; disable them
|
||||
;; all according to the rationale given below.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'build 'pre-build
|
||||
(lambda _
|
||||
@@ -114,19 +118,19 @@ buffers.")
|
||||
(define-public gimp
|
||||
(package
|
||||
(name "gimp")
|
||||
(version "2.8.10")
|
||||
(version "2.8.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://download.gimp.org/pub/gimp/v2.8/gimp-"
|
||||
version ".tar.bz2"))
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rha8yx0pplfjziqczjrxxp16vsvpmb5ziq3c218s4w9z4cqpzg7"))))
|
||||
"0bdj0l7a94jqhjnj40m9rqaf622wj905iximivb55iy98639aanq"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
`(#:configure-flags
|
||||
;; We don't have pygtk which seems to be needed for this feature
|
||||
`("--disable-python" )))
|
||||
`("--disable-python")))
|
||||
(inputs
|
||||
`(("babl" ,babl)
|
||||
("glib" ,glib)
|
||||
|
||||
+91
-23
@@ -2,6 +2,7 @@
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
|
||||
;;; Copyright © 2014 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -19,6 +20,7 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages gl)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module ((guix licenses) #:prefix l:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
@@ -27,11 +29,14 @@
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages guile))
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages xdisorg))
|
||||
|
||||
(define-public glu
|
||||
(package
|
||||
@@ -121,49 +126,68 @@ Polygon meshes, and Extruded polygon meshes")
|
||||
(define-public mesa
|
||||
(package
|
||||
(name "mesa")
|
||||
;; In newer versions (9.0.5, 9.1 and 9.2 tested), "make" results in an
|
||||
;; infinite configure loop, see
|
||||
;; https://bugs.freedesktop.org/show_bug.cgi?id=58812
|
||||
(version "8.0.5")
|
||||
(version "10.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"ftp://ftp.freedesktop.org/pub/mesa/older-versions/8.x/"
|
||||
version
|
||||
"/MesaLib-" version
|
||||
".tar.bz2"))
|
||||
(uri (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
|
||||
version "/MesaLib-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0pjs8x51c0i6mawgd4w03lxpyx5fnx7rc8plr8jfsscf9yiqs6si"))))
|
||||
(base32
|
||||
"069j4ck51hc70gryhw3z0rkyhhl0bnhbks4xg1wqqw56l7rxz9wq"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
`(("glproto" ,glproto)
|
||||
("libdrm" ,libdrm-2.4.33)
|
||||
("libdrm" ,libdrm)
|
||||
("libx11" ,libx11)
|
||||
("libxdamage" ,libxdamage)
|
||||
("libxxf86vm" ,libxxf86vm)))
|
||||
(inputs
|
||||
`(("dri2proto" ,dri2proto)
|
||||
`(("udev" ,eudev)
|
||||
("dri2proto" ,dri2proto)
|
||||
("dri3proto" ,dri3proto)
|
||||
("presentproto" ,presentproto)
|
||||
("libxshmfence" ,libxshmfence)
|
||||
("expat" ,expat)
|
||||
("libxfixes" ,libxfixes)
|
||||
("libxml2" ,libxml2)
|
||||
;; TODO: Add 'libva'
|
||||
;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
|
||||
("makedepend" ,makedepend)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("gettext" ,gnu-gettext)
|
||||
("flex" ,flex)
|
||||
("bison" ,bison)
|
||||
("python" ,python-2))) ; incompatible with Python 3 (print syntax)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
`("--with-gallium-drivers=r600,svga,swrast") ; drop r300 from the default list as it requires llvm
|
||||
#:phases
|
||||
(alist-cons-after
|
||||
'unpack 'remove-symlink
|
||||
(lambda _
|
||||
;; remove dangling symlink to /usr/include/wine/windows
|
||||
(delete-file "src/gallium/state_trackers/d3d1x/w32api"))
|
||||
%standard-phases)))
|
||||
`(#:configure-flags
|
||||
'(;; drop r300 from default gallium drivers, as it requires llvm
|
||||
"--with-gallium-drivers=r600,svga,swrast"
|
||||
"--enable-xa"
|
||||
|
||||
;; on non-intel systems, drop i915 and i965
|
||||
;; from the default dri drivers
|
||||
,@(match (%current-system)
|
||||
((or "x86_64-linux" "i686-linux")
|
||||
'())
|
||||
(_
|
||||
'("--with-dri-drivers=nouveau,r200,radeon,swrast"))))
|
||||
#:phases (alist-cons-after
|
||||
'unpack 'add-missing-m4-files
|
||||
(lambda _
|
||||
;; When these files are missing, make tries to rebuild
|
||||
;; several parts of the build system.
|
||||
(zero? (system* "touch" "--date=@0"
|
||||
"m4/libtool.m4" "m4/ltoptions.m4"
|
||||
"m4/ltsugar.m4" "m4/ltversion.m4"
|
||||
"m4/lt~obsolete.m4")))
|
||||
(alist-cons-after
|
||||
'unpack 'patch-create_test_cases
|
||||
(lambda _
|
||||
(substitute* "src/glsl/tests/lower_jumps/create_test_cases.py"
|
||||
(("/usr/bin/env bash") (which "bash"))))
|
||||
%standard-phases))))
|
||||
(home-page "http://mesa3d.org/")
|
||||
(synopsis "OpenGL implementation")
|
||||
(description "Mesa is a free implementation of the OpenGL specification -
|
||||
@@ -172,6 +196,50 @@ allows Mesa to be used in many different environments ranging from software
|
||||
emulation to complete hardware acceleration for modern GPUs.")
|
||||
(license l:x11)))
|
||||
|
||||
(define-public glew
|
||||
(package
|
||||
(name "glew")
|
||||
(version "1.11.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://sourceforge/glew/glew-"
|
||||
version
|
||||
".tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mhkllxz49l1x680dmzrv2i82qjrq017sykah3xc90f2d8qcxfv9"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "config/Makefile.linux"
|
||||
(("= cc") "= gcc")
|
||||
(("/lib64") "/lib")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-delete 'configure %standard-phases)
|
||||
#:make-flags (list (string-append "GLEW_PREFIX="
|
||||
(assoc-ref %outputs "out"))
|
||||
(string-append "GLEW_DEST="
|
||||
(assoc-ref %outputs "out")))
|
||||
#:tests? #f)) ;no 'check' target
|
||||
(inputs
|
||||
`(("libxi" ,libxi)
|
||||
("libxmu" ,libxmu)
|
||||
("libx11" ,libx11)
|
||||
("mesa" ,mesa)))
|
||||
|
||||
;; <GL/glew.h> includes <GL/glu.h>.
|
||||
(propagated-inputs `(("glu" ,glu)))
|
||||
|
||||
(home-page "http://glew.sourceforge.net/")
|
||||
(synopsis "OpenGL extension loading library for C and C++")
|
||||
(description
|
||||
"The OpenGL Extension Wrangler Library (GLEW) is a C/C++ extension
|
||||
loading library. GLEW provides efficient run-time mechanisms for determining
|
||||
which OpenGL extensions are supported on the target platform. OpenGL core and
|
||||
extension functionality is exposed in a single header file.")
|
||||
(license l:bsd-3)))
|
||||
|
||||
(define-public guile-opengl
|
||||
(package
|
||||
(name "guile-opengl")
|
||||
|
||||
+182
-27
@@ -1,7 +1,8 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -22,6 +23,7 @@
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages base)
|
||||
@@ -37,6 +39,7 @@
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages which)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages m4)
|
||||
|
||||
@@ -49,12 +52,13 @@
|
||||
intltool
|
||||
itstool
|
||||
libsigc++
|
||||
glibmm))
|
||||
glibmm
|
||||
telepathy-glib))
|
||||
|
||||
(define dbus
|
||||
(package
|
||||
(name "dbus")
|
||||
(version "1.8.8")
|
||||
(version "1.8.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@@ -62,7 +66,7 @@
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zfi5grrlryppgrl23im82cqw6l9fk1wlc2ayvzx0yd994v2dayz"))
|
||||
"07jhcalg00i2rx5zrgk73rg0vm7lzi5q5z2gscrbl999ipr2h569"))
|
||||
(patches (list (search-patch "dbus-localstatedir.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
@@ -116,18 +120,20 @@ shared NFS home directories.")
|
||||
(define glib
|
||||
(package
|
||||
(name "glib")
|
||||
(version "2.40.0")
|
||||
(version "2.42.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/"
|
||||
name "/" (string-take version 4) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1d98mbqjmc34s8095lkw1j1bwvnnkw9581yfvjaikjvfjsaz29qd"))
|
||||
(base32
|
||||
"16pqvikrps1fvwwqvk0qi4a13mfg7gw6w5qfhk7bhi8f51jhhgwg"))
|
||||
(patches (list (search-patch "glib-tests-homedir.patch")
|
||||
(search-patch "glib-tests-desktop.patch")
|
||||
(search-patch "glib-tests-prlimit.patch")
|
||||
(search-patch "glib-tests-timer.patch")))))
|
||||
(search-patch "glib-tests-timer.patch")
|
||||
(search-patch "glib-tests-gapplication.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" ; everything
|
||||
"bin" ; glib-mkenums, gtester, etc.; depends on Python
|
||||
@@ -160,7 +166,12 @@ shared NFS home directories.")
|
||||
"glib/tests/utils.c"
|
||||
"tests/spawn-test.c")
|
||||
(("/bin/sh")
|
||||
(string-append (assoc-ref inputs "bash") "/bin/sh"))))
|
||||
(string-append (assoc-ref inputs "bash") "/bin/sh")))
|
||||
|
||||
;; Disable a test that requires dbus.
|
||||
(substitute* "gio/tests/gdbus-serialization.c"
|
||||
(("g_test_add_func \\(\"/gdbus/message-serialize/double-array\", test_double_array\\);" all)
|
||||
(string-append "/* " all " */"))))
|
||||
%standard-phases)
|
||||
|
||||
;; Note: `--docdir' and `--htmldir' are not honored, so work around it.
|
||||
@@ -179,7 +190,7 @@ shared NFS home directories.")
|
||||
;; by 'glib-compile-schemas'.
|
||||
(list (search-path-specification
|
||||
(variable "XDG_DATA_DIRS")
|
||||
(directories '("share")))))
|
||||
(files '("share")))))
|
||||
(search-paths native-search-paths)
|
||||
|
||||
(synopsis "Thread-safe general utility library; basis of GTK+ and GNOME")
|
||||
@@ -193,17 +204,20 @@ dynamic loading, and an object system.")
|
||||
(define gobject-introspection
|
||||
(package
|
||||
(name "gobject-introspection")
|
||||
(version "1.38.0")
|
||||
(version "1.42.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://ftp.gnome.org/pub/GNOME/sources/"
|
||||
"gobject-introspection/"
|
||||
(substring version 0 (string-rindex version #\.))
|
||||
"/gobject-introspection-"
|
||||
version ".tar.xz"))
|
||||
"gobject-introspection/" (version-major+minor version)
|
||||
"/gobject-introspection-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "0wvxyvgajmms2bb6k3pf1rdpnd79xdxamykzvxzmcyn1ag9yax9m"))
|
||||
(patches (list (search-patch "gobject-introspection-cc.patch")))))
|
||||
(base32 "1xwm7wmr9r9wp6xljb3bckx3a4siybavaq39w46ly7gpskxfv8iv"))
|
||||
(patches (list
|
||||
(search-patch "gobject-introspection-cc.patch")
|
||||
(search-patch
|
||||
"gobject-introspection-girepository.patch")
|
||||
(search-patch
|
||||
"gobject-introspection-absolute-shlib-path.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("bison" ,bison)
|
||||
@@ -218,8 +232,16 @@ dynamic loading, and an object system.")
|
||||
`(;; In practice, GIR users will need libffi when using
|
||||
;; gobject-introspection.
|
||||
("libffi" ,libffi)))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "GI_TYPELIB_PATH")
|
||||
(files '("lib/girepository-1.0")))))
|
||||
(search-paths native-search-paths)
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(;; The patch 'gobject-introspection-absolute-shlib-path.patch' causes
|
||||
;; some tests to fail.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'configure 'patch-paths
|
||||
(lambda _
|
||||
@@ -250,16 +272,23 @@ bindings to call into the C library.")
|
||||
(base32
|
||||
"01j4yd7i84n9nk4ccs6yifg84pp68nr9by57jdbhj7dpdxf5rwk7"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("file" ,file)))
|
||||
(propagated-inputs
|
||||
`(;; Propagate gettext because users expect it to be there, and so does
|
||||
;; the `intltool-update' script.
|
||||
("gettext" ,gnu-gettext)
|
||||
|
||||
;; `file' is used by `intltool-update' too.
|
||||
("file" ,file)
|
||||
|
||||
("perl-xml-parser" ,perl-xml-parser)
|
||||
("perl" ,perl)))
|
||||
(arguments
|
||||
`(#:phases (alist-cons-after
|
||||
'unpack 'patch-file-references
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((file (assoc-ref inputs "file")))
|
||||
(substitute* "intltool-update.in"
|
||||
(("`file") (string-append "`" file "/bin/file")))))
|
||||
%standard-phases)))
|
||||
(home-page "https://launchpad.net/intltool/+download")
|
||||
(synopsis "Tools to centralise translations of different file formats")
|
||||
(description
|
||||
@@ -318,7 +347,7 @@ translated.")
|
||||
(define dbus-glib
|
||||
(package
|
||||
(name "dbus-glib")
|
||||
(version "0.100.2")
|
||||
(version "0.102")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@@ -326,7 +355,7 @@ translated.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ibav91yg70f2l3l18cr0hf4mna1h9d4mrg0c60w4l8zjbd45fx5"))))
|
||||
"177j5p2vrvpmzk2xrrj6akn73kvpbvnmsjvlmca9l55qbdcfsr39"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("dbus" ,dbus)
|
||||
@@ -371,14 +400,15 @@ has an ease of use unmatched by other C++ callback libraries.")
|
||||
(define glibmm
|
||||
(package
|
||||
(name "glibmm")
|
||||
(version "2.37.7")
|
||||
(version "2.42.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/glibmm/2.37/glibmm-"
|
||||
version ".tar.xz"))
|
||||
(uri (string-append "mirror://gnome/sources/glibmm/"
|
||||
(version-major+minor version)
|
||||
"/glibmm-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mms4yl5izsya1135772z4jkb184ss86x0wlg6dm7yvwxvb6bjlw"))))
|
||||
"15rk3az8jh3rdwlc3lxjljbnh60drj3ka9574zd39lkqfgcq6l4q"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases (alist-cons-before
|
||||
@@ -408,3 +438,128 @@ has an ease of use unmatched by other C++ callback libraries.")
|
||||
"Glibmm provides a C++ programming interface to the part of GLib that are
|
||||
useful for C++.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public python2-pygobject-2
|
||||
(package
|
||||
(name "python2-pygobject")
|
||||
;; This was the last version to declare the 2.0 platform number, i.e. its
|
||||
;; pkg-config files were named pygobject-2.0.pc
|
||||
(version "2.28.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/pygobject/"
|
||||
(version-major+minor version)
|
||||
"/pygobject-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1f5dfxjnil2glfwxnqr14d2cjfbkghsbsn8n04js2c2icr7iv2pv"))
|
||||
(patches
|
||||
(list (search-patch
|
||||
"python2-pygobject-2-gi-info-type-error-domain.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("which" ,which)
|
||||
("glib-bin" ,glib "bin") ;for tests: glib-compile-schemas
|
||||
("pkg-config" ,pkg-config)
|
||||
("dbus" ,dbus))) ;for tests
|
||||
(inputs
|
||||
`(("python" ,python-2)
|
||||
("glib" ,glib)
|
||||
("python2-py2cairo" ,python2-py2cairo)
|
||||
("gobject-introspection" ,gobject-introspection)))
|
||||
(propagated-inputs
|
||||
`(("libffi" ,libffi))) ;mentioned in pygobject-2.0.pc
|
||||
(arguments
|
||||
`(#:tests? #f ;segfaults during tests
|
||||
#:configure-flags '("LIBS=-lcairo-gobject")))
|
||||
(home-page "https://pypi.python.org/pypi/PyGObject")
|
||||
(synopsis "Python bindings for GObject")
|
||||
(description
|
||||
"Python bindings for GLib, GObject, and GIO.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public python-pygobject
|
||||
(package
|
||||
(name "python-pygobject")
|
||||
(version "3.12.2") ;last version that works with
|
||||
;gobject-introspection 1.38
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/pygobject/"
|
||||
(version-major+minor version)
|
||||
"/pygobject-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08m5yad1hjdax4g39w6lgjk4124mcwpa8fc5iyvb8nygk8s3syky"))))
|
||||
;; 3.14.0: 0m1d75iwxa6k1xbkn6c6yq5r10pxnf7i5c2a5yvwsnab7ylzz7kp
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("which" ,which)
|
||||
("glib-bin" ,glib "bin") ;for tests: glib-compile-schemas
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("python" ,python)
|
||||
("glib" ,glib)
|
||||
("python-pycairo" ,python-pycairo)
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("libffi" ,libffi)))
|
||||
(arguments
|
||||
;; TODO: failing tests: test_native_calls_async
|
||||
;; test_native_calls_async_errors test_native_calls_sync
|
||||
;; test_native_calls_sync_errors test_python_calls_async
|
||||
;; test_python_calls_async_error test_python_calls_async_error_result
|
||||
;; test_python_calls_sync test_python_calls_sync_errors
|
||||
;; test_python_calls_sync_noargs test_callback_user_data_middle_none
|
||||
;; test_callback_user_data_middle_single
|
||||
;; test_callback_user_data_middle_tuple
|
||||
'(#:tests? #f))
|
||||
(home-page "https://pypi.python.org/pypi/PyGObject")
|
||||
(synopsis "Python bindings for GObject")
|
||||
(description
|
||||
"Python bindings for GLib, GObject, and GIO.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define telepathy-glib
|
||||
(package
|
||||
(name "telepathy-glib")
|
||||
(version "0.24.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append
|
||||
"http://telepathy.freedesktop.org/releases/telepathy-glib/"
|
||||
"telepathy-glib-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1symyzbjmxvksn2ifdkk50lafjm2llf2sbmky062gq2pz3cg23cy"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-cons-before
|
||||
'build 'set-cc
|
||||
(lambda _
|
||||
;; Set $CC so that g-ir-scanner works.
|
||||
(setenv "CC" "gcc")
|
||||
#t)
|
||||
%standard-phases)))
|
||||
(native-inputs
|
||||
`(("glib" ,glib "bin") ; uses glib-mkenums
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python-2)))
|
||||
(inputs
|
||||
`(("dbus" ,dbus)
|
||||
("dbus-glib" ,dbus-glib)
|
||||
("glib" ,glib)
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("libxslt" ,libxslt)))
|
||||
(home-page "http://telepathy.freedesktop.org/wiki/")
|
||||
(synopsis "GLib Real-time communications framework over D-Bus")
|
||||
(description "Telepathy is a flexible, modular communications framework
|
||||
that enables real-time communication over D-Bus via pluggable protocol
|
||||
backends. Telepathy is a communications service that can be accessed by
|
||||
many applications simultaneously.
|
||||
|
||||
This package provides the library for GLib applications.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -28,17 +28,17 @@
|
||||
(define-public global ; a global variable
|
||||
(package
|
||||
(name "global")
|
||||
(version "6.3.2")
|
||||
(version "6.3.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/global/global-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07iifpz00ch3drlscvk5v12j7bckwv6pk8040y81s1x14b0gf220"))))
|
||||
"0j828dg2cjf77rx71cw68jpk7jl119v6nyb0kyvirr5i1860j1fx"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("ncurses" ,ncurses)
|
||||
("libtool" ,libtool)))
|
||||
("libltdl" ,libltdl)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-ncurses="
|
||||
|
||||
+275
-39
@@ -1,8 +1,9 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -46,7 +47,9 @@
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages gl)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages xorg))
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages xdisorg)
|
||||
#:use-module (gnu packages ncurses))
|
||||
|
||||
(define-public brasero
|
||||
(package
|
||||
@@ -141,17 +144,6 @@ The gnome-about program helps find which version of GNOME is installed.")
|
||||
(base32
|
||||
"19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(alist-cons-before
|
||||
'check 'pre-check
|
||||
(lambda* (#:key inputs #:allow-other-keys #:rest args)
|
||||
;; This is needed, because without it, xmlint etc tries
|
||||
;; to download docbookx.dtd from the net
|
||||
(setenv "XML_CATALOG_FILES"
|
||||
(string-append (assoc-ref inputs "docbook-xml")
|
||||
"/xml/dtd/docbook/catalog.xml")))
|
||||
%standard-phases)))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("docbook-xml" ,docbook-xml-4.4)
|
||||
@@ -218,19 +210,7 @@ and keep up to date translations of documentation.")
|
||||
;; FIXME: Tests fail with:
|
||||
;; ImportError: No module named gi.repository
|
||||
;; Where should that module come from?
|
||||
#:tests? #f
|
||||
|
||||
#:phases (alist-cons-after
|
||||
'install 'set-mime-search-path
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Wrap 'evince' so that it knows where MIME info is.
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(mime (assoc-ref inputs "shared-mime-info")))
|
||||
(wrap-program (string-append out "/bin/evince")
|
||||
`("XDG_DATA_DIRS" ":" prefix
|
||||
,(list (string-append mime "/share")
|
||||
(string-append out "/share"))))))
|
||||
%standard-phases)))
|
||||
#:tests? #f))
|
||||
(inputs
|
||||
`(("libspectre" ,libspectre)
|
||||
;; ("djvulibre" ,djvulibre)
|
||||
@@ -249,7 +229,9 @@ and keep up to date translations of documentation.")
|
||||
("libsm" ,libsm)
|
||||
("libice" ,libice)
|
||||
("shared-mime-info" ,shared-mime-info)
|
||||
|
||||
("dconf" ,dconf)
|
||||
("libcanberra" ,libcanberra)
|
||||
|
||||
;; For tests.
|
||||
("dogtail" ,python2-dogtail)))
|
||||
(native-inputs
|
||||
@@ -310,6 +292,18 @@ for settings shared by various components of the GNOME desktop.")
|
||||
(inputs
|
||||
`(("perl" ,perl)
|
||||
("perl-xml-simple" ,perl-xml-simple)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(alist-cons-after
|
||||
'install 'set-load-paths
|
||||
;; Tell 'icon-name-mapping' where XML::Simple is.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(prog (string-append out "/libexec/icon-name-mapping")))
|
||||
(wrap-program
|
||||
prog
|
||||
`("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
|
||||
%standard-phases)))
|
||||
(home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
|
||||
(synopsis
|
||||
"Utility to implement the Freedesktop Icon Naming Specification")
|
||||
@@ -434,7 +428,7 @@ some form of information without getting in the user's way.")
|
||||
(define-public libpeas
|
||||
(package
|
||||
(name "libpeas")
|
||||
(version "1.9.0")
|
||||
(version "1.12.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -443,7 +437,7 @@ some form of information without getting in the user's way.")
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"13fzyzv6c0cfdj83z1s16lv8k997wpnzyzr0wfwcfkcmvz64g1q0"))))
|
||||
"1mjjjjwphc83bjznmbsm7x0jg7ql261nys6qnl7mi0nkr4qvw476"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("atk" ,atk)
|
||||
@@ -456,6 +450,13 @@ some form of information without getting in the user's way.")
|
||||
("glib:bin" ,glib "bin")
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("intltool" ,intltool)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(alist-cons-before
|
||||
'build 'pre-build
|
||||
(lambda* _
|
||||
(setenv "CC" "gcc"))
|
||||
%standard-phases)))
|
||||
(home-page "https://wiki.gnome.org/Libpeas")
|
||||
(synopsis "GObject plugin system")
|
||||
(description
|
||||
@@ -464,7 +465,6 @@ every application the chance to assume its own extensibility. It also has a
|
||||
set of features including, but not limited to: multiple extension points; on
|
||||
demand (lazy) programming language support for C, Python and JS; simplicity of
|
||||
the API")
|
||||
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public gtkglext
|
||||
@@ -482,6 +482,7 @@ the API")
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("gtk+" ,gtk+-2)
|
||||
("mesa" ,mesa)
|
||||
("glu" ,glu)
|
||||
("libx11" ,libx11)
|
||||
("libxt" ,libxt)))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
@@ -586,7 +587,7 @@ dealing with different structured file formats.")
|
||||
(define-public librsvg
|
||||
(package
|
||||
(name "librsvg")
|
||||
(version "2.40.2")
|
||||
(version "2.40.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
@@ -594,7 +595,7 @@ dealing with different structured file formats.")
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"071959yjb2i1bja7ciy4bmpnd6fn2is9jjqsvvvnsqwl69j9n128"))))
|
||||
"01jgb11779080b80k2ncrhdphgillqrrnszal6vh8yv787r4kwwa"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
@@ -606,7 +607,7 @@ dealing with different structured file formats.")
|
||||
;; gdk-pixbuf's prefix. Work around that.
|
||||
(("gdk_pixbuf_moduledir = .*$")
|
||||
(string-append "gdk_pixbuf_moduledir = "
|
||||
"$(prefix)/lib/gdk-pixbuf-2.0/2.0.10/"
|
||||
"$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
|
||||
"loaders\n"))
|
||||
;; Likewise, create a separate 'loaders.cache' file.
|
||||
(("gdk_pixbuf_cache_file = .*$")
|
||||
@@ -616,7 +617,7 @@ dealing with different structured file formats.")
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((loaders-directory
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/lib/gdk-pixbuf-2.0/2.0.10/loaders")))
|
||||
"/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
|
||||
(zero?
|
||||
(system
|
||||
(string-append
|
||||
@@ -625,7 +626,11 @@ dealing with different structured file formats.")
|
||||
(string-join (find-files (assoc-ref inputs "gdk-pixbuf")
|
||||
"libpixbufloader-.*\\.so") " ")
|
||||
"> " loaders-directory ".cache")))))
|
||||
%standard-phases))))
|
||||
(alist-cons-before
|
||||
'build 'pre-build
|
||||
(lambda* _
|
||||
(setenv "CC" "gcc"))
|
||||
%standard-phases)))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("glib" ,glib "bin") ; glib-mkenums, etc.
|
||||
@@ -1017,6 +1022,8 @@ widgets built in the loading process.")
|
||||
(license license:gpl2+))) ; This is correct. GPL not LGPL
|
||||
|
||||
(define-public libgnomeprint
|
||||
;; This library has been deprecated since 2006; see
|
||||
;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
|
||||
(package
|
||||
(name "libgnomeprint")
|
||||
(version "2.8.2")
|
||||
@@ -1040,11 +1047,14 @@ widgets built in the loading process.")
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://projects.gnome.org/gnome-print/home/faq.html")
|
||||
(synopsis "Printing framework for GNOME")
|
||||
(description "Gnome-print is a high-quality printing framework for GNOME.")
|
||||
(description
|
||||
"GNOME-print was a printing framework for GNOME. It has been deprecated
|
||||
since ca. 2006, when GTK+ itself incorporated printing support.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
|
||||
(define-public libgnomeprintui
|
||||
;; Deprecated; see libgnomeprint.
|
||||
(package
|
||||
(name "libgnomeprintui")
|
||||
(version "2.8.2")
|
||||
@@ -1069,10 +1079,9 @@ widgets built in the loading process.")
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://projects.gnome.org/gnome-print/home/faq.html")
|
||||
(synopsis "Printing framework for GNOME")
|
||||
(description "Gnome-print is a high-quality printing framework for GNOME.")
|
||||
(description (package-description libgnomeprint))
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
|
||||
(define-public libbonoboui
|
||||
(package
|
||||
(name "libbonoboui")
|
||||
@@ -1119,6 +1128,51 @@ widgets built in the loading process.")
|
||||
controls using the Bonobo component framework.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public libwnck
|
||||
(package
|
||||
(name "libwnck")
|
||||
(version "3.14.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "074jww04z8g9r1acndqap79wx4kbm3rpkf4lcg1v82b66iv0027m"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("intltool" ,intltool)))
|
||||
(propagated-inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("libxres" ,libxres)
|
||||
("startup-notification" ,startup-notification)))
|
||||
(home-page "https://developer.gnome.org/libwnck/")
|
||||
(synopsis "Window Navigator Construction Kit")
|
||||
(description
|
||||
"Libwnck is the Window Navigator Construction Kit, a library for use in
|
||||
writing pagers, tasklists, and more generally applications that are dealing
|
||||
with window management. It tries hard to respect the Extended Window Manager
|
||||
Hints specification (EWMH).")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
;; stable version for gtk2, required by xfwm4.
|
||||
(define-public libwnck-1
|
||||
(package (inherit libwnck)
|
||||
(name "libwnck")
|
||||
(version "2.30.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
|
||||
(propagated-inputs
|
||||
`(("gtk+" ,gtk+-2)
|
||||
("libxres" ,libxres)
|
||||
("startup-notification" ,startup-notification)))))
|
||||
|
||||
(define-public goffice
|
||||
(package
|
||||
@@ -1246,3 +1300,185 @@ engineering.")
|
||||
(description
|
||||
"The default GNOME 3 themes (Adwaita and some accessibility themes).")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public vala
|
||||
(package
|
||||
(name "vala")
|
||||
(version "0.26.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0swyym2papln0f62ah05dpvq3vv6fssap26jq2zqp9dkkaqsn1w4"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:make-flags '("CC=gcc")))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("flex" ,flex)
|
||||
("bison" ,bison)
|
||||
("xsltproc" ,libxslt)
|
||||
("dbus" ,dbus) ; for dbus tests
|
||||
("gobject-introspection" ,gobject-introspection))) ; for gir tests
|
||||
(propagated-inputs
|
||||
`(("glib" ,glib))) ; required by libvala-0.26.pc
|
||||
(home-page "http://live.gnome.org/Vala/")
|
||||
(synopsis "Compiler for the GObject type system")
|
||||
(description
|
||||
"Vala is a programming language that aims to bring modern programming
|
||||
language features to GNOME developers without imposing any additional runtime
|
||||
requirements and without using a different ABI compared to applications and
|
||||
libraries written in C.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public vte
|
||||
(package
|
||||
(name "vte")
|
||||
(version "0.38.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rbxrigff9yszbgdw0gw4c2saz4d1hbbpz21phzxx14w49wvmnmj"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("intltool" ,intltool)
|
||||
("vala" ,vala)
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("glib" ,glib "bin") ; for glib-genmarshal, etc.
|
||||
("xmllint" ,libxml2)))
|
||||
(propagated-inputs
|
||||
`(("gtk+" ,gtk+))) ; required by libvte-2.91.pc
|
||||
(arguments
|
||||
`(#:phases
|
||||
(alist-cons-before
|
||||
'build 'pre-build
|
||||
(lambda* _
|
||||
(setenv "CC" "gcc"))
|
||||
%standard-phases)))
|
||||
(home-page "http://www.gnome.org/")
|
||||
(synopsis "Virtual Terminal Emulator")
|
||||
(description
|
||||
"VTE is a library (libvte) implementing a terminal emulator widget for
|
||||
GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
|
||||
gnome-terminal, but can also be used to embed a console/terminal in games,
|
||||
editors, IDEs, etc.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
;; stable version for gtk2, required by xfce4-terminal.
|
||||
(define-public vte/gtk+-2
|
||||
(package (inherit vte)
|
||||
(name "vte")
|
||||
(version "0.28.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
|
||||
(arguments
|
||||
'(#:configure-flags '("--disable-python")))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("intltool" ,intltool)
|
||||
("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
|
||||
(propagated-inputs
|
||||
`(("gtk+" ,gtk+-2) ; required by libvte.pc
|
||||
("ncurses" ,ncurses))))) ; required by libvte.la
|
||||
|
||||
(define-public dconf
|
||||
(package
|
||||
(name "dconf")
|
||||
(version "0.22.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("glib" ,glib)
|
||||
("dbus" ,dbus)
|
||||
("libxml2" ,libxml2)))
|
||||
(native-inputs
|
||||
`(("libxslt" ,libxslt)
|
||||
("docbook-xml" ,docbook-xml-4.2)
|
||||
("docbook-xsl" ,docbook-xsl)
|
||||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(arguments
|
||||
`(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
|
||||
; or /etc/machine-id.
|
||||
#:configure-flags
|
||||
;; Set the correct RUNPATH in binaries.
|
||||
(list (string-append "LDFLAGS=-Wl,-rpath="
|
||||
(assoc-ref %outputs "out") "/lib")
|
||||
"--disable-gtk-doc-html") ; FIXME: requires gtk-doc
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'configure 'fix-docbook
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "docs/Makefile.in"
|
||||
(("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
|
||||
(string-append (assoc-ref inputs "docbook-xsl")
|
||||
"/xml/xsl/docbook-xsl-"
|
||||
,(package-version docbook-xsl)
|
||||
"/manpages/docbook.xsl")))
|
||||
(setenv "XML_CATALOG_FILES"
|
||||
(string-append (assoc-ref inputs "docbook-xml")
|
||||
"/xml/dtd/docbook/catalog.xml")))
|
||||
%standard-phases)))
|
||||
(home-page "https://developer.gnome.org/dconf")
|
||||
(synopsis "Low-level GNOME configuration system")
|
||||
(description "Dconf is a low-level configuration system. Its main purpose
|
||||
is to provide a backend to GSettings on platforms that don't already have
|
||||
configuration storage systems.")
|
||||
(license license:lgpl2.1)))
|
||||
|
||||
(define-public json-glib
|
||||
(package
|
||||
(name "json-glib")
|
||||
(version "1.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"02k66lpc4cmgygj66n8zcy59bggy7yzm3v4hni9xqplgva9d2yw8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (alist-cons-before
|
||||
'build 'set-cc
|
||||
(lambda _
|
||||
;; Set $CC so that g-ir-scanner works.
|
||||
(setenv "CC" "gcc")
|
||||
#t)
|
||||
%standard-phases)))
|
||||
(native-inputs
|
||||
`(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs
|
||||
`(("glib" ,glib))) ;according to json-glib-1.0.pc
|
||||
(home-page "https://wiki.gnome.org/Projects/JsonGlib")
|
||||
(synopsis "Compiler for the GObject type system")
|
||||
(description "JSON-GLib is a C library based on GLib providing
|
||||
serialization and deserialization support for the JavaScript Object Notation
|
||||
(JSON) format described by RFC 4627. It provides parser and generator
|
||||
GObject classes and various wrappers for the complex data types employed by
|
||||
JSON, such as arrays and objects.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
+15
-6
@@ -1,6 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
|
||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -19,6 +20,7 @@
|
||||
|
||||
(define-module (gnu packages gnunet)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
@@ -56,7 +58,14 @@
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zvv7wd011npcx7yphw9bpgivyxz6mlp87a57n96nv85k96dd2l6"))))
|
||||
"0zvv7wd011npcx7yphw9bpgivyxz6mlp87a57n96nv85k96dd2l6"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Nowadays libmagic (from 'file') returns 'audio/ogg' and not
|
||||
;; 'application/ogg'. Adjust accordingly.
|
||||
'(substitute* "src/plugins/test_mime.c"
|
||||
(("application/ogg")
|
||||
"audio/ogg")))))
|
||||
(build-system gnu-build-system)
|
||||
;; WARNING: Checks require /dev/shm to be in the build chroot, especially
|
||||
;; not to be a symbolic link to /run/shm.
|
||||
@@ -78,14 +87,14 @@
|
||||
`(("exiv2" ,exiv2)
|
||||
("flac" ,flac)
|
||||
("ffmpeg" ,ffmpeg)
|
||||
("gettext" ,gnu-gettext)
|
||||
("file" ,file) ;libmagic, for the MIME plug-in
|
||||
("glib" ,glib)
|
||||
("gstreamer" ,gstreamer)
|
||||
("gst-plugins-base" ,gst-plugins-base)
|
||||
("libjpeg" ,libjpeg)
|
||||
("libogg" ,libogg)
|
||||
("libtiff" ,libtiff)
|
||||
("libtool" ,libtool)
|
||||
("libltdl" ,libltdl)
|
||||
("libvorbis" ,libvorbis)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
@@ -103,14 +112,14 @@ tool to extract metadata from a file and print the results.")
|
||||
(define-public libmicrohttpd
|
||||
(package
|
||||
(name "libmicrohttpd")
|
||||
(version "0.9.37")
|
||||
(version "0.9.39")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1p3wnhr43v6vqdgl86r76298wjfxz2ihj9zh9kpz8l7va30br357"))))
|
||||
"0wz3sw62z3wsqivrssh0xb3yn064ix5x5cc6prvdfrn3cmh7p4sg"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("curl" ,curl)
|
||||
@@ -213,7 +222,7 @@ supports HTTPS, HTTPS and GnuTLS.")
|
||||
("libgcrypt" ,libgcrypt)
|
||||
("libidn" ,libidn)
|
||||
("libmicrohttpd" ,libmicrohttpd)
|
||||
("libtool" ,libtool)
|
||||
("libltdl" ,libltdl)
|
||||
("libunistring" ,libunistring)
|
||||
("openssl" ,openssl)
|
||||
("opus" ,opus)
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
(define-public libgpg-error
|
||||
(package
|
||||
(name "libgpg-error")
|
||||
(version "1.13")
|
||||
(version "1.17")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -47,7 +47,7 @@
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"02lv5h865f8if391xjp3njg04k0l4x2pwjkcdbzcwilail1skazq"))))
|
||||
"1dapxzxl1naghf342fwfc2w2f2c5hb9gr1a1s4n8dsqn26kybx1z"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://gnupg.org")
|
||||
(synopsis "Library of error values for GnuPG components")
|
||||
@@ -71,17 +71,17 @@ Daemon and possibly more in the future.")
|
||||
"0k2wi34qhp5hq71w1ab3kw1gfsx7xff79bvynqkxp35kls94826y"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
`(("libgpg-error" ,libgpg-error)))
|
||||
`(("libgpg-error-host" ,libgpg-error)))
|
||||
(native-inputs
|
||||
;; Needed here for the 'gpg-error' program.
|
||||
`(("libgpg-error" ,libgpg-error)))
|
||||
`(("libgpg-error-native" ,libgpg-error)))
|
||||
(arguments
|
||||
;; The '--with-gpg-error-prefix' argument is needed because otherwise
|
||||
;; 'configure' uses 'gpg-error-config' to determine the '-L' flag, and
|
||||
;; the 'gpg-error-config' it runs is the native one---i.e., the wrong one.
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-gpg-error-prefix="
|
||||
(assoc-ref %build-inputs "libgpg-error")))))
|
||||
(assoc-ref %build-inputs "libgpg-error-host")))))
|
||||
(outputs '("out" "debug"))
|
||||
(home-page "http://gnupg.org/")
|
||||
(synopsis "Cryptographic function library")
|
||||
@@ -107,7 +107,7 @@ generation.")
|
||||
(define-public libassuan
|
||||
(package
|
||||
(name "libassuan")
|
||||
(version "2.1.3")
|
||||
(version "2.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -115,7 +115,7 @@ generation.")
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"06hxyns8i73c6vrbrxyx6h38kwa7971h01qfc5cyna69afrp08gs"))))
|
||||
"1ikf9whfi7rg71qa610ynyv12qrw20zkn7zxgvvr9dp41gbqxxbx"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
`(("libgpg-error" ,libgpg-error) ("pth" ,pth)))
|
||||
@@ -132,7 +132,7 @@ provided.")
|
||||
(define-public libksba
|
||||
(package
|
||||
(name "libksba")
|
||||
(version "1.3.0")
|
||||
(version "1.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -141,7 +141,7 @@ provided.")
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0w8rfb6yhcwkwzvjafrashcygy4hd9xwwmvlnkfd1m2h0paywqas"))))
|
||||
"01l4hvcknk9nb4bvyb6aqaid19jg0wv3ik54j1b89hnzamwm75gb"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
`(("libgpg-error" ,libgpg-error)))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -36,7 +36,7 @@
|
||||
(define-public libtasn1
|
||||
(package
|
||||
(name "libtasn1")
|
||||
(version "4.1")
|
||||
(version "4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -44,7 +44,7 @@
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"00gkyppzw6fqi5mnc3d8paf7bp6nfhi9213481awy07sviqnbvk0"))))
|
||||
"1fydwh5hlnmprdzmzn4kiqb939br59qv1001k7ah5b626v5l2fv9"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("perl" ,perl)
|
||||
|
||||
@@ -63,7 +63,7 @@ specifications.")
|
||||
(define-public gnutls
|
||||
(package
|
||||
(name "gnutls")
|
||||
(version "3.2.20")
|
||||
(version "3.2.21")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@@ -74,7 +74,7 @@ specifications.")
|
||||
"/gnutls-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"165mpmm506jgpiffgf0s01rrn8c14qkan1saaa79dvf3g1z0arvr"))))
|
||||
"0zq8syiq51ls5g0f32nglvps330h5llpyrs1z2gjn5pr9hjrchc2"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
|
||||
+189
-3
@@ -1,7 +1,8 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -24,6 +25,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gstreamer)
|
||||
#:use-module (gnu packages gtk)
|
||||
@@ -42,6 +44,172 @@
|
||||
#:use-module (gnu packages yasm)
|
||||
#:use-module (gnu packages zip))
|
||||
|
||||
(define-public mozjs
|
||||
(package
|
||||
(name "mozjs")
|
||||
(version "17.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://ftp.mozilla.org/pub/mozilla.org/js/"
|
||||
name version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1fig2wf4f10v43mqx67y68z6h77sy900d1w0pz9qarrqx57rc7ij"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("perl", perl)
|
||||
("python" ,python-2)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(alist-cons-before
|
||||
'configure 'chdir
|
||||
(lambda _
|
||||
(chdir "js/src"))
|
||||
(alist-replace
|
||||
'configure
|
||||
;; configure fails if it is followed by SHELL and CONFIG_SHELL
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(setenv "SHELL" (which "sh"))
|
||||
(setenv "CONFIG_SHELL" (which "sh"))
|
||||
(zero? (system*
|
||||
"./configure" (string-append "--prefix=" out)))))
|
||||
%standard-phases))))
|
||||
(home-page
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey")
|
||||
(synopsis "Mozilla javascript engine")
|
||||
(description "SpiderMonkey is Mozilla's JavaScript engine written
|
||||
in C/C++.")
|
||||
(license license:mpl2.0))) ; and others for some files
|
||||
|
||||
(define-public nspr
|
||||
(package
|
||||
(name "nspr")
|
||||
(version "4.10.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v"
|
||||
version "/src/nspr-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0f1ri51yzjikigf6z31g03cdv6sgi9gw2c3vvv39psk3m37zb6iq"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("perl", perl)))
|
||||
(arguments
|
||||
`(#:tests? #f ; no check target
|
||||
#:configure-flags
|
||||
`("--enable-64bit")
|
||||
#:phases
|
||||
(alist-cons-before
|
||||
'configure 'chdir
|
||||
(lambda _
|
||||
(chdir "nspr"))
|
||||
%standard-phases)))
|
||||
(home-page
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR")
|
||||
(synopsis "Netscape API for system level and libc-like functions")
|
||||
(description "Netscape Portable Runtime (NSPR) provides a
|
||||
platform-neutral API for system level and libc-like functions. It is used
|
||||
in the Mozilla clients.")
|
||||
(license license:mpl2.0)))
|
||||
|
||||
(define-public nss
|
||||
(package
|
||||
(name "nss")
|
||||
(version "3.17.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/"
|
||||
"releases/NSS_3_17_3_RTM/src/nss-3.17.3.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1m91z80x4zh1mxgf53bl33lp43gn1wxxx0y26mgz511gb81ykmgl"))
|
||||
;; Create nss.pc and nss-config.
|
||||
(patches (list (search-patch "nss-pkgconfig.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "bin"))
|
||||
(arguments
|
||||
'(#:parallel-build? #f ; failed
|
||||
#:make-flags
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(nspr (string-append (assoc-ref %build-inputs "nspr")))
|
||||
(rpath (string-append "-Wl,-rpath=" out "/lib/nss")))
|
||||
(list "-C" "nss" (string-append "PREFIX=" out)
|
||||
"NSDISTMODE=copy"
|
||||
"NSS_USE_SYSTEM_SQLITE=1"
|
||||
(string-append "NSPR_INCLUDE_DIR=" nspr "/include/nspr")
|
||||
;; Add $out/lib/nss to RPATH.
|
||||
(string-append "RPATH=" rpath)
|
||||
(string-append "LDFLAGS=" rpath)))
|
||||
#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 ftw)
|
||||
(ice-9 match)
|
||||
(srfi srfi-26))
|
||||
#:imported-modules ((guix build gnu-build-system)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
(alist-replace
|
||||
'configure
|
||||
(lambda* (#:key system inputs #:allow-other-keys)
|
||||
;; Tells NSS to build for the 64-bit ABI if we are 64-bit system.
|
||||
(when (string-prefix? "x86_64" system)
|
||||
(setenv "USE_64" "1"))
|
||||
#t)
|
||||
(alist-replace
|
||||
'check
|
||||
(lambda _
|
||||
;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for testing.
|
||||
;; The later requires a working DNS or /etc/hosts.
|
||||
(setenv "DOMSUF" "(none)")
|
||||
(setenv "USE_IP" "TRUE")
|
||||
(setenv "IP_ADDRESS" "127.0.0.1")
|
||||
(zero? (system* "./nss/tests/all.sh")))
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append (assoc-ref outputs "bin") "/bin"))
|
||||
(inc (string-append out "/include/nss"))
|
||||
(lib (string-append out "/lib/nss"))
|
||||
(obj (match (scandir "dist" (cut string-suffix? "OBJ" <>))
|
||||
((obj) (string-append "dist/" obj)))))
|
||||
;; Install nss-config to $out/bin.
|
||||
(mkdir-p (string-append out "/bin"))
|
||||
(copy-file (string-append obj "/bin/nss-config")
|
||||
(string-append out "/bin/nss-config"))
|
||||
(delete-file (string-append obj "/bin/nss-config"))
|
||||
;; Install nss.pc to $out/lib/pkgconfig.
|
||||
(mkdir-p (string-append out "/lib/pkgconfig"))
|
||||
(copy-file (string-append obj "/lib/pkgconfig/nss.pc")
|
||||
(string-append out "/lib/pkgconfig/nss.pc"))
|
||||
(delete-file (string-append obj "/lib/pkgconfig/nss.pc"))
|
||||
(rmdir (string-append obj "/lib/pkgconfig"))
|
||||
;; Install other files.
|
||||
(copy-recursively "dist/public/nss" inc)
|
||||
(copy-recursively (string-append obj "/bin") bin)
|
||||
(copy-recursively (string-append obj "/lib") lib)))
|
||||
%standard-phases)))))
|
||||
(inputs
|
||||
`(("sqlite" ,sqlite)
|
||||
("zlib" ,zlib)))
|
||||
(propagated-inputs `(("nspr" ,nspr))) ; required by nss.pc.
|
||||
(native-inputs `(("perl" ,perl)))
|
||||
(home-page
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS")
|
||||
(synopsis "Network Security Services")
|
||||
(description
|
||||
"Network Security Services (NSS) is a set of libraries designed to support
|
||||
cross-platform development of security-enabled client and server applications.
|
||||
Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7,
|
||||
PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security
|
||||
standards.")
|
||||
(license license:mpl2.0)))
|
||||
|
||||
(define-public icecat
|
||||
(package
|
||||
(name "icecat")
|
||||
@@ -53,7 +221,24 @@
|
||||
version "/" name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"02r9klfc0z26w270inq652249hq0wfzvwhzvwmk0n8v8nzkk5idh"))))
|
||||
"02r9klfc0z26w270inq652249hq0wfzvwhzvwmk0n8v8nzkk5idh"))
|
||||
(patches (map search-patch
|
||||
'("icecat-CVE-2014-1587-bug-1042567.patch"
|
||||
"icecat-CVE-2014-1587-bug-1072847.patch"
|
||||
"icecat-CVE-2014-1587-bug-1079729.patch"
|
||||
"icecat-CVE-2014-1587-bug-1080312.patch"
|
||||
"icecat-CVE-2014-1587-bug-1089207.patch"
|
||||
"icecat-CVE-2014-1590.patch"
|
||||
"icecat-CVE-2014-1592.patch"
|
||||
"icecat-CVE-2014-1593.patch"
|
||||
"icecat-CVE-2014-1594.patch"
|
||||
"icecat-armhf-xpcom.patch"
|
||||
"icecat-CVE-2014-8639.patch"
|
||||
"icecat-CVE-2014-8634-pt1.patch"
|
||||
"icecat-CVE-2014-8634-pt2.patch"
|
||||
"icecat-CVE-2014-8641.patch"
|
||||
"icecat-CVE-2014-8638-pt1.patch"
|
||||
"icecat-CVE-2014-8638-pt2.patch")))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
@@ -90,6 +275,7 @@
|
||||
"--disable-debug"
|
||||
"--disable-debug-symbols"
|
||||
|
||||
"--enable-pulseaudio"
|
||||
"--disable-webrtc" ; webrtc fails to build
|
||||
|
||||
"--with-system-zlib"
|
||||
|
||||
+1
-11
@@ -100,17 +100,7 @@ manipulate maps.")
|
||||
(substitute* "Makefile"
|
||||
(("prefix[[:blank:]]*=.*$")
|
||||
(string-append "prefix = " (assoc-ref outputs "out")
|
||||
"\n")))
|
||||
|
||||
;; Make sure the DocBook XML and XSL files are found.
|
||||
;; Note: this is a space-separated list.
|
||||
(setenv "XML_CATALOG_FILES"
|
||||
(string-append (assoc-ref inputs "docbook-xml")
|
||||
"/xml/dtd/docbook/catalog.xml "
|
||||
(assoc-ref inputs "docbook-xsl")
|
||||
"/xml/xsl/"
|
||||
,(package-full-name docbook-xsl)
|
||||
"/catalog.xml")))
|
||||
"\n"))))
|
||||
%standard-phases)
|
||||
#:tests? #f))
|
||||
(inputs
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages graphics)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages boost))
|
||||
|
||||
(define-public cgal
|
||||
(package
|
||||
(name "cgal")
|
||||
(version "4.5.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://gforge.inria.fr/frs/download.php/file/34402/CGAL-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1565ycbds92bxmhi09avc1jl6ks141ig00j110l49gqxp9swy6zv"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(;; "RelWithDebInfo" is not supported.
|
||||
#:build-type "Release"
|
||||
|
||||
;; No 'test' target.
|
||||
#:tests? #f))
|
||||
(inputs
|
||||
`(("mpfr" ,mpfr)
|
||||
("gmp" ,gmp)
|
||||
("boost" ,boost)))
|
||||
(home-page "http://cgal.org/")
|
||||
(synopsis "Computational geometry algorithms library")
|
||||
(description
|
||||
"CGAL provides easy access to efficient and reliable geometric algorithms
|
||||
in the form of a C++ library. CGAL is used in various areas needing geometric
|
||||
computation, such as: computer graphics, scientific visualization, computer
|
||||
aided design and modeling, geographic information systems, molecular biology,
|
||||
medical imaging, robotics and motion planning, mesh generation, numerical
|
||||
methods, etc. It provides data structures and algorithms such as
|
||||
triangulations, Voronoi diagrams, polygons, polyhedra, mesh generation, and
|
||||
many more.")
|
||||
|
||||
;; The 'LICENSE' file explains that a subset is available under more
|
||||
;; permissive licenses.
|
||||
(license license:gpl3+)))
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -69,7 +69,7 @@
|
||||
("pango" ,pango)
|
||||
("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("libltdl" ,libtool)
|
||||
("libltdl" ,libltdl)
|
||||
("libXaw" ,libxaw)
|
||||
("expat" ,expat)
|
||||
("libjpeg" ,libjpeg)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -31,20 +32,21 @@
|
||||
(define-public groff
|
||||
(package
|
||||
(name "groff")
|
||||
(version "1.22.2")
|
||||
(version "1.22.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/groff/groff-" version
|
||||
".tar.gz"))
|
||||
(sha256 (base32
|
||||
"0xi07nhj5vdgax37rj25mwxzdmsz1ifx50hjgc6hqbkpqkd6821q"))))
|
||||
"1998v2kcs288d3y7kfxpvl369nqi06zbbvjzafyvyl3pr7bajj1s"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("ghostscript" ,ghostscript)
|
||||
("netpbm" ,netpbm)))
|
||||
(native-inputs `(("bison" ,bison)
|
||||
("perl" ,perl)
|
||||
("psutils" ,psutils)
|
||||
("texinfo" ,texinfo)))
|
||||
("perl" ,perl)
|
||||
("psutils" ,psutils)
|
||||
("texinfo" ,texinfo)))
|
||||
(arguments '(#:parallel-build? #f)) ; parallel build fails
|
||||
(synopsis "Typesetting from plain text mixed with formatting commands")
|
||||
(description
|
||||
"Groff is a typesetting package that reads plain text and produces
|
||||
|
||||
@@ -48,13 +48,13 @@
|
||||
(define-public gss
|
||||
(package
|
||||
(name "gss")
|
||||
(version "1.0.2")
|
||||
(version "1.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gss/gss-" version
|
||||
".tar.gz"))
|
||||
(sha256 (base32
|
||||
"1qa8lbkzi6ilfggx7mchfzjnchvhwi68rck3jf9j4425ncz7zsd9"))))
|
||||
"1syyvh3k659xf1hdv9pilnnhbbhs6vfapayp4xgdcc8mfgf9v4gz"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("nettle" ,nettle)
|
||||
("shishi" ,shishi)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user