mirror of
https://github.com/terrapkg/packages.git
synced 2026-06-01 09:31:58 +00:00
Compare commits
624 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 49fa030207 | |||
| 049d02383b | |||
| b76d56d5d5 | |||
| b4d721aedc | |||
| 8295ec30f7 | |||
| 014dc6fac2 | |||
| 35dba4e197 | |||
| f9f38f85b8 | |||
| 3aec4e492c | |||
| 4d6e1a78ea | |||
| 31804f6e71 | |||
| c6031ba589 | |||
| 6990aa3694 | |||
| 908957d550 | |||
| 4c14dd1866 | |||
| 857cbdfb7f | |||
| fbca40d3c2 | |||
| 0dd06dd39a | |||
| dfeaa3bfe7 | |||
| de1b42b920 | |||
| 15c7a518ac | |||
| 83daf7b6bc | |||
| d9fff32e2e | |||
| 1bab75fdb3 | |||
| ce72786b87 | |||
| a2e6457cd9 | |||
| e29f64892f | |||
| b7ed26b4f7 | |||
| f47b93e2da | |||
| 0fc26c4f91 | |||
| 251c46d573 | |||
| 73a276f80e | |||
| 3deddd4382 | |||
| f2c593e48e | |||
| 951d9a98e3 | |||
| a92fc2d38a | |||
| fd691d7758 | |||
| d22c113f8f | |||
| e72434e8ac | |||
| 247343cdc9 | |||
| 5c31c1a296 | |||
| fa91dfd95f | |||
| 3180dbfa8f | |||
| c212ae235e | |||
| 8381b5c74b | |||
| b0d7912544 | |||
| 445198b9e5 | |||
| c2199f8d65 | |||
| 9c88690fa0 | |||
| e8bfda41c7 | |||
| b9027de46a | |||
| 97c17fe08c | |||
| c9ddb194af | |||
| 6e1bb78f5e | |||
| 01ec8127fd | |||
| c48e979742 | |||
| a687de0f1d | |||
| 27bde4a7a2 | |||
| e201559983 | |||
| b597404e3e | |||
| dcb1ea36ce | |||
| 5cbad47e6f | |||
| 807cf95d41 | |||
| 34fa0f5d13 | |||
| dbd88468a5 | |||
| dc313c3865 | |||
| 4558c35c05 | |||
| c21e702d80 | |||
| 10b97d6454 | |||
| 8790d43f17 | |||
| e5e4eee6f7 | |||
| 5fcc1c9c99 | |||
| c8d0e969fd | |||
| ed7d5a099a | |||
| 36155c78a9 | |||
| d2de732043 | |||
| 4dc1b6c1f1 | |||
| 4d9934cea6 | |||
| 14df9aaeda | |||
| b5f74d5ad0 | |||
| 0d238aeea8 | |||
| 8a88b6256e | |||
| 5fbee05703 | |||
| c559ca6f5b | |||
| 42df4be068 | |||
| d9eb6164c4 | |||
| 0820eae1d6 | |||
| 52b1ad2b43 | |||
| 60e640041c | |||
| 77d31cca6f | |||
| 235ad69e11 | |||
| 486915594b | |||
| 9d0d9522d7 | |||
| abaa18875b | |||
| a87234927d | |||
| 0f813887a8 | |||
| 4087e7bd0d | |||
| 4bee7fe60e | |||
| f5d72cbd2a | |||
| 0e24a719fb | |||
| 2d81993f09 | |||
| 9ca075004c | |||
| 824a6953fe | |||
| e1bbbc5736 | |||
| 5d8aa80092 | |||
| 168ea7e24e | |||
| 5fffc88a71 | |||
| 2f91184516 | |||
| cbb540bdc5 | |||
| d7dbac1302 | |||
| 95e6c2eae3 | |||
| 5423fed79d | |||
| b14fa71554 | |||
| 245f0b1558 | |||
| 58c7e8b715 | |||
| 5328d65a23 | |||
| 6c53e5fb21 | |||
| 88a85d5d0c | |||
| 9acb64765d | |||
| 544d0885da | |||
| aeb1f3901a | |||
| f789f8ef02 | |||
| 5c8029a439 | |||
| 1372fc88a3 | |||
| 5873e1f7ac | |||
| 138d56913d | |||
| 5304ed252c | |||
| ad63de9a23 | |||
| 99470cf657 | |||
| 6ecf8e7660 | |||
| e85ee4e426 | |||
| 82fdce821a | |||
| 6538502569 | |||
| 75b68685e1 | |||
| 3ce5e60270 | |||
| ba66620838 | |||
| a8db1f2567 | |||
| 6f12b2f579 | |||
| 1befed0227 | |||
| f1db84f48d | |||
| 868c090402 | |||
| bfe65fd269 | |||
| 19636bfe38 | |||
| 9eb898e9e0 | |||
| 835f649dc2 | |||
| 6521d3a76a | |||
| 28b18748fc | |||
| 68b2adaed6 | |||
| 8a2e04ee63 | |||
| cc1c952889 | |||
| 00ea60582d | |||
| f3cbd3ac1e | |||
| f81c794e67 | |||
| bec8ead213 | |||
| 3738786fef | |||
| 71667e3fa5 | |||
| fb9d79241a | |||
| 823dca0a0b | |||
| 711d58db3d | |||
| c7ac3537f0 | |||
| ce2f6c0c32 | |||
| 8ac5152237 | |||
| 171cd82857 | |||
| e393b0fb10 | |||
| 70fbac025d | |||
| dffab7a988 | |||
| 746a6dd306 | |||
| 63ad978b54 | |||
| a30da8ddad | |||
| f369a75549 | |||
| c9a8f56e6f | |||
| 82061d7171 | |||
| 804b47b4df | |||
| 5039ac38ae | |||
| ca3dc3c603 | |||
| 9872b49601 | |||
| bd1cd370f6 | |||
| fd23aaee29 | |||
| aadb2969cb | |||
| 10673aa051 | |||
| 7f75f89fbe | |||
| caacb5c9fd | |||
| 0667276225 | |||
| 02c05bf4c0 | |||
| 7eec0ce9b7 | |||
| 7aa6f06c3b | |||
| 43c5280629 | |||
| 08029e3a80 | |||
| 1b16adfd24 | |||
| 52d32e3754 | |||
| 9772f180ca | |||
| c10982ba7f | |||
| c371646a5c | |||
| 4097348c01 | |||
| 5bf43cd55c | |||
| 26dad0be60 | |||
| 077f39d70a | |||
| 0e67073015 | |||
| 339490fe70 | |||
| 756ec4c500 | |||
| 16a707df2a | |||
| fc1490d470 | |||
| 66f4e5621a | |||
| d6c1ac354b | |||
| c66975cb96 | |||
| 1e9be6ecd3 | |||
| c5022de695 | |||
| 423c2a6464 | |||
| 4009471f9e | |||
| 2680708a63 | |||
| 19054bbec9 | |||
| da4a2915dd | |||
| 3a69abed76 | |||
| 031bc32ada | |||
| 90977139e4 | |||
| bd74a4a985 | |||
| 8e80c9234d | |||
| 53b8cc2e6b | |||
| e26b5f97e2 | |||
| ebde93cfd5 | |||
| 051f246e51 | |||
| 45bdceda08 | |||
| 2599fdacb1 | |||
| 3cb50c9d37 | |||
| 7e3de7e598 | |||
| 9fd5614297 | |||
| 7aecae550b | |||
| 9f1cc00c99 | |||
| eb6acf546c | |||
| 6d95669904 | |||
| 538a0b405a | |||
| 7036e14ed4 | |||
| 7ae00c49ba | |||
| fb4fbc082b | |||
| a1ffdb2847 | |||
| ee7b965b6b | |||
| 04bb6648cd | |||
| f5bca765f1 | |||
| 7044d742d7 | |||
| f4c0dbd090 | |||
| d6c43927c5 | |||
| 3ae7e078fe | |||
| af366bc59f | |||
| 9b24622c10 | |||
| 7116c4f567 | |||
| 8ba970eef5 | |||
| 579873fce8 | |||
| afb6d89b7d | |||
| a2685f9590 | |||
| c0b0a99d74 | |||
| e118957113 | |||
| e621a3cb77 | |||
| 6873f004b3 | |||
| e4338f5b08 | |||
| d1767d0e74 | |||
| 8b8c9448fb | |||
| 361dfb7f33 | |||
| 5f05022d6e | |||
| 110b24b26d | |||
| 4222c7ad4b | |||
| fd41534078 | |||
| 992960a87d | |||
| ca9e2e3cb0 | |||
| da46393359 | |||
| 3de9fa4dde | |||
| b7b3887f1c | |||
| 8c99f3eede | |||
| a96bbf806b | |||
| 816ca639db | |||
| 43d60633d4 | |||
| c12a318599 | |||
| f4fc57dd60 | |||
| 99f145baf2 | |||
| 443a08856e | |||
| 5df58a3368 | |||
| cc53b91c20 | |||
| 2dee2a28ba | |||
| a78d4df323 | |||
| d7daf9be37 | |||
| a86a161c8b | |||
| f84faf30ed | |||
| 82752cd959 | |||
| 3e1d1f9eac | |||
| b210b16f31 | |||
| f2512fb675 | |||
| 501433c6b0 | |||
| d8bf895359 | |||
| fab86001cf | |||
| 27b39fcf03 | |||
| 1fe75042b0 | |||
| 63d51e10f3 | |||
| 9ad2361811 | |||
| 325d499561 | |||
| 575b3e29b7 | |||
| 3f7c8e019a | |||
| dea882886f | |||
| 07b2e01c20 | |||
| 2ac7c64627 | |||
| 579576915c | |||
| caaec3e5f0 | |||
| 1566691977 | |||
| c2975d6b2f | |||
| c8d81c5ab4 | |||
| 2d65ee2ce6 | |||
| 4b89ebc46e | |||
| 080e75383d | |||
| efb8ec14fc | |||
| f92a585908 | |||
| 5cd684fb78 | |||
| b022f3008f | |||
| dcb1afd820 | |||
| 9e84085525 | |||
| bccce3f37f | |||
| 45db999372 | |||
| d954f506ee | |||
| dfed8b8ae2 | |||
| 6029fc5378 | |||
| cee2e127b9 | |||
| bdfaccf2b8 | |||
| 25c7bb4b7d | |||
| 887e1dac29 | |||
| a40a240cf4 | |||
| ee72603712 | |||
| 87010a7f3c | |||
| 229f0d48e3 | |||
| f65e4b02ac | |||
| 6622b748ce | |||
| ee01d5e6f9 | |||
| 0601401588 | |||
| eb77a7cef3 | |||
| 248f36f210 | |||
| 688d06e58c | |||
| e0e7615979 | |||
| 009b3d7342 | |||
| 16b9afad21 | |||
| 1b9af5fc50 | |||
| 44354d6338 | |||
| 54afd526da | |||
| d0bdaafa02 | |||
| f306666c08 | |||
| 3e993dd4e0 | |||
| 8befda0b18 | |||
| 141ae72e4e | |||
| fbe79c0baa | |||
| b8db6ec764 | |||
| c53b23e5cc | |||
| 400c79acef | |||
| 5f55b28a59 | |||
| 9cf2f04302 | |||
| 7c47307562 | |||
| 16f578bb28 | |||
| d99cf99c82 | |||
| a82d0523cc | |||
| 84d1d639ab | |||
| 5111a4f5b3 | |||
| 6d4a5efe1c | |||
| 05575689dd | |||
| 84a76d1916 | |||
| 6db13615f6 | |||
| e0ce51022b | |||
| 7918a6e874 | |||
| 76cb6a0caf | |||
| f43f553f03 | |||
| 1ce248e2c1 | |||
| 2e4543c884 | |||
| f28ca51cbe | |||
| 90d9833f78 | |||
| de1108ad5a | |||
| ee7a96eef3 | |||
| 61dc24022e | |||
| 0617c3869d | |||
| a47fec11e5 | |||
| 5d21fbb26c | |||
| c7cfc6800c | |||
| 1b1fc94056 | |||
| cbd8d81bc2 | |||
| 4a358602e2 | |||
| f5fe3815e9 | |||
| 911af062c5 | |||
| f338d13d2a | |||
| be44b2cf4e | |||
| 030f5d7e9d | |||
| 244b095393 | |||
| b4ccc006a8 | |||
| 39ac9ec8e7 | |||
| 4c37af88df | |||
| b6c3030542 | |||
| 1ad1dc9182 | |||
| f8aa9506cd | |||
| 25618dff62 | |||
| 89d1681b2b | |||
| d02002722b | |||
| a81e656056 | |||
| 445f42cbce | |||
| bdf9229066 | |||
| 66fffb55ac | |||
| 7a986ad154 | |||
| 349d272d90 | |||
| 09d7034981 | |||
| e6e14ca042 | |||
| 9fee4fdd26 | |||
| 8f6903ca6d | |||
| a66909dee4 | |||
| 14bbd61b88 | |||
| 41b8ec40fe | |||
| 30ae3a469e | |||
| 1bfe87633a | |||
| 9fdbfbba52 | |||
| c64aa6c883 | |||
| 88c11c5fdf | |||
| 192743e6b3 | |||
| 2fdc6103dc | |||
| 522dfc74da | |||
| 75a465c6f5 | |||
| 78a596bd4c | |||
| cb7bef85fa | |||
| 4ab45b683a | |||
| 9f8cc9be8d | |||
| 83c15163ab | |||
| 186953fe23 | |||
| 5501411cde | |||
| 9d1d1cd4a0 | |||
| ef0cc6bdf1 | |||
| b984a52eca | |||
| b23ed7da9e | |||
| 98e9102681 | |||
| 531e706bf9 | |||
| cbdcc7c1fd | |||
| 7add625670 | |||
| 29641906bf | |||
| da950f1dc0 | |||
| 467e1d8a46 | |||
| 47ba1ec013 | |||
| 4d468fa75e | |||
| bb16ffd8c6 | |||
| 19f6a3e3c4 | |||
| 15cdad1bbd | |||
| 268d90f2b1 | |||
| a9292747e2 | |||
| a9bea1fe41 | |||
| 7172b204f9 | |||
| 2a65fa1d6d | |||
| 19ad474c2d | |||
| 44c11480d9 | |||
| 034e714d9c | |||
| d397a81fa5 | |||
| 8d93c6975c | |||
| 7fe8fcf7e0 | |||
| 4d96284bc2 | |||
| 4861d78287 | |||
| 0d90ae259f | |||
| 7e3145699e | |||
| c7f79ba238 | |||
| 73f818144e | |||
| 00ee44999d | |||
| 42b32fbbde | |||
| 28dd497e4e | |||
| 98b988b60f | |||
| e3d31e982d | |||
| cbd9f93e08 | |||
| e2cd2289dd | |||
| 00b1ff2d8b | |||
| 6e9d373906 | |||
| 16f2482bd8 | |||
| 1bb61c1666 | |||
| b05419b52b | |||
| e4fddfa1a8 | |||
| 135943e065 | |||
| 7d6e82568d | |||
| 82eab5e6af | |||
| dd879978c0 | |||
| 8fe609a586 | |||
| 5da80fc81f | |||
| 4e5e5a9a44 | |||
| a7d254bca7 | |||
| 47b7d52fa8 | |||
| 355e25b92f | |||
| 61b15c91a1 | |||
| fbe07df9fa | |||
| b39a37baf8 | |||
| a589cf6f4f | |||
| a12ae00359 | |||
| c288535e5b | |||
| 557c254753 | |||
| 636d51c011 | |||
| 22b996f242 | |||
| 972e9894a7 | |||
| 4607c2eaaa | |||
| 8f0a65a739 | |||
| b44f3dd28a | |||
| 97bace3278 | |||
| a9d265e5ed | |||
| baf3c4e824 | |||
| 3f59f2810b | |||
| 18650fe704 | |||
| 0fdb0dbe1f | |||
| 40657c5f71 | |||
| 822bcfcfe0 | |||
| 33c5136323 | |||
| d8fefe97e7 | |||
| 7fa9617ae2 | |||
| e6ad0f1a7f | |||
| d488b9a76e | |||
| 3eb9ac3a83 | |||
| c3cd060576 | |||
| fcf9d1ebca | |||
| e4b8175213 | |||
| a324bff65b | |||
| 6a80625eb3 | |||
| 236448f7b0 | |||
| 3e3aa16084 | |||
| 8026f499e6 | |||
| 9e517ed55f | |||
| d9b5c8a785 | |||
| 5c37aa1197 | |||
| cbfb3c82b8 | |||
| c816b710ee | |||
| ec6de28999 | |||
| bd366cab4b | |||
| 2319bb8799 | |||
| 88082f5411 | |||
| 05ace7c7d9 | |||
| 1a12a8b695 | |||
| f8bffef63f | |||
| 79a810f524 | |||
| 4b6ddc514c | |||
| ef0132f760 | |||
| f74bb35fb8 | |||
| e130b5d22e | |||
| 12f1478284 | |||
| d7e16285e4 | |||
| b794b97c41 | |||
| 1a644e552e | |||
| 230eac023e | |||
| e30717802c | |||
| 7de2c50ad7 | |||
| 82fc0bab09 | |||
| 131578d0e1 | |||
| a8c7037845 | |||
| 2f6b46664e | |||
| 07610e64cf | |||
| 1cf85c302a | |||
| 869d59a269 | |||
| c5d621fd3d | |||
| b68e2b66fd | |||
| 4adff8e330 | |||
| 342f523df8 | |||
| e23763a18d | |||
| dd68bea2d9 | |||
| c533b876b3 | |||
| a648fe1ae9 | |||
| b1c4500959 | |||
| 6f17c24be6 | |||
| fe3877a94f | |||
| 88eb259592 | |||
| 3451218067 | |||
| d702e6ff47 | |||
| 00e18f76a0 | |||
| 17b99d086e | |||
| bffcf32c3d | |||
| 9ebab54f3a | |||
| 84897dca3a | |||
| 3f718d3c2f | |||
| 52fee1b87d | |||
| d1a8d512b8 | |||
| 70b0af2678 | |||
| 29862e2b35 | |||
| ddea235b5e | |||
| f27c1ee5cd | |||
| a35d79d9cf | |||
| e46101fcb2 | |||
| c1219bb27d | |||
| 95b684a9d5 | |||
| d17e784ed0 | |||
| 3c20e349ca | |||
| c69925c2b8 | |||
| ffbbea717f | |||
| c0fb07afdb | |||
| b1789e340e | |||
| 92ca4466b6 | |||
| 26f303d5f0 | |||
| 9bc5cf2cb9 | |||
| ab4355d2a7 | |||
| cbd545b394 | |||
| bd43f3ac76 | |||
| 55c9d8ce39 | |||
| 92ecc7103f | |||
| cd6a6cddb0 | |||
| b79c466f47 | |||
| 39ab9b3200 | |||
| 62a0b27cdb | |||
| 7103d45d93 | |||
| e9c8c88ad7 | |||
| 0fbcceee61 | |||
| ac9ed55114 | |||
| 597a26ddc4 | |||
| f22ed1e5ec | |||
| 597de131b4 | |||
| e75ba481f4 | |||
| 0d7217cf25 | |||
| 0539781e23 | |||
| c3fee056cb | |||
| 53b06e1f36 | |||
| 16e3beb422 | |||
| a1c7f030eb | |||
| 71eeba185c | |||
| aa9e7d42e5 | |||
| d59779aba1 | |||
| 8eddf3b28b | |||
| ee651b502a | |||
| eb8dfd7236 | |||
| f35ac91451 | |||
| 91107cfab1 | |||
| d407c07620 | |||
| 2fb4f24450 | |||
| d467416bfe | |||
| df18df66e7 | |||
| 76e448dc7f | |||
| e011dff0c8 | |||
| 441af1d35b | |||
| 4148246925 | |||
| 30856fa414 | |||
| 9abd2c7d26 | |||
| e85628a37b |
@@ -5,5 +5,6 @@ RUN useradd -m vscode
|
|||||||
RUN groupadd mock
|
RUN groupadd mock
|
||||||
RUN usermod -aG mock vscode
|
RUN usermod -aG mock vscode
|
||||||
RUN echo vscode ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/vscode
|
RUN echo vscode ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/vscode
|
||||||
RUN curl -Lo /etc/yum.repos.d/terra.repo https://raw.githubusercontent.com/terrapkg/subatomic-repos/main/terra.repo
|
RUN dnf -y install git 'dnf-command(config-manager)' mock createrepo_c
|
||||||
RUN dnf -y install git mock createrepo_c anda terra-mock-configs
|
RUN dnf config-manager --add-repo='https://raw.githubusercontent.com/terrapkg/subatomic-repos/main/terra.repo'
|
||||||
|
RUN dnf -y install anda terra-mock-configs
|
||||||
|
|||||||
@@ -6,24 +6,23 @@ on:
|
|||||||
paths:
|
paths:
|
||||||
- anda/**
|
- anda/**
|
||||||
branches:
|
branches:
|
||||||
- f40
|
- el10
|
||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- f40
|
- el10
|
||||||
merge_group:
|
merge_group:
|
||||||
branches:
|
branches:
|
||||||
- f40
|
- el10
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
workflow_call:
|
workflow_call:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
manifest:
|
manifest:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
|
|
||||||
outputs:
|
outputs:
|
||||||
build_matrix: ${{ steps.generate_build_matrix.outputs.build_matrix }}
|
build_matrix: ${{ steps.generate_build_matrix.outputs.build_matrix }}
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:f40
|
image: ghcr.io/terrapkg/builder:el10
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
steps:
|
steps:
|
||||||
- name: Set workspace as safe
|
- name: Set workspace as safe
|
||||||
@@ -40,11 +39,11 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
pkg: ${{ fromJson(needs.manifest.outputs.build_matrix) }}
|
pkg: ${{ fromJson(needs.manifest.outputs.build_matrix) }}
|
||||||
version: ["40"]
|
version: ["10"]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
runs-on: ${{ (matrix.pkg.arch == 'aarch64' && matrix.pkg.labels['large']) && 'arm64-lg' || matrix.pkg.arch == 'aarch64' && 'ubuntu-22.04-arm' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-22.04' }}
|
runs-on: ${{ (matrix.pkg.arch == 'aarch64' && matrix.pkg.labels['large']) && 'arm64-lg' || matrix.pkg.arch == 'aarch64' && 'ubuntu-22.04-arm' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-22.04' }}
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
|
image: ghcr.io/terrapkg/builder:el${{ matrix.version }}
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -67,10 +66,14 @@ jobs:
|
|||||||
if: ${{ matrix.pkg.labels.mock != '1' }}
|
if: ${{ matrix.pkg.labels.mock != '1' }}
|
||||||
run: |
|
run: |
|
||||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||||
dnf5 builddep -y ${dir}/*.spec
|
dnf builddep -y ${dir}/*.spec
|
||||||
|
|
||||||
|
- name: Include custom build template instead of package default
|
||||||
|
run: |
|
||||||
|
cp -v mock-configs/terra-el-dev.tpl /etc/mock/templates/
|
||||||
|
|
||||||
- name: Build with Andaman
|
- name: Build with Andaman
|
||||||
run: anda build ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }}
|
run: anda build ${{ matrix.pkg.pkg }} -c terra-el${{ matrix.version }}-dev-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }}
|
||||||
|
|
||||||
- name: Generating artifact name
|
- name: Generating artifact name
|
||||||
id: art
|
id: art
|
||||||
@@ -93,7 +96,7 @@ jobs:
|
|||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }} anda-build/rpm/rpms/*
|
terrael${{ matrix.version }} anda-build/rpm/rpms/*
|
||||||
|
|
||||||
- name: Upload source packages to subatomic
|
- name: Upload source packages to subatomic
|
||||||
if: github.event_name == 'push'
|
if: github.event_name == 'push'
|
||||||
@@ -101,7 +104,7 @@ jobs:
|
|||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }}-source anda-build/rpm/srpm/*
|
terrael${{ matrix.version }}-source anda-build/rpm/srpm/*
|
||||||
|
|
||||||
- name: Notify Madoguchi (Success)
|
- name: Notify Madoguchi (Success)
|
||||||
if: success() && github.event_name == 'push'
|
if: success() && github.event_name == 'push'
|
||||||
|
|||||||
@@ -7,54 +7,66 @@ jobs:
|
|||||||
bootstrap:
|
bootstrap:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: ["40"]
|
version: ["10"]
|
||||||
arch: ["x86_64", "aarch64"]
|
arch: ["x86_64", "aarch64"]
|
||||||
fail-fast: true
|
fail-fast: true
|
||||||
runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-22.04-arm' || 'ubuntu-22.04' }}
|
runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-22.04-arm' || 'ubuntu-22.04' }}
|
||||||
container:
|
container:
|
||||||
image: registry.fedoraproject.org/fedora-minimal:${{ matrix.version }}
|
image: quay.io/almalinuxorg/almalinux:${{ matrix.version }}-kitten
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
steps:
|
steps:
|
||||||
|
|
||||||
- name: Install repositories
|
- name: Install repositories
|
||||||
run: dnf5 install -y --setopt=install_weak_deps=False mock curl wget git-core openssl-devel cargo podman fuse-overlayfs
|
run: |
|
||||||
|
dnf install -y 'dnf-command(config-manager)'
|
||||||
|
dnf config-manager --set-enabled crb
|
||||||
|
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-${{ matrix.version }}.noarch.rpm
|
||||||
|
dnf install -y mock wget git-core openssl-devel cargo podman fuse-overlayfs rpm-build mock gzip
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ref: el${{ matrix.version }}
|
||||||
|
fetch-depth: 1
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: dnf builddep -y anda/{terra/{mock-configs,srpm-macros},tools/buildsys/subatomic}/*.spec
|
||||||
|
|
||||||
- name: Install Anda
|
- name: Install Anda
|
||||||
run: cargo install anda
|
run: cargo install anda
|
||||||
|
|
||||||
- uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
ref: f${{ matrix.version }}
|
|
||||||
fetch-depth: 1
|
|
||||||
- name: Build terra-mock-configs
|
- name: Build terra-mock-configs
|
||||||
run: |
|
run: |
|
||||||
echo "PATH=$PATH:/github/home/.cargo/bin" >> $GITHUB_ENV
|
echo "PATH=$PATH:/github/home/.cargo/bin" >> $GITHUB_ENV
|
||||||
export PATH=$PATH:/github/home/.cargo/bin
|
export PATH=$PATH:/github/home/.cargo/bin
|
||||||
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||||
anda build -c fedora-${{ matrix.version }}-${{ matrix.arch }} anda/terra/mock-configs/pkg -p rpm
|
anda build anda/terra/mock-configs/pkg --rpm-builder=rpmbuild
|
||||||
- name: Install terra-mock-configs
|
|
||||||
run: dnf5 install -y anda-build/rpm/rpms/terra-mock-configs*.rpm
|
|
||||||
|
|
||||||
- name: Build anda-srpm-macros
|
- name: Build anda-srpm-macros
|
||||||
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/terra/srpm-macros/pkg
|
run: anda build anda/terra/srpm-macros/pkg --rpm-builder=rpmbuild
|
||||||
|
|
||||||
|
- name: Build terra-release
|
||||||
|
run: anda build anda/terra/release/pkg --rpm-builder=rpmbuild
|
||||||
|
|
||||||
- name: Build Subatomic
|
- name: Build Subatomic
|
||||||
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/subatomic/pkg
|
run: anda build -c terra-el${{ matrix.version }}-dev-${{ matrix.arch }}.cfg anda/tools/buildsys/subatomic/pkg --rpm-builder=rpmbuild
|
||||||
- name: Install Subatomic
|
- name: Install Subatomic and anda-srpm-macros
|
||||||
run: dnf5 install -y ./anda-build/rpm/rpms/subatomic-*.rpm
|
run: dnf install -y ./anda-build/rpm/rpms/{subatomic,anda-srpm-macros}-*.rpm
|
||||||
|
|
||||||
|
- name: Install Build Dependencies for Andaman
|
||||||
|
run: dnf builddep -y anda/tools/buildsys/anda/*.spec
|
||||||
- name: Build Andaman
|
- name: Build Andaman
|
||||||
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/anda/pkg
|
run: anda build -c terra-el${{ matrix.version }}-dev-${{ matrix.arch }} anda/tools/buildsys/anda/pkg --rpm-builder=rpmbuild
|
||||||
|
|
||||||
- name: Upload packages to subatomic
|
- name: Upload packages to subatomic
|
||||||
run: |
|
run: |
|
||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }} anda-build/rpm/rpms/*
|
terrael${{ matrix.version }} anda-build/rpm/rpms/*
|
||||||
|
|
||||||
- name: Upload source packages to subatomic
|
- name: Upload source packages to subatomic
|
||||||
run: |
|
run: |
|
||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
|
terrael${{ matrix.version }}-source anda-build/rpm/srpm/*
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ jobs:
|
|||||||
pkgs: ${{ steps.parsing.outputs.pkgs }}
|
pkgs: ${{ steps.parsing.outputs.pkgs }}
|
||||||
builder: ${{ inputs.custom_builder }}
|
builder: ${{ inputs.custom_builder }}
|
||||||
arch: ${{ steps.parsing.outputs.arch }}
|
arch: ${{ steps.parsing.outputs.arch }}
|
||||||
runs-on: "ubuntu-22.04"
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- name: Parse Input
|
- name: Parse Input
|
||||||
id: parsing
|
id: parsing
|
||||||
@@ -44,12 +44,12 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
pkg: ${{ fromJson(needs.parse.outputs.pkgs) }}
|
pkg: ${{ fromJson(needs.parse.outputs.pkgs) }}
|
||||||
version: ["40"]
|
version: ["10"]
|
||||||
arch: ${{ fromJson(needs.parse.outputs.arch) }}
|
arch: ${{ fromJson(needs.parse.outputs.arch) }}
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-22.04-arm' || needs.parse.outputs.builder && needs.parse.outputs.builder || 'ubuntu-22.04' }}
|
runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-22.04-arm' || needs.parse.outputs.builder && needs.parse.outputs.builder || 'ubuntu-22.04' }}
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
|
image: ghcr.io/terrapkg/builder:el${{ matrix.version }}
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -57,21 +57,11 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
- name: Checkout latest Mock configs
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
repository: terrapkg/mock-configs
|
|
||||||
path: mock-configs
|
|
||||||
|
|
||||||
- name: Set up git repository
|
- name: Set up git repository
|
||||||
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||||
|
|
||||||
- name: Include custom build template instead of package default
|
|
||||||
run: |
|
|
||||||
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
|
|
||||||
|
|
||||||
- name: Build with Andaman
|
- name: Build with Andaman
|
||||||
run: anda build anda/${{ matrix.pkg }}pkg --package rpm -c mock-configs/terra-${{ matrix.version }}-${{ matrix.arch }}.cfg
|
run: anda build -c terra-el${{ matrix.version }}-dev-${{ matrix.arch }} anda/${{ matrix.pkg }}pkg
|
||||||
|
|
||||||
- name: Generating artifact name
|
- name: Generating artifact name
|
||||||
id: art
|
id: art
|
||||||
@@ -79,6 +69,7 @@ jobs:
|
|||||||
NAME=${{ matrix.pkg }}-${{ matrix.arch }}-${{ matrix.version }}
|
NAME=${{ matrix.pkg }}-${{ matrix.arch }}-${{ matrix.version }}
|
||||||
x=${NAME//\//@}
|
x=${NAME//\//@}
|
||||||
echo "name=$x" >> $GITHUB_OUTPUT
|
echo "name=$x" >> $GITHUB_OUTPUT
|
||||||
|
echo "labels=$(anda run andax/get_proj_label.rhai -l project=anda/${{ matrix.pkg }}anda.hcl)" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v4
|
- uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
@@ -93,14 +84,14 @@ jobs:
|
|||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }} anda-build/rpm/rpms/*
|
terrael${{ matrix.version }} anda-build/rpm/rpms/*
|
||||||
|
|
||||||
- name: Upload source packages to subatomic
|
- name: Upload source packages to subatomic
|
||||||
run: |
|
run: |
|
||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
|
terrael${{ matrix.version }}-source anda-build/rpm/srpm/*
|
||||||
|
|
||||||
- name: Notify Madoguchi (Success)
|
- name: Notify Madoguchi (Success)
|
||||||
if: success()
|
if: success()
|
||||||
|
|||||||
@@ -11,11 +11,11 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
pkg: ${{ fromJson(inputs.packages) }}
|
pkg: ${{ fromJson(inputs.packages) }}
|
||||||
version: ["40"]
|
version: ["10"]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
runs-on: ${{ (matrix.pkg.arch == 'aarch64' && matrix.pkg.labels['large']) && 'arm64-lg' || matrix.pkg.arch == 'aarch64' && 'ubuntu-22.04-arm' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-22.04' }}
|
runs-on: ${{ (matrix.pkg.arch == 'aarch64' && matrix.pkg.labels['large']) && 'arm64-lg' || matrix.pkg.arch == 'aarch64' && 'ubuntu-22.04-arm' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-22.04' }}
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
|
image: ghcr.io/terrapkg/builder:el${{ matrix.version }}
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -27,7 +27,7 @@ jobs:
|
|||||||
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||||
|
|
||||||
- name: CI Setup Script
|
- name: CI Setup Script
|
||||||
if: ${{ matrix.pkg.labels.mock != '1' }}
|
if: ${{ !contains(matrix.pkg.labels, 'mock') }}
|
||||||
run: |
|
run: |
|
||||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||||
if [ -f $dir/ci_setup.rhai ]; then
|
if [ -f $dir/ci_setup.rhai ]; then
|
||||||
@@ -35,13 +35,13 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
- name: Install Build Dependencies
|
- name: Install Build Dependencies
|
||||||
if: ${{ matrix.pkg.labels.mock != '1' }}
|
if: ${{ !contains(matrix.pkg.labels, 'mock') }}
|
||||||
run: |
|
run: |
|
||||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||||
dnf5 builddep -y ${dir}/*.spec
|
dnf builddep -y ${dir}/*.spec
|
||||||
|
|
||||||
- name: Build with Andaman
|
- name: Build with Andaman
|
||||||
run: anda build ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }}
|
run: anda build ${{ matrix.pkg.pkg }} -c terra-el${{ matrix.version }}-dev-${{ matrix.pkg.arch }} ${{ contains(matrix.pkg.labels, 'mock') && '' || '-rrpmbuild' }}
|
||||||
|
|
||||||
- name: Generating artifact name
|
- name: Generating artifact name
|
||||||
id: art
|
id: art
|
||||||
@@ -63,15 +63,14 @@ jobs:
|
|||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }} anda-build/rpm/rpms/*
|
terrael${{ matrix.version }} anda-build/rpm/rpms/*
|
||||||
|
|
||||||
- name: Upload source packages to subatomic
|
- name: Upload source packages to subatomic
|
||||||
if: github.event_name == 'push'
|
|
||||||
run: |
|
run: |
|
||||||
subatomic-cli upload --prune \
|
subatomic-cli upload --prune \
|
||||||
--server https://subatomic.fyralabs.com \
|
--server https://subatomic.fyralabs.com \
|
||||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||||
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
|
terrael${{ matrix.version }}-source anda-build/rpm/srpm/*
|
||||||
|
|
||||||
- name: Notify Madoguchi (Success)
|
- name: Notify Madoguchi (Success)
|
||||||
if: success()
|
if: success()
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ export p="{\"id\":\"$5\",\"ver\":\"%v\",\"rel\":\"%r\",\"arch\":\"$4\",\"dirs\":
|
|||||||
if [[ $1 == false ]]; then
|
if [[ $1 == false ]]; then
|
||||||
d=${p/\%v/?}
|
d=${p/\%v/?}
|
||||||
d=${d/\%r/?}
|
d=${d/\%r/?}
|
||||||
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci/terra$3/builds/f -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
|
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci5/terrael$3/builds/f -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -17,5 +17,5 @@ for f in anda-build/rpm/rpms/*; do
|
|||||||
r=$(lesspipe.sh $f | grep -E "Release\s*: " | sed "s@Release\s*: @@")
|
r=$(lesspipe.sh $f | grep -E "Release\s*: " | sed "s@Release\s*: @@")
|
||||||
d=${p/\%v/$v}
|
d=${p/\%v/$v}
|
||||||
d=${d/\%r/$r}
|
d=${d/\%r/$r}
|
||||||
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci5/terra$3/builds/$n -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
|
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci5/terrael$3/builds/$n -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
|
||||||
done
|
done
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
backport:
|
backport:
|
||||||
name: Backport/sync PR
|
name: Backport/sync PR
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
if: github.event.pull_request.merged
|
if: github.event.pull_request.merged
|
||||||
steps:
|
steps:
|
||||||
- name: Install SSH signing key
|
- name: Install SSH signing key
|
||||||
@@ -23,7 +23,7 @@ jobs:
|
|||||||
git config --global commit.gpgsign true
|
git config --global commit.gpgsign true
|
||||||
|
|
||||||
- name: Backport Action
|
- name: Backport Action
|
||||||
uses: sorenlouv/backport-github-action@v9.5.1
|
uses: sorenlouv/backport-github-action@v9.3.0
|
||||||
with:
|
with:
|
||||||
github_token: ${{ secrets.RABONEKO_BACKPORT_GITHUB_TOKEN }}
|
github_token: ${{ secrets.RABONEKO_BACKPORT_GITHUB_TOKEN }}
|
||||||
auto_backport_label_prefix: sync-
|
auto_backport_label_prefix: sync-
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
autoupdate:
|
autoupdate:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
branch:
|
branch:
|
||||||
@@ -15,7 +15,7 @@ jobs:
|
|||||||
- f41
|
- f41
|
||||||
- el10
|
- el10
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:f40
|
image: ghcr.io/terrapkg/builder:frawhide
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -48,7 +48,7 @@ jobs:
|
|||||||
git config user.email "raboneko@fyralabs.com"
|
git config user.email "raboneko@fyralabs.com"
|
||||||
git config gpg.format "ssh"
|
git config gpg.format "ssh"
|
||||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||||
msg="bump(branch): $(anda run andax/ci/update_commit_message.rhai)"
|
msg="bump(branch): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||||
git commit -S -a -m "$msg"
|
git commit -S -a -m "$msg"
|
||||||
git push -u origin --all
|
git push -u origin --all
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
update-comps:
|
update-comps:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:frawhide
|
image: ghcr.io/terrapkg/builder:frawhide
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
autoupdate:
|
autoupdate:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:frawhide
|
image: ghcr.io/terrapkg/builder:frawhide
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
@@ -37,7 +37,7 @@ jobs:
|
|||||||
git config user.email "raboneko@fyralabs.com"
|
git config user.email "raboneko@fyralabs.com"
|
||||||
git config gpg.format "ssh"
|
git config gpg.format "ssh"
|
||||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||||
msg="bump(nightly): $(anda run andax/ci/update_commit_message.rhai)"
|
msg="bump(nightly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||||
git commit -S -a -m "$msg"
|
git commit -S -a -m "$msg"
|
||||||
git format-patch HEAD^
|
git format-patch HEAD^
|
||||||
copy_over () {
|
copy_over () {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
autoupdate:
|
autoupdate:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:frawhide
|
image: ghcr.io/terrapkg/builder:frawhide
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
@@ -37,7 +37,7 @@ jobs:
|
|||||||
git config user.email "raboneko@fyralabs.com"
|
git config user.email "raboneko@fyralabs.com"
|
||||||
git config gpg.format "ssh"
|
git config gpg.format "ssh"
|
||||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||||
msg="bump(weekly): $(anda run andax/ci/update_commit_message.rhai)"
|
msg="bump(weekly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||||
git commit -S -a -m "$msg"
|
git commit -S -a -m "$msg"
|
||||||
git format-patch HEAD^
|
git format-patch HEAD^
|
||||||
copy_over () {
|
copy_over () {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
autoupdate:
|
autoupdate:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/terrapkg/builder:frawhide
|
image: ghcr.io/terrapkg/builder:frawhide
|
||||||
options: --cap-add=SYS_ADMIN --privileged
|
options: --cap-add=SYS_ADMIN --privileged
|
||||||
@@ -37,7 +37,7 @@ jobs:
|
|||||||
git config user.email "raboneko@fyralabs.com"
|
git config user.email "raboneko@fyralabs.com"
|
||||||
git config gpg.format "ssh"
|
git config gpg.format "ssh"
|
||||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||||
msg="bump: $(anda run andax/ci/update_commit_message.rhai)"
|
msg="bump: $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||||
git commit -S -a -m "$msg"
|
git commit -S -a -m "$msg"
|
||||||
git format-patch HEAD^
|
git format-patch HEAD^
|
||||||
copy_over () {
|
copy_over () {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
%global xurl https://files.pythonhosted.org/packages/f4/be/4b66f654302eb99e02f691ba1fdd1a5cd1f439d439b3b16f58aa4786836f/anki-25.02.7-cp39-abi3-manylinux_2_35_x86_64.whl
|
%global xurl https://files.pythonhosted.org/packages/68/9c/7685bd012e597332f8ce379a31b0d58dd4eae960da96ff43e9fcd978c93f/anki-25.02-cp39-abi3-manylinux_2_35_x86_64.whl
|
||||||
%global aurl https://files.pythonhosted.org/packages/71/40/19545c12e7d14cf00a5d669317bc39e8b0e14b538da9a1bf753a0b59269f/anki-25.02.7-cp39-abi3-manylinux_2_35_aarch64.whl
|
%global aurl https://files.pythonhosted.org/packages/da/36/741cef7b7fce943d187784549fd8de8152986067d9226f384959c07770a7/anki-25.02-cp39-abi3-manylinux_2_35_aarch64.whl
|
||||||
%global qurl https://files.pythonhosted.org/packages/c9/ea/9dd58dee2ac85626335b73b742f67dadfb25c4bb31fd607c1415dc9fdfc3/aqt-25.02.7-py3-none-any.whl
|
%global qurl https://files.pythonhosted.org/packages/2c/bc/763589b97aa5c91acf3d834beaa473c25ca7f335c7b40954fd0d5fd41ddc/aqt-25.02-py3-none-any.whl
|
||||||
|
|
||||||
Name: anki-bin
|
Name: anki-bin
|
||||||
Version: 25.02.7
|
Version: 25.02
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Flashcard program for using space repetition learning (Installed with wheel)
|
Summary: Flashcard program for using space repetition learning (Installed with wheel)
|
||||||
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
Name: anki-qt5
|
Name: anki-qt5
|
||||||
Version: 25.02.6
|
Version: 25.02
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Flashcard program for using space repetition learning
|
Summary: Flashcard program for using space repetition learning
|
||||||
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
Name: anki
|
Name: anki
|
||||||
Version: 25.02.6
|
Version: 25.02
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Flashcard program for using space repetition learning
|
Summary: Flashcard program for using space repetition learning
|
||||||
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
%global __requires_exclude ^lib-.*.so
|
%global __requires_exclude ^lib-.*.so
|
||||||
%global __provides_exclude ^lib-.*.so
|
%global __provides_exclude ^lib-.*.so
|
||||||
|
|
||||||
%global ver Audacity-3.7.4
|
%global ver Audacity-3.7.3
|
||||||
%global sanitized_ver %(echo %{ver} | sed 's/Audacity-//g')
|
%global sanitized_ver %(echo %{ver} | sed 's/Audacity-//g')
|
||||||
|
|
||||||
Name: audacity-freeworld
|
Name: audacity-freeworld
|
||||||
|
|||||||
@@ -1,41 +0,0 @@
|
|||||||
From d5e5bc6fbdab8e575299b995ed3aa26faaaf01bc Mon Sep 17 00:00:00 2001
|
|
||||||
From: Carl George <carl@george.computer>
|
|
||||||
Date: Thu, 20 Jul 2023 00:01:26 -0500
|
|
||||||
Subject: [PATCH 1/2] Rename executable to blackbox-terminal
|
|
||||||
|
|
||||||
This is to avoid file conflicts with the blackbox window manager, which
|
|
||||||
is already packaged in several Linux distros.
|
|
||||||
---
|
|
||||||
com.raggesilver.BlackBox.json | 2 +-
|
|
||||||
data/com.raggesilver.BlackBox.desktop.in | 2 +-
|
|
||||||
src/meson.build | 2 +-
|
|
||||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/data/com.raggesilver.BlackBox.desktop.in b/data/com.raggesilver.BlackBox.desktop.in
|
|
||||||
index 28f3b55..1d45a17 100644
|
|
||||||
--- a/data/com.raggesilver.BlackBox.desktop.in
|
|
||||||
+++ b/data/com.raggesilver.BlackBox.desktop.in
|
|
||||||
@@ -1,6 +1,6 @@
|
|
||||||
[Desktop Entry]
|
|
||||||
Name=Black Box
|
|
||||||
-Exec=blackbox
|
|
||||||
+Exec=blackbox-terminal
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Categories=GNOME;GTK;System;TerminalEmulator;
|
|
||||||
diff --git a/src/meson.build b/src/meson.build
|
|
||||||
index 8891f58..47d03f1 100644
|
|
||||||
--- a/src/meson.build
|
|
||||||
+++ b/src/meson.build
|
|
||||||
@@ -75,7 +75,7 @@ if get_option('blackbox_is_flatpak')
|
|
||||||
add_project_arguments('-D', 'BLACKBOX_IS_FLATPAK', language: 'vala')
|
|
||||||
endif
|
|
||||||
|
|
||||||
-executable('blackbox', blackbox_sources, config_header,
|
|
||||||
+executable('blackbox-terminal', blackbox_sources, config_header,
|
|
||||||
vala_args: '--target-glib=2.50', dependencies: blackbox_deps,
|
|
||||||
install: true,
|
|
||||||
)
|
|
||||||
--
|
|
||||||
2.45.2
|
|
||||||
|
|
||||||
@@ -1,64 +1,56 @@
|
|||||||
%global commit 53be9986dea776eb4c2804d4e342cbd3a3cf06fc
|
|
||||||
%global commit_date 20240716
|
|
||||||
%global shortcommit %{sub %{commit} 1 7}
|
|
||||||
|
|
||||||
Name: blackbox-terminal
|
Name: blackbox-terminal
|
||||||
Version: 0.15.0~^%{commit_date}.%{shortcommit}
|
Version: 0.14.0
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A beautiful GTK 4 terminal
|
Summary: A beautiful GTK 4 terminal
|
||||||
|
|
||||||
License: GPL-3.0
|
License: GPL-3.0
|
||||||
URL: https://gitlab.gnome.org/raggesilver/blackbox
|
URL: https://gitlab.gnome.org/raggesilver/blackbox
|
||||||
Source0: %{url}/-/archive/%{commit}/blackbox-%{commit}.tar.gz
|
|
||||||
# Patch modified from upstream Fedora for terra use to rename executable to blackbox-terminal to avoid conflict with blackbox wm
|
|
||||||
Patch0: 0001-Rename-executable-to-blackbox-terminal.patch
|
|
||||||
|
|
||||||
BuildRequires: vala meson gettext
|
BuildRequires: vala meson gettext
|
||||||
BuildRequires: pkgconfig(gtk4)
|
BuildRequires: pkgconfig(gtk4) >= 4.6.2
|
||||||
BuildRequires: pkgconfig(gio-2.0)
|
BuildRequires: pkgconfig(gio-2.0) >= 2.50
|
||||||
BuildRequires: pkgconfig(libadwaita-1)
|
BuildRequires: libadwaita-devel >= 1.1
|
||||||
BuildRequires: pkgconfig(pqmarble)
|
BuildRequires: pkgconfig(pqmarble) >= 2
|
||||||
BuildRequires: pkgconfig(vte-2.91-gtk4)
|
BuildRequires: pkgconfig(vte-2.91-gtk4) >= 0.69.0
|
||||||
BuildRequires: pkgconfig(json-glib-1.0)
|
BuildRequires: pkgconfig(json-glib-1.0) >= 1.4.4
|
||||||
BuildRequires: pkgconfig(libxml-2.0)
|
BuildRequires: pkgconfig(libxml-2.0) >= 2.9.12
|
||||||
BuildRequires: pkgconfig(librsvg-2.0)
|
BuildRequires: pkgconfig(librsvg-2.0) >= 2.54.0
|
||||||
BuildRequires: pkgconfig(libpcre2-8)
|
BuildRequires: pkgconfig(libpcre2-8)
|
||||||
BuildRequires: pkgconfig(graphene-gobject-1.0)
|
BuildRequires: pkgconfig(graphene-gobject-1.0)
|
||||||
BuildRequires: pkgconfig(gee-0.8)
|
BuildRequires: pkgconfig(gee-0.8)
|
||||||
BuildRequires: desktop-file-utils
|
BuildRequires: desktop-file-utils libappstream-glib cmake
|
||||||
|
Source0: %url/-/archive/v%version/blackbox-v%version.tar.gz
|
||||||
|
|
||||||
%description
|
%description
|
||||||
An elegant and customizable terminal for GNOME.
|
%{summary}.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -n blackbox-%{commit} -p1
|
%autosetup -p1 -n blackbox-v%version
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%meson -Dblackbox_is_flatpak=false
|
%meson
|
||||||
%meson_build
|
%meson_build
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%meson_install
|
%meson_install
|
||||||
|
|
||||||
%check
|
%check
|
||||||
desktop-file-validate %{buildroot}%{_datadir}/applications/com.raggesilver.BlackBox.desktop
|
appstream-util validate-relax --nonet %buildroot/%_datadir/metainfo/com.raggesilver.BlackBox.metainfo.xml
|
||||||
# don't validate appstream data because terra doesn't use it currently anyway
|
|
||||||
# appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/com.raggesilver.BlackBox.metainfo.xml
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md CHANGELOG.md
|
%doc README.md
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%{_bindir}/blackbox-terminal
|
%_bindir/blackbox
|
||||||
%{_datadir}/applications/com.raggesilver.BlackBox.desktop
|
%_bindir/terminal-toolbox
|
||||||
%{_datadir}/metainfo/com.raggesilver.BlackBox.metainfo.xml
|
%_datadir/applications/com.raggesilver.BlackBox.desktop
|
||||||
%{_datadir}/blackbox/
|
%_datadir/metainfo/com.raggesilver.BlackBox.metainfo.xml
|
||||||
%{_datadir}/glib-2.0/schemas/com.raggesilver.BlackBox.gschema.xml
|
%_datadir/blackbox/
|
||||||
%{_datadir}/icons/hicolor/scalable/actions/com.raggesilver.BlackBox-fullscreen-symbolic.svg
|
%_datadir/glib-2.0/schemas/com.raggesilver.BlackBox.gschema.xml
|
||||||
%{_datadir}/icons/hicolor/scalable/actions/com.raggesilver.BlackBox-show-headerbar-symbolic.svg
|
%_datadir/icons/hicolor/scalable/actions/com.raggesilver.BlackBox-fullscreen-symbolic.svg
|
||||||
%{_datadir}/icons/hicolor/scalable/actions/external-link-symbolic.svg
|
%_datadir/icons/hicolor/scalable/actions/com.raggesilver.BlackBox-show-headerbar-symbolic.svg
|
||||||
%{_datadir}/icons/hicolor/scalable/actions/settings-symbolic.svg
|
%_datadir/icons/hicolor/scalable/actions/external-link-symbolic.svg
|
||||||
%{_datadir}/icons/hicolor/scalable/apps/com.raggesilver.BlackBox.svg
|
%_datadir/icons/hicolor/scalable/actions/settings-symbolic.svg
|
||||||
%{_datadir}/locale/*/LC_MESSAGES/blackbox.mo
|
%_datadir/icons/hicolor/scalable/apps/com.raggesilver.BlackBox.svg
|
||||||
|
%_datadir/locale/*/LC_MESSAGES/blackbox.mo
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
rpm.global("commit", gitlab_commit("gitlab.gnome.org", "20397", "main"));
|
let txt = get("https://gitlab.gnome.org/api/v4/projects/20397/releases/");
|
||||||
if rpm.changed {
|
let ver = txt.json_arr()[0].tag_name;
|
||||||
rpm.global("commit_date", date());
|
ver.crop(1);
|
||||||
rpm.release();
|
rpm.version(ver);
|
||||||
}
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ for background device management, as well as a GUI to expertly customize your se
|
|||||||
%global __brp_mangle_shebangs %{nil}
|
%global __brp_mangle_shebangs %{nil}
|
||||||
|
|
||||||
Name: coolercontrol
|
Name: coolercontrol
|
||||||
Version: 2.2.1
|
Version: 2.0.0
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Cooling device control for Linux
|
Summary: Cooling device control for Linux
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
@@ -59,16 +59,13 @@ pushd coolercontrold
|
|||||||
%cargo_prep_online &
|
%cargo_prep_online &
|
||||||
popd
|
popd
|
||||||
|
|
||||||
pushd coolercontrol-ui
|
|
||||||
npm ci --prefer-offline &
|
|
||||||
popd
|
|
||||||
|
|
||||||
wait
|
wait
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
pushd coolercontrol-ui
|
pushd coolercontrold
|
||||||
npm run build-only &
|
%{cargo_license_online} > LICENSE.dependencies &
|
||||||
|
%cargo_build -- &
|
||||||
popd
|
popd
|
||||||
|
|
||||||
pushd coolercontrol-liqctld
|
pushd coolercontrol-liqctld
|
||||||
@@ -77,15 +74,10 @@ popd
|
|||||||
|
|
||||||
pushd coolercontrol
|
pushd coolercontrol
|
||||||
%cmake
|
%cmake
|
||||||
%cmake_build &
|
%cmake_build
|
||||||
|
wait
|
||||||
popd
|
popd
|
||||||
|
|
||||||
pushd coolercontrold
|
|
||||||
%{cargo_license_online} > LICENSE.dependencies &
|
|
||||||
wait
|
|
||||||
cp -rfp ../coolercontrol-ui/dist/* resources/app/
|
|
||||||
%cargo_build
|
|
||||||
popd
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
pushd coolercontrol-liqctld
|
pushd coolercontrol-liqctld
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: discord-canary-openasar
|
Name: discord-canary-openasar
|
||||||
Version: 0.0.697
|
Version: 0.0.615
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||||
License: MIT AND https://discord.com/terms
|
License: MIT AND https://discord.com/terms
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: discord-canary
|
Name: discord-canary
|
||||||
Version: 0.0.697
|
Version: 0.0.615
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Free Voice and Text Chat for Gamers
|
Summary: Free Voice and Text Chat for Gamers
|
||||||
URL: discord.com
|
URL: discord.com
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: discord-openasar
|
Name: discord-openasar
|
||||||
Version: 0.0.97
|
Version: 0.0.88
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||||
License: MIT AND https://discord.com/terms
|
License: MIT AND https://discord.com/terms
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: discord-ptb-openasar
|
Name: discord-ptb-openasar
|
||||||
Version: 0.0.148
|
Version: 0.0.135
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||||
License: MIT AND https://discord.com/terms
|
License: MIT AND https://discord.com/terms
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: discord-ptb
|
Name: discord-ptb
|
||||||
Version: 0.0.148
|
Version: 0.0.135
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Free Voice and Text Chat for Gamers.
|
Summary: Free Voice and Text Chat for Gamers.
|
||||||
URL: https://discord.com
|
URL: https://discord.com
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: discord
|
Name: discord
|
||||||
Version: 0.0.97
|
Version: 0.0.88
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: Free Voice and Text Chat for Gamers
|
Summary: Free Voice and Text Chat for Gamers
|
||||||
URL: https://discord.com
|
URL: https://discord.com
|
||||||
|
|||||||
@@ -1,27 +1,22 @@
|
|||||||
%global commit b174fab6bf85eeb14af2ad3f0e7427f1b9fb4b4c
|
%global commit 1ed031a2bf25c81ba3795e42c5b063779bb391bf
|
||||||
%global commit_date 20250515
|
%global commit_date 20250214
|
||||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||||
|
|
||||||
Name: envision-nightly
|
Name: envision-nightly
|
||||||
Version: %commit_date.%shortcommit
|
Version: %commit_date.%shortcommit
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: UI for building, configuring and running Monado, the open source OpenXR runtime
|
Summary: UI for building, configuring and running Monado, the open source OpenXR runtime
|
||||||
SourceLicense: AGPL-3.0-or-later
|
License: AGPL-3.0-or-later
|
||||||
License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND AGPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND ISC AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND Unicode-3.0 AND (Unlicense OR MIT) AND Zlib
|
|
||||||
URL: https://gitlab.com/gabmus/envision/
|
URL: https://gitlab.com/gabmus/envision/
|
||||||
Source0: %url/-/archive/%commit/envision-%commit.tar.gz
|
Source0: %url/-/archive/%commit/envision-%commit.tar.gz
|
||||||
BuildRequires: anda-srpm-macros
|
BuildRequires: meson ninja-build cargo
|
||||||
BuildRequires: cargo
|
|
||||||
BuildRequires: cargo-rpm-macros
|
|
||||||
BuildRequires: meson
|
|
||||||
BuildRequires: ninja-build
|
|
||||||
BuildRequires: pkgconfig(glib-2.0) >= 2.66
|
BuildRequires: pkgconfig(glib-2.0) >= 2.66
|
||||||
BuildRequires: pkgconfig(gio-2.0) >= 2.66
|
BuildRequires: pkgconfig(gio-2.0) >= 2.66
|
||||||
BuildRequires: pkgconfig(gtk4) >= 4.10.0
|
BuildRequires: pkgconfig(gtk4) >= 4.10.0
|
||||||
BuildRequires: pkgconfig(vte-2.91-gtk4) >= 0.72.0
|
BuildRequires: pkgconfig(vte-2.91-gtk4) >= 0.72.0
|
||||||
BuildRequires: pkgconfig(libadwaita-1)
|
BuildRequires: pkgconfig(libadwaita-1)
|
||||||
BuildRequires: pkgconfig(libusb-1.0)
|
BuildRequires: pkgconfig(libusb-1.0)
|
||||||
BuildRequires: pkgconfig(openssl)
|
BuildRequires: openssl-devel
|
||||||
BuildRequires: openxr-devel
|
BuildRequires: openxr-devel
|
||||||
BuildRequires: libappstream-glib
|
BuildRequires: libappstream-glib
|
||||||
BuildRequires: desktop-file-utils
|
BuildRequires: desktop-file-utils
|
||||||
@@ -35,27 +30,17 @@ Conflicts: envision
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -n envision-%commit
|
%autosetup -n envision-%commit
|
||||||
%cargo_prep_online
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# generate constants.rs from constants.rs.in
|
|
||||||
%meson
|
%meson
|
||||||
|
|
||||||
# skip subdir
|
|
||||||
sed -E "/^subdir\('src'\)/d" -i meson.build
|
|
||||||
|
|
||||||
%meson --reconfigure
|
|
||||||
%meson_build
|
%meson_build
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%meson_install
|
%meson_install
|
||||||
%cargo_install
|
|
||||||
%{cargo_license_online} > LICENSE.dependencies
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md
|
%doc README.md
|
||||||
%license LICENSE
|
%license LICENSE
|
||||||
%license LICENSE.dependencies
|
|
||||||
%_bindir/envision
|
%_bindir/envision
|
||||||
%_datadir/applications/org.gabmus.envision.Devel.desktop
|
%_datadir/applications/org.gabmus.envision.Devel.desktop
|
||||||
%_datadir/envision/
|
%_datadir/envision/
|
||||||
|
|||||||
@@ -6,15 +6,14 @@
|
|||||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||||
|
|
||||||
Name: feishin
|
Name: feishin
|
||||||
Version: 0.14.0
|
Version: 0.12.3
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: A modern self-hosted music player
|
Summary: A modern self-hosted music player
|
||||||
License: GPL-3.0
|
License: GPL-3.0
|
||||||
URL: https://github.com/jeffvli/feishin
|
URL: https://github.com/jeffvli/feishin
|
||||||
Source0: %url/archive/refs/tags/v%version.tar.gz
|
Source0: %url/archive/refs/tags/v%version.tar.gz
|
||||||
Requires: fuse mpv
|
Requires: fuse mpv
|
||||||
Packager: madonuko <mado@fyralabs.com>
|
BuildRequires: nodejs20-npm jq libxcrypt-compat
|
||||||
BuildRequires: jq libxcrypt-compat pnpm
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
%summary.
|
%summary.
|
||||||
@@ -39,9 +38,13 @@ Keywords=Music;Jellyfin;Audio;Stream;Sonixd
|
|||||||
EOF
|
EOF
|
||||||
|
|
||||||
%build
|
%build
|
||||||
pnpm i
|
export PATH="$PATH:$(pwd)/bin"
|
||||||
pnpm run postinstall
|
mkdir bin
|
||||||
pnpm run build
|
ln -s /usr/bin/node-20 bin/node
|
||||||
|
ln -s /usr/bin/npm-20 bin/npm
|
||||||
|
npm-20 install --legacy-peer-deps
|
||||||
|
npm-20 run postinstall
|
||||||
|
npm-20 run build
|
||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
|
|
||||||
%define a linux
|
%define a linux
|
||||||
@@ -49,11 +52,11 @@ pnpm run build
|
|||||||
%define a arm64
|
%define a arm64
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
pnpm exec electron-builder --linux dir --%a
|
npx-20 electron-builder --linux dir --%a
|
||||||
|
|
||||||
%install
|
%install
|
||||||
mkdir -p %buildroot%_datadir/{pixmaps,applications} %buildroot%_bindir
|
mkdir -p %buildroot%_datadir/{pixmaps,applications} %buildroot%_bindir
|
||||||
mv dist/*-unpacked %buildroot%_datadir/feishin
|
mv release/build/*-unpacked %buildroot%_datadir/feishin
|
||||||
install -Dm644 assets/icons/icon.png %buildroot%_datadir/pixmaps/feishin.png
|
install -Dm644 assets/icons/icon.png %buildroot%_datadir/pixmaps/feishin.png
|
||||||
ln -s %_datadir/feishin/feishin %buildroot%_bindir/feishin
|
ln -s %_datadir/feishin/feishin %buildroot%_bindir/feishin
|
||||||
install -Dm644 feishin.desktop %buildroot%_datadir/applications/
|
install -Dm644 feishin.desktop %buildroot%_datadir/applications/
|
||||||
|
|||||||
@@ -1,128 +0,0 @@
|
|||||||
#? https://github.com/flameshot-org/flameshot/blob/master/packaging/rpm/fedora/flameshot.spec
|
|
||||||
|
|
||||||
%global ver v12.1.0
|
|
||||||
%global commit 76f8067b2d69f847a1d858b9e4e16dbf402c8c13
|
|
||||||
%global shortcommit %{sub %{commit} 1 7}
|
|
||||||
%global commit_date 20250522
|
|
||||||
|
|
||||||
Name: flameshot.nightly
|
|
||||||
Version: %ver^%{commit_date}git.%shortcommit
|
|
||||||
Release: 1%?dist
|
|
||||||
License: GPL-3.0-or-later AND ASL-2.0 AND GPL-2.0-only AND LGPL-3.0-only AND FAL-1.3
|
|
||||||
Summary: Powerful yet simple to use screenshot software
|
|
||||||
URL: https://flameshot.org
|
|
||||||
Source0: https://github.com/flameshot-org/flameshot/archive/%commit/flameshot-%commit.tar.gz
|
|
||||||
Packager: madonuko <mado@fyralabs.com>
|
|
||||||
|
|
||||||
BuildRequires: cmake >= 3.13.0
|
|
||||||
BuildRequires: gcc-c++ >= 7
|
|
||||||
BuildRequires: fdupes
|
|
||||||
BuildRequires: libappstream-glib
|
|
||||||
BuildRequires: ninja-build
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
|
|
||||||
BuildRequires: cmake(Qt5Core) >= 5.9.0
|
|
||||||
BuildRequires: cmake(KF5GuiAddons) >= 5.89.0
|
|
||||||
BuildRequires: cmake(Qt5DBus) >= 5.9.0
|
|
||||||
BuildRequires: cmake(Qt5Gui) >= 5.9.0
|
|
||||||
BuildRequires: cmake(Qt5LinguistTools) >= 5.9.0
|
|
||||||
BuildRequires: cmake(Qt5Network) >= 5.9.0
|
|
||||||
BuildRequires: cmake(Qt5Svg) >= 5.9.0
|
|
||||||
BuildRequires: cmake(Qt5Widgets) >= 5.9.0
|
|
||||||
|
|
||||||
Requires: hicolor-icon-theme
|
|
||||||
Requires: qt5-qtbase >= 5.9.0
|
|
||||||
Requires: qt5-qttools >= 5.9.0
|
|
||||||
Requires: qt5-qtsvg%{?_isa} >= 5.9.0
|
|
||||||
|
|
||||||
%dnl Provides: flameshot = %version-%release
|
|
||||||
Conflicts: flameshot
|
|
||||||
|
|
||||||
Recommends: xdg-desktop-portal%{?_isa}
|
|
||||||
Recommends: (xdg-desktop-portal-gnome%{?_isa} if gnome-shell%{?_isa})
|
|
||||||
Recommends: (xdg-desktop-portal-kde%{?_isa} if plasma-workspace-wayland%{?_isa})
|
|
||||||
Recommends: (xdg-desktop-portal-wlr%{?_isa} if wlroots%{?_isa})
|
|
||||||
|
|
||||||
%description
|
|
||||||
Powerful and simple to use screenshot software with built-in
|
|
||||||
editor with advanced features.
|
|
||||||
|
|
||||||
Features:
|
|
||||||
|
|
||||||
* Customizable appearance.
|
|
||||||
* Easy to use.
|
|
||||||
* In-app screenshot edition.
|
|
||||||
* DBus interface.
|
|
||||||
* Upload to Imgur
|
|
||||||
|
|
||||||
|
|
||||||
%package bash-completion
|
|
||||||
Summary: Bash completion for %{name}
|
|
||||||
Requires: %{name} = %{version}-%{release}
|
|
||||||
Requires: bash-completion
|
|
||||||
Supplements: (%{name} and bash-completion)
|
|
||||||
|
|
||||||
%description bash-completion
|
|
||||||
Bash command line completion support for %{name}.
|
|
||||||
|
|
||||||
%package fish-completion
|
|
||||||
Summary: Fish completion for %{name}
|
|
||||||
Requires: %{name} = %{version}-%{release}
|
|
||||||
Requires: fish
|
|
||||||
Supplements: (%{name} and fish)
|
|
||||||
|
|
||||||
%description fish-completion
|
|
||||||
Fish command line completion support for %{name}.
|
|
||||||
|
|
||||||
%package zsh-completion
|
|
||||||
Summary: Zsh completion for %{name}
|
|
||||||
Requires: %{name} = %{version}-%{release}
|
|
||||||
Requires: zsh
|
|
||||||
Supplements: (%{name} and zsh)
|
|
||||||
|
|
||||||
%description zsh-completion
|
|
||||||
Zsh command line completion support for %{name}.
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -p1 -n flameshot-%commit
|
|
||||||
|
|
||||||
%build
|
|
||||||
%cmake -G Ninja \
|
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
|
||||||
-DUSE_WAYLAND_CLIPBOARD:BOOL=ON \
|
|
||||||
%cmake_build
|
|
||||||
|
|
||||||
%install
|
|
||||||
%cmake_install
|
|
||||||
# https://fedoraproject.org/wiki/PackagingDrafts/find_lang
|
|
||||||
%find_lang Internationalization --with-qt
|
|
||||||
%fdupes %{buildroot}%{_datadir}/icons
|
|
||||||
|
|
||||||
%check
|
|
||||||
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.metainfo.xml
|
|
||||||
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
|
||||||
|
|
||||||
%files -f Internationalization.lang
|
|
||||||
%{_datadir}/flameshot/translations/Internationalization_grc.qm
|
|
||||||
%doc README.md
|
|
||||||
%license LICENSE
|
|
||||||
%dir %{_datadir}/flameshot
|
|
||||||
%dir %{_datadir}/flameshot/translations
|
|
||||||
%{_bindir}/flameshot
|
|
||||||
%{_datadir}/applications/org.flameshot.Flameshot.desktop
|
|
||||||
%{_metainfodir}/org.flameshot.Flameshot.metainfo.xml
|
|
||||||
%{_datadir}/dbus-1/interfaces/org.flameshot.Flameshot.xml
|
|
||||||
%{_datadir}/dbus-1/services/org.flameshot.Flameshot.service
|
|
||||||
%{_datadir}/icons/hicolor/*/apps/*.png
|
|
||||||
%{_datadir}/icons/hicolor/scalable/apps/*.svg
|
|
||||||
%{_mandir}/man1/flameshot.1*
|
|
||||||
|
|
||||||
%files bash-completion
|
|
||||||
%{bash_completions_dir}/flameshot
|
|
||||||
|
|
||||||
%files fish-completion
|
|
||||||
%{fish_completions_dir}/flameshot.fish
|
|
||||||
|
|
||||||
%files zsh-completion
|
|
||||||
%{zsh_completions_dir}/_flameshot
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
rpm.global("commit", gh_commit("flameshot-org/flameshot"));
|
|
||||||
if rpm.changed() {
|
|
||||||
rpm.global("ver", gh("flameshot-org/flameshot"));
|
|
||||||
rpm.global("commit_date", date());
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
commit 86a77b2e3d69a09f75992e6795903ab56df1a900 (HEAD -> main, fork/main)
|
|
||||||
Author: Adam Fidel <adam@fidel.id>
|
|
||||||
Date: Tue Apr 22 14:52:16 2025 -0500
|
|
||||||
|
|
||||||
feat: add MimeType to .desktop file
|
|
||||||
|
|
||||||
diff --git a/data/usr/share/applications/com.flatpost.flatpostapp.desktop b/data/usr/share/applications/com.flatpost.flatpostapp.desktop
|
|
||||||
index 73013fc..d1f321d 100644
|
|
||||||
--- a/data/usr/share/applications/com.flatpost.flatpostapp.desktop
|
|
||||||
+++ b/data/usr/share/applications/com.flatpost.flatpostapp.desktop
|
|
||||||
@@ -4,3 +4,4 @@ Exec=python3 /usr/bin/flatpost
|
|
||||||
Icon=com.flatpost.flatpostapp
|
|
||||||
Type=Application
|
|
||||||
Categories=Utility;
|
|
||||||
+MimeType=application/vnd.flatpak.ref;application/vnd.flatpak.repo;
|
|
||||||
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
|
|
||||||
<mime-type type="application/vnd.flatpak.ref">
|
|
||||||
<glob pattern="*.flatpakref"/>
|
|
||||||
<comment>Flatpak Reference File</comment>
|
|
||||||
</mime-type>
|
|
||||||
<mime-type type="application/vnd.flatpak.repo">
|
|
||||||
<glob pattern="*.flatpakrepo"/>
|
|
||||||
<comment>Flatpak Repository File</comment>
|
|
||||||
</mime-type>
|
|
||||||
</mime-info>
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
Name: flatpost
|
|
||||||
Version: 1.0.6
|
|
||||||
Release: 1%?dist
|
|
||||||
License: BSD-2-Clause
|
|
||||||
Summary: Desktop environment agnostic Flathub software center.
|
|
||||||
|
|
||||||
URL: https://github.com/gloriouseggroll/flatpost
|
|
||||||
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
|
|
||||||
Source1: flatpost-mime.xml
|
|
||||||
Patch0: flatpost-desktop-mimetype.patch
|
|
||||||
|
|
||||||
BuildArch: noarch
|
|
||||||
BuildRequires: python3-devel
|
|
||||||
BuildRequires: make
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
|
|
||||||
Provides: nobara-updater
|
|
||||||
|
|
||||||
# App Deps
|
|
||||||
Requires: python
|
|
||||||
Requires: python3
|
|
||||||
Requires: python3-gobject
|
|
||||||
Requires: python3-requests
|
|
||||||
Requires: python3-pillow
|
|
||||||
Requires: python3-svgwrite
|
|
||||||
Requires: python3-fonttools
|
|
||||||
Requires: python3-numpy
|
|
||||||
|
|
||||||
Requires: flatpak
|
|
||||||
Requires: glib2
|
|
||||||
Requires: gtk3
|
|
||||||
Requires: gtk4
|
|
||||||
Requires: xdg-utils
|
|
||||||
|
|
||||||
Requires(post): shared-mime-info
|
|
||||||
Requires(postun): shared-mime-info
|
|
||||||
Requires(posttrans): shared-mime-info
|
|
||||||
|
|
||||||
%description
|
|
||||||
Desktop environment agnostic Flathub software center. Allows for browsing,
|
|
||||||
installation, removal, updating, and permission management of flatpak packages and repositories.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -p1
|
|
||||||
|
|
||||||
%build
|
|
||||||
make all DESTDIR=%{buildroot}
|
|
||||||
install -D -m644 %{SOURCE1} %{buildroot}/usr/share/mime/packages/flatpost.xml
|
|
||||||
|
|
||||||
%check
|
|
||||||
desktop-file-validate %{buildroot}%{_datadir}/applications/com.flatpost.flatpostapp.desktop
|
|
||||||
|
|
||||||
%post
|
|
||||||
xdg-icon-resource forceupdate --theme hicolor &>/dev/null
|
|
||||||
update-mime-database usr/share/mime &>/dev/null
|
|
||||||
update-desktop-database -q
|
|
||||||
|
|
||||||
%postun
|
|
||||||
xdg-icon-resource forceupdate --theme hicolor &>/dev/null
|
|
||||||
update-mime-database usr/share/mime &>/dev/null
|
|
||||||
update-desktop-database -q
|
|
||||||
|
|
||||||
%posttrans
|
|
||||||
xdg-icon-resource forceupdate --theme hicolor &>/dev/null
|
|
||||||
update-mime-database usr/share/mime &>/dev/null
|
|
||||||
update-desktop-database -q
|
|
||||||
|
|
||||||
%files
|
|
||||||
%{python3_sitelib}/flatpost/
|
|
||||||
%{_bindir}/flatpost
|
|
||||||
%{_datadir}/applications/com.flatpost.flatpostapp.desktop
|
|
||||||
%{_datadir}/flatpost/collections_data.json
|
|
||||||
%{_datadir}/icons/hicolor/1024x1024/apps/com.flatpost.flatpostapp.png
|
|
||||||
%{_datadir}/icons/hicolor/64x64/apps/com.flatpost.flatpostapp.png
|
|
||||||
%{_datadir}/mime/packages/flatpost.xml
|
|
||||||
%license %{_datadir}/licenses/flatpost/LICENSE
|
|
||||||
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
let v = gh_rawfile("GloriousEggroll/flatpost", "main", "VERSION.txt");
|
|
||||||
v.trim();
|
|
||||||
rpm.version(v);
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
Name: fontviewer
|
Name: fontviewer
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Version: 1.2.0
|
Version: 1.1.0
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: View and install fonts
|
Summary: View and install fonts
|
||||||
|
|
||||||
|
|||||||
@@ -3,19 +3,18 @@
|
|||||||
%global gtk4_version 4.14.4
|
%global gtk4_version 4.14.4
|
||||||
%global libadwaita_version 1.5.1
|
%global libadwaita_version 1.5.1
|
||||||
%global pure_protobuf_version 2.0.0
|
%global pure_protobuf_version 2.0.0
|
||||||
%global raw_ver v1.79.1
|
|
||||||
|
|
||||||
Name: komikku
|
Name: komikku
|
||||||
Version: 1.79.1
|
Version: 1.72.0
|
||||||
%forgemeta
|
%forgemeta
|
||||||
Release: 1%?dist
|
Release: 2%?dist
|
||||||
Summary: A manga reader for GNOME
|
Summary: A manga reader for GNOME
|
||||||
|
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
License: GPL-3.0-or-later
|
License: GPL-3.0-or-later
|
||||||
URL: https://valos.gitlab.io/Komikku
|
URL: https://valos.gitlab.io/Komikku
|
||||||
Source0: https://codeberg.org/valos/%{appname}/archive/%{raw_ver}.tar.gz#/%{name}-%{version}.tar.gz
|
Source0: https://codeberg.org/valos/%{appname}/archive/v%{version}.tar.gz#/%{name}-v%{version}.tar.gz
|
||||||
|
|
||||||
BuildRequires: desktop-file-utils
|
BuildRequires: desktop-file-utils
|
||||||
BuildRequires: intltool
|
BuildRequires: intltool
|
||||||
@@ -23,7 +22,6 @@ BuildRequires: libappstream-glib
|
|||||||
BuildRequires: meson >= 0.59.0
|
BuildRequires: meson >= 0.59.0
|
||||||
BuildRequires: python3-devel >= 3.8
|
BuildRequires: python3-devel >= 3.8
|
||||||
BuildRequires: blueprint-compiler
|
BuildRequires: blueprint-compiler
|
||||||
BuildRequires: cmake
|
|
||||||
|
|
||||||
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.35.9
|
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.35.9
|
||||||
BuildRequires: pkgconfig(gtk4) >= %{gtk4_version}
|
BuildRequires: pkgconfig(gtk4) >= %{gtk4_version}
|
||||||
@@ -99,7 +97,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
|
|||||||
%{_bindir}/%{name}
|
%{_bindir}/%{name}
|
||||||
%{_datadir}/%{name}/
|
%{_datadir}/%{name}/
|
||||||
%{_datadir}/applications/*.desktop
|
%{_datadir}/applications/*.desktop
|
||||||
%{_datadir}/dbus-1/services/%{uuid}.service
|
|
||||||
%{_datadir}/glib-2.0/schemas/*.gschema.xml
|
%{_datadir}/glib-2.0/schemas/*.gschema.xml
|
||||||
%{_datadir}/icons/hicolor/scalable/*/*.svg
|
%{_datadir}/icons/hicolor/scalable/*/*.svg
|
||||||
%{_datadir}/icons/hicolor/symbolic/*/*.svg
|
%{_datadir}/icons/hicolor/symbolic/*/*.svg
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
let latest_tag = get("https://codeberg.org/api/v1/repos/valos/Komikku/tags").json_arr()[0].name;
|
let latest_tag = get("https://codeberg.org/api/v1/repos/valos/Komikku/tags").json_arr()[0].name;
|
||||||
let new_version = find("([\\.\\d]+)", latest_tag, 1);
|
let new_version = find("([\\.\\d]+)", latest_tag, 1);
|
||||||
rpm.global("raw_ver", latest_tag);
|
|
||||||
rpm.version(new_version);
|
rpm.version(new_version);
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
project pkg {
|
||||||
|
rpm {
|
||||||
|
spec = "legcord-bin.spec"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,96 @@
|
|||||||
|
%define debug_package %nil
|
||||||
|
%global _build_id_links none
|
||||||
|
|
||||||
|
%ifarch x86_64
|
||||||
|
%global src LegCord-%version-linux-x64
|
||||||
|
%elifarch aarch64
|
||||||
|
%global src LegCord-%version-linux-arm64
|
||||||
|
%elifarch armv7l
|
||||||
|
%global src LegCord-%version-linux-armv7l
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Exclude private libraries
|
||||||
|
%global __requires_exclude libffmpeg.so
|
||||||
|
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
|
||||||
|
|
||||||
|
Name: legcord-bin
|
||||||
|
Version: 1.1.0
|
||||||
|
Release: 1%?dist
|
||||||
|
License: OSL-3.0
|
||||||
|
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||||
|
URL: https://github.com/LegCord/LegCord
|
||||||
|
Group: Applications/Internet
|
||||||
|
Source0: %url/releases/download/v%version/%src.zip
|
||||||
|
Source1: legcord.png
|
||||||
|
Source2: https://raw.githubusercontent.com/LegCord/LegCord/v%version/README.md
|
||||||
|
Requires: xdg-utils
|
||||||
|
BuildRequires: unzip
|
||||||
|
ExclusiveArch: x86_64 aarch64 armv7l
|
||||||
|
Conflicts: legcord
|
||||||
|
Conflicts: legcord-nightly
|
||||||
|
BuildRequires: add-determinism
|
||||||
|
Obsoletes: armcord < 3.3.2-1
|
||||||
|
|
||||||
|
%description
|
||||||
|
LegCord is a custom client designed to enhance your Discord experience
|
||||||
|
while keeping everything lightweight.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
mkdir legcord
|
||||||
|
cd legcord
|
||||||
|
unzip %SOURCE0
|
||||||
|
|
||||||
|
cat <<EOF > .legcord.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=LegCord
|
||||||
|
Comment=%summary
|
||||||
|
GenericName=Internet Messenger
|
||||||
|
Type=Application
|
||||||
|
Exec=%_bindir/legcord
|
||||||
|
Icon=legcord
|
||||||
|
Categories=Network;InstantMessaging;
|
||||||
|
StartupWMClass=legcord
|
||||||
|
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||||
|
EOF
|
||||||
|
|
||||||
|
%build
|
||||||
|
|
||||||
|
%install
|
||||||
|
cd legcord
|
||||||
|
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/legcord %buildroot%_docdir/%name
|
||||||
|
cp -a * %buildroot%_datadir/legcord/
|
||||||
|
ln -s %_datadir/legcord/legcord %buildroot%_bindir/legcord
|
||||||
|
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||||
|
chmod +x -R %buildroot%_datadir/legcord/*
|
||||||
|
chmod 755 %buildroot%_datadir/legcord/legcord
|
||||||
|
install -Dm644 .legcord.desktop %buildroot%_datadir/applications/LegCord.desktop
|
||||||
|
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/legcord.png
|
||||||
|
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
|
||||||
|
|
||||||
|
# HACK: rpm bug for unability to replace existing files on system.
|
||||||
|
%pre
|
||||||
|
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||||
|
echo "Found old %_datadir/armcord directory, removing…"
|
||||||
|
rm -rf %_datadir/armcord
|
||||||
|
fi
|
||||||
|
|
||||||
|
%files
|
||||||
|
%doc README.md
|
||||||
|
%_datadir/legcord
|
||||||
|
%_datadir/armcord
|
||||||
|
%_bindir/legcord
|
||||||
|
%_datadir/applications/LegCord.desktop
|
||||||
|
%_datadir/pixmaps/legcord.png
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
||||||
|
- Rename to LegCord.
|
||||||
|
|
||||||
|
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
|
||||||
|
- Remove libnotify dependency.
|
||||||
|
- Fix desktop entry.
|
||||||
|
- Set as noarch package because there are not binary files.
|
||||||
|
- Use /usr/share/ instead of /opt/
|
||||||
|
|
||||||
|
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
|
||||||
|
- Initial package
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 81 KiB |
@@ -0,0 +1 @@
|
|||||||
|
rpm.version(gh("LegCord/LegCord"));
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
project pkg {
|
project pkg {
|
||||||
|
arches = ["x86_64"]
|
||||||
rpm {
|
rpm {
|
||||||
spec = "legcord-nightly.spec"
|
spec = "legcord-nightly.spec"
|
||||||
}
|
}
|
||||||
labels {
|
labels {
|
||||||
nightly = 1
|
nightly = 1
|
||||||
mock = 1
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
electron=/usr/bin/electron
|
||||||
|
|
||||||
|
CONFIG=${XDG_CONFIG_HOME:-~/.config}
|
||||||
|
FLAGS="$CONFIG/armcord-flags.conf"
|
||||||
|
|
||||||
|
# Allow users to override command-line options
|
||||||
|
if [ -f "$FLAGS" ]; then
|
||||||
|
USER_FLAGS="$(cat "$FLAGS")"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086 # USER_FLAGS has to be unquoted
|
||||||
|
"$electron" /usr/share/armcord/app.asar $USER_FLAGS "$@"
|
||||||
@@ -1,75 +1,76 @@
|
|||||||
%global commit a54e083632574214e968431214f5e7ad784f313e
|
%global commit ddd87bf96716c553369c26a6de7137a3c70bc373
|
||||||
%global commit_date 20250520
|
%global commit_date 20250214
|
||||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||||
%define debug_package %nil
|
%define debug_package %nil
|
||||||
%global __provides_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$
|
|
||||||
%ifnarch aarch64
|
|
||||||
%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\aarch64*\\.so.*))$
|
|
||||||
%elifarch aarch64
|
|
||||||
%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\x86_64*\\.so.*)|(.*\\x86-64*\\.so.*))$
|
|
||||||
%endif
|
|
||||||
|
|
||||||
Name: legcord-nightly
|
Name: legcord-nightly
|
||||||
Version: %commit_date.%shortcommit
|
Version: %commit_date.%shortcommit
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
License: OSL-3.0
|
License: OSL-3.0
|
||||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||||
URL: https://github.com/Legcord/Legcord
|
URL: https://github.com/LegCord/LegCord
|
||||||
Group: Applications/Internet
|
Group: Applications/Internet
|
||||||
Packager: Owen <owen@fyralabs.com>
|
Source0: %url/archive/%commit/legcord-%commit.tar.gz
|
||||||
Requires: xdg-utils
|
Source1: launch.sh
|
||||||
Obsoletes: armcord < 3.3.2-1
|
Packager: Owen <owen@fyralabs.com>
|
||||||
Conflicts: legcord
|
Requires: electron xdg-utils
|
||||||
BuildRequires: anda-srpm-macros pnpm nodejs-npm git-core gcc gcc-c++ make desktop-file-utils zlib-ng-compat-devel
|
Provides: armcord-nightly
|
||||||
|
Obsoletes: armcord < 3.3.2-1
|
||||||
|
Conflicts: legcord-bin
|
||||||
|
Conflicts: legcord
|
||||||
|
BuildArch: noarch
|
||||||
|
BuildRequires: anda-srpm-macros pnpm
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Legcord is a custom client designed to enhance your Discord experience
|
legcord is a custom client designed to enhance your Discord experience
|
||||||
while keeping everything lightweight.
|
while keeping everything lightweight.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%git_clone %{url}.git %{commit}
|
%autosetup -n Legcord-%commit
|
||||||
|
|
||||||
|
cat <<EOF > legcord.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=LegCord
|
||||||
|
Comment=%summary
|
||||||
|
GenericName=Internet Messenger
|
||||||
|
Type=Application
|
||||||
|
Exec=/usr/bin/legcord
|
||||||
|
Icon=legcord
|
||||||
|
Categories=Network;InstantMessaging;
|
||||||
|
StartupWMClass=legcord
|
||||||
|
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||||
|
EOF
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
pnpm install
|
pnpm install --no-frozen-lockfile
|
||||||
pnpm run build
|
pnpm run packageQuick
|
||||||
pnpm run package --linux AppImage tar.gz
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
mkdir -p %{buildroot}%{_datadir}/legcord
|
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/legcord/app.asar
|
||||||
%ifarch aarch64
|
|
||||||
mv dist/linux-arm64-unpacked/* %{buildroot}%{_datadir}/legcord
|
|
||||||
%else
|
|
||||||
mv dist/linux-unpacked/* -t %{buildroot}%{_datadir}/legcord
|
|
||||||
%endif
|
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{_bindir}
|
install -Dm755 %SOURCE1 %buildroot/usr/bin/legcord
|
||||||
ln -sf %{_datadir}/legcord/legcord %{buildroot}%{_bindir}/legcord
|
install -Dm644 legcord.desktop %buildroot/usr/share/applications/LegCord.desktop
|
||||||
install -Dm644 dist/.icon-set/icon_16.png %{buildroot}%{_iconsdir}/hicolor/16x16/apps/legcord.png
|
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/legcord.png
|
||||||
install -Dm644 dist/.icon-set/icon_32.png %{buildroot}%{_iconsdir}/hicolor/32x32/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_48x48.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_128.png %{buildroot}%{_iconsdir}/hicolor/128x128/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_256.png %{buildroot}%{_iconsdir}/hicolor/256x256/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_512.png %{buildroot}%{_iconsdir}/hicolor/512x512/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_1024.png %{buildroot}%{_iconsdir}/hicolor/1024x1024/apps/legcord.png
|
|
||||||
|
|
||||||
dist/Legcord-*.AppImage --appimage-extract '*.desktop'
|
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||||
desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U" squashfs-root/legcord.desktop
|
|
||||||
|
# HACK: rpm bug for unability to replace existing files on system.
|
||||||
|
%pre
|
||||||
|
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||||
|
echo "Found old %_datadir/armcord directory, removing…"
|
||||||
|
rm -rf %_datadir/armcord
|
||||||
|
fi
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md
|
%doc README.md
|
||||||
%license license.txt
|
%license license.txt
|
||||||
%{_bindir}/legcord
|
/usr/bin/legcord
|
||||||
%{_datadir}/applications/legcord.desktop
|
/usr/share/applications/LegCord.desktop
|
||||||
%{_datadir}/legcord/
|
/usr/share/pixmaps/legcord.png
|
||||||
%{_iconsdir}/hicolor/16x16/apps/legcord.png
|
/usr/share/legcord/app.asar
|
||||||
%{_iconsdir}/hicolor/32x32/apps/legcord.png
|
/usr/share/armcord
|
||||||
%{_iconsdir}/hicolor/48x48/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/64x64/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/128x128/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/256x256/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/512x512/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/1024x1024/apps/legcord.png
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Nov 22 2024 owen <owen@fyralabs.com> - 1.0.2-2
|
* Fri Nov 22 2024 owen <owen@fyralabs.com> - 1.0.2-2
|
||||||
|
|||||||
@@ -1,8 +1,6 @@
|
|||||||
project pkg {
|
project pkg {
|
||||||
|
arches = ["x86_64"]
|
||||||
rpm {
|
rpm {
|
||||||
spec = "legcord.spec"
|
spec = "legcord.spec"
|
||||||
}
|
}
|
||||||
labels {
|
|
||||||
mock =1
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
electron=/usr/bin/electron
|
||||||
|
|
||||||
|
CONFIG=${XDG_CONFIG_HOME:-~/.config}
|
||||||
|
FLAGS="$CONFIG/armcord-flags.conf"
|
||||||
|
|
||||||
|
# Allow users to override command-line options
|
||||||
|
if [ -f "$FLAGS" ]; then
|
||||||
|
USER_FLAGS="$(cat "$FLAGS")"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086 # USER_FLAGS has to be unquoted
|
||||||
|
"$electron" /usr/share/armcord/app.asar $USER_FLAGS "$@"
|
||||||
@@ -1,75 +1,76 @@
|
|||||||
%define debug_package %nil
|
%define debug_package %nil
|
||||||
|
|
||||||
# Exclude private libraries
|
# Exclude private libraries
|
||||||
%global __provides_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$
|
%global __requires_exclude libffmpeg.so
|
||||||
%ifnarch aarch64
|
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
|
||||||
%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\aarch64*\\.so.*))$
|
|
||||||
%elifarch aarch64
|
|
||||||
%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\x86_64*\\.so.*)|(.*\\x86-64*\\.so.*))$
|
|
||||||
%endif
|
|
||||||
|
|
||||||
Name: legcord
|
Name: legcord
|
||||||
Version: 1.1.5
|
Version: 1.1.0
|
||||||
Release: 2%?dist
|
Release: 1%?dist
|
||||||
License: OSL-3.0
|
License: OSL-3.0
|
||||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||||
URL: https://github.com/Legcord/Legcord
|
URL: https://github.com/LegCord/LegCord
|
||||||
Group: Applications/Internet
|
Group: Applications/Internet
|
||||||
Packager: madonuko <mado@fyralabs.com>
|
Source1: launch.sh
|
||||||
Requires: xdg-utils
|
Packager: madonuko <mado@fyralabs.com>
|
||||||
Obsoletes: armcord < 3.3.2-1
|
Requires: electron xdg-utils
|
||||||
Obsoletes: legcord-bin < 1.1.5-2
|
Provides: armcord
|
||||||
Conflicts: legcord-nightly
|
Obsoletes: armcord < 3.3.2-1
|
||||||
BuildRequires: anda-srpm-macros pnpm nodejs-npm git-core gcc gcc-c++ make desktop-file-utils zlib-ng-compat-devel
|
Conflicts: legcord-bin
|
||||||
|
Conflicts: legcord-nightly
|
||||||
|
BuildArch: noarch
|
||||||
|
BuildRequires: anda-srpm-macros pnpm
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Legcord is a custom client designed to enhance your Discord experience
|
legcord is a custom client designed to enhance your Discord experience
|
||||||
while keeping everything lightweight.
|
while keeping everything lightweight.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%git_clone %url v%version
|
%git_clone %url v%version
|
||||||
|
|
||||||
|
cat <<EOF > legcord.desktop
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Legcord
|
||||||
|
Comment=%summary
|
||||||
|
GenericName=Internet Messenger
|
||||||
|
Type=Application
|
||||||
|
Exec=/usr/bin/legcord
|
||||||
|
Icon=legcord
|
||||||
|
Categories=Network;InstantMessaging;
|
||||||
|
StartupWMClass=legcord
|
||||||
|
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||||
|
EOF
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
pnpm install
|
pnpm install --no-frozen-lockfile
|
||||||
pnpm run build
|
pnpm run packageQuick
|
||||||
pnpm run package --linux AppImage tar.gz
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
mkdir -p %{buildroot}%{_datadir}/legcord
|
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/legcord/app.asar
|
||||||
%ifarch aarch64
|
|
||||||
mv dist/linux-arm64-unpacked/* %{buildroot}%{_datadir}/legcord
|
|
||||||
%else
|
|
||||||
mv dist/linux-unpacked/* -t %{buildroot}%{_datadir}/legcord
|
|
||||||
%endif
|
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{_bindir}
|
install -Dm755 %SOURCE1 %buildroot/usr/bin/legcord
|
||||||
ln -sf %{_datadir}/legcord/legcord %{buildroot}%{_bindir}/legcord
|
install -Dm644 legcord.desktop %buildroot/usr/share/applications/LegCord.desktop
|
||||||
install -Dm644 dist/.icon-set/icon_16.png %{buildroot}%{_iconsdir}/hicolor/16x16/apps/legcord.png
|
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/legcord.png
|
||||||
install -Dm644 dist/.icon-set/icon_32.png %{buildroot}%{_iconsdir}/hicolor/32x32/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_48x48.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_128.png %{buildroot}%{_iconsdir}/hicolor/128x128/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_256.png %{buildroot}%{_iconsdir}/hicolor/256x256/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_512.png %{buildroot}%{_iconsdir}/hicolor/512x512/apps/legcord.png
|
|
||||||
install -Dm644 dist/.icon-set/icon_1024.png %{buildroot}%{_iconsdir}/hicolor/1024x1024/apps/legcord.png
|
|
||||||
|
|
||||||
dist/Legcord-*.AppImage --appimage-extract '*.desktop'
|
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||||
desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U" squashfs-root/legcord.desktop
|
|
||||||
|
# HACK: rpm bug for unability to replace existing files on system.
|
||||||
|
%pre
|
||||||
|
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||||
|
echo "Found old %_datadir/armcord directory, removing…"
|
||||||
|
rm -rf %_datadir/armcord
|
||||||
|
fi
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md
|
%doc README.md
|
||||||
%license license.txt
|
%license license.txt
|
||||||
%{_bindir}/legcord
|
/usr/bin/legcord
|
||||||
%{_datadir}/applications/legcord.desktop
|
/usr/share/applications/LegCord.desktop
|
||||||
%{_datadir}/legcord/
|
/usr/share/pixmaps/legcord.png
|
||||||
%{_iconsdir}/hicolor/16x16/apps/legcord.png
|
/usr/share/legcord/app.asar
|
||||||
%{_iconsdir}/hicolor/32x32/apps/legcord.png
|
/usr/share/armcord
|
||||||
%{_iconsdir}/hicolor/48x48/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/64x64/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/128x128/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/256x256/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/512x512/apps/legcord.png
|
|
||||||
%{_iconsdir}/hicolor/1024x1024/apps/legcord.png
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
rpm {
|
|
||||||
spec = "mission-center.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
%global forgeurl0 https://gitlab.com/mission-center-devs/mission-center
|
|
||||||
Version: 1.0.2
|
|
||||||
%global tag0 v%{version}
|
|
||||||
|
|
||||||
%global forgeurl1 https://gitlab.com/mission-center-devs/gng
|
|
||||||
%global commit1 319d95d29cbc3c373ae61cff228e8440fbaadbbb
|
|
||||||
|
|
||||||
|
|
||||||
%forgemeta -a
|
|
||||||
|
|
||||||
Name: mission-center
|
|
||||||
Release: 1%?dist
|
|
||||||
Summary: Monitor your CPU, Memory, Disk, Network and GPU usage
|
|
||||||
|
|
||||||
License: GPL-3.0-or-later
|
|
||||||
URL: %{forgeurl0}
|
|
||||||
Source0: %{forgesource0}
|
|
||||||
Source1: %{forgesource1}
|
|
||||||
Provides: bundled(mission-center-magpie)
|
|
||||||
Provides: bundled(nvtop) = 3.2.0
|
|
||||||
#mission centere uses a patched version of nvtop
|
|
||||||
|
|
||||||
BuildRequires: meson >= 0.63
|
|
||||||
BuildRequires: cargo
|
|
||||||
BuildRequires: cmake
|
|
||||||
BuildRequires: gcc
|
|
||||||
BuildRequires: gcc-c++
|
|
||||||
BuildRequires: pkgconfig(protobuf)
|
|
||||||
BuildRequires: pkgconfig(python3)
|
|
||||||
BuildRequires: pkgconfig(libdrm)
|
|
||||||
BuildRequires: pkgconfig(gbm)
|
|
||||||
BuildRequires: pkgconfig(libudev)
|
|
||||||
BuildRequires: pkgconfig(gtk4)
|
|
||||||
BuildRequires: pkgconfig(egl)
|
|
||||||
BuildRequires: libadwaita-devel
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
BuildRequires: blueprint-compiler
|
|
||||||
BuildRequires: cargo-rpm-macros >= 24
|
|
||||||
BuildRequires: gettext
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
BuildRequires: appstream-data
|
|
||||||
BuildRequires: libappstream-glib
|
|
||||||
Recommends: nethogs
|
|
||||||
|
|
||||||
%description
|
|
||||||
Monitor your CPU, Memory, Disk, Network and GPU usage
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%forgesetup -z 0
|
|
||||||
mkdir -p ./subprojects/magpie
|
|
||||||
tar -x --strip-components=1 -f %{SOURCE1} -C ./subprojects/magpie
|
|
||||||
pushd ./subprojects/magpie/
|
|
||||||
%cargo_prep_online
|
|
||||||
popd
|
|
||||||
%cargo_prep_online
|
|
||||||
%{cargo_license_summary_online}
|
|
||||||
# %cargo_license_online > LICENSE.dependencies
|
|
||||||
#builds is erroring
|
|
||||||
|
|
||||||
%build
|
|
||||||
%meson
|
|
||||||
%meson_build
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%meson_install
|
|
||||||
%find_lang missioncenter
|
|
||||||
|
|
||||||
%check
|
|
||||||
desktop-file-validate %{buildroot}/%{_datadir}/applications/io.missioncenter.MissionCenter.desktop
|
|
||||||
appstream-util validate-relax %{buildroot}/%{_datadir}/metainfo/io.missioncenter.MissionCenter.metainfo.xml
|
|
||||||
%meson_test
|
|
||||||
|
|
||||||
# https://gitlab.com/mission-center-devs/mission-center/-/wikis/Home/Nethogs
|
|
||||||
%post
|
|
||||||
if command -v nethogs 2>&1 >/dev/null
|
|
||||||
then
|
|
||||||
setcap "cap_net_admin,cap_net_raw,cap_dac_read_search,cap_sys_ptrace+pe" "$(which nethogs)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
%files -f missioncenter.lang
|
|
||||||
%doc README.md
|
|
||||||
%license COPYING
|
|
||||||
#builds is erroring
|
|
||||||
# [%]license LICENSE.dependencies
|
|
||||||
%{_datadir}/missioncenter/
|
|
||||||
%{_datadir}/applications/io.missioncenter.MissionCenter.desktop
|
|
||||||
%{_datadir}/metainfo/io.missioncenter.MissionCenter.metainfo.xml
|
|
||||||
%{_datadir}/glib-2.0/schemas/io.missioncenter.MissionCenter.gschema.xml
|
|
||||||
%{_datadir}/icons/hicolor/scalable/apps/io.missioncenter.MissionCenter.svg
|
|
||||||
%{_datadir}/icons/hicolor/symbolic/apps/io.missioncenter.MissionCenter-symbolic.svg
|
|
||||||
%{_bindir}/missioncenter-magpie
|
|
||||||
%{_bindir}/missioncenter
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
%autochangelog
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
rpm.version(gitlab_tag("44426042"));
|
|
||||||
if rpm.changed() {
|
|
||||||
rpm.global("commit1", gitlab_commit("66855638", "main"));
|
|
||||||
}
|
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
%global commit 43e83dc74bb43056634fb2cb91c0dfc3ce047767
|
%global commit 23e1fb472a165917e623aede9052ab23f03d1ac3
|
||||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||||
%global commit_date 20250522
|
%global commit_date 20250217
|
||||||
%global ver 0.40.0
|
%global ver 0.39.0
|
||||||
|
|
||||||
Name: mpv-nightly
|
Name: mpv-nightly
|
||||||
Version: %ver^%commit_date.%shortcommit
|
Version: %ver^%commit_date.%shortcommit
|
||||||
Release: 1%?dist
|
Release: 2%?dist
|
||||||
|
|
||||||
License: GPL-2.0-or-later AND LGPL-2.1-or-later
|
License: GPL-2.0-or-later AND LGPL-2.1-or-later
|
||||||
Summary: Movie player playing most video formats and DVDs
|
Summary: Movie player playing most video formats and DVDs
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
v1.11.13
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
rpm {
|
|
||||||
spec = "nekoray.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Version=1.0
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Name=nekoray
|
|
||||||
Categories=Network;
|
|
||||||
Comment=Qt based cross-platform GUI proxy configuration manager (backend: sing-box)
|
|
||||||
Comment[zh_CN]=基于 Qt 的跨平台代理配置管理器 (后端 sing-box)
|
|
||||||
Keywords=Internet;VPN;Proxy;sing-box;
|
|
||||||
Exec=/bin/nekoray
|
|
||||||
Icon=/usr/share/icons/nekoray.ico
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
/lib64/nekoray/nekoray -appdata "${@}"
|
|
||||||
@@ -1,93 +0,0 @@
|
|||||||
%global gomodulesmode GO111MODULE=on
|
|
||||||
Name: nekoray
|
|
||||||
Version: 4.3.5
|
|
||||||
Release: 0%{?autorelease}
|
|
||||||
Summary: Qt based cross-platform GUI proxy configuration manager (backend: sing-box)
|
|
||||||
URL: https://github.com/Mahdi-zarei/nekoray
|
|
||||||
License: GPLv3
|
|
||||||
|
|
||||||
Source0: https://github.com/Mahdi-zarei/nekoray/archive/refs/tags/%{version}.tar.gz#/nekoray-%{version}.tar.gz
|
|
||||||
Packager: bunzuhbu <g89156436@gmail.com>
|
|
||||||
Source1: vendor-%{version}.tar.gz
|
|
||||||
%define fetch_vendor %{_rpmconfigdir}/rpmuncompress -xv %{SOURCE1}
|
|
||||||
|
|
||||||
Source2: Sagernet.SingBox.Version.txt
|
|
||||||
%define singbox_version $(cat %{SOURCE2})
|
|
||||||
|
|
||||||
Source3: %{name}.desktop
|
|
||||||
Source4: %{name}.sh
|
|
||||||
|
|
||||||
BuildRequires: rpm_macro(cmake)
|
|
||||||
BuildRequires: rpm_macro(cmake_build)
|
|
||||||
BuildRequires: rpm_macro(cmake_install)
|
|
||||||
BuildRequires: cmake
|
|
||||||
BuildRequires: gcc-c++
|
|
||||||
BuildRequires: pkgconfig(protobuf)
|
|
||||||
BuildRequires: pkgconfig(libcurl)
|
|
||||||
BuildRequires: cmake(yaml-cpp)
|
|
||||||
BuildRequires: cmake(ZXing)
|
|
||||||
BuildRequires: cmake(absl)
|
|
||||||
BuildRequires: cmake(cpr)
|
|
||||||
BuildRequires: cmake(Qt6)
|
|
||||||
BuildRequires: cmake(Qt6Svg)
|
|
||||||
BuildRequires: cmake(Qt6Linguist)
|
|
||||||
BuildRequires: cmake(Qt6Charts)
|
|
||||||
BuildRequires: patchelf
|
|
||||||
BuildRequires: sed
|
|
||||||
BuildRequires: golang
|
|
||||||
BuildRequires: rpm_macro(gobuildflags)
|
|
||||||
Requires: %{name}-core
|
|
||||||
%define core nekobox_core
|
|
||||||
|
|
||||||
%package core
|
|
||||||
Summary: %{summary}
|
|
||||||
|
|
||||||
%description
|
|
||||||
%{summary}
|
|
||||||
|
|
||||||
%description core
|
|
||||||
%{summary}
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -p1 -n %{name}-%{version}
|
|
||||||
sed -i 's~find_package(Protobuf CONFIG REQUIRED)~find_package(Protobuf REQUIRED)~' cmake/myproto.cmake
|
|
||||||
sed -i 's~add_library(qhotkey 3rdparty/QHotkey/qhotkey.cpp)~add_library(qhotkey STATIC 3rdparty/QHotkey/qhotkey.cpp)~' cmake/QHotkey.cmake
|
|
||||||
sed -i 's~ImageFormat::BGRA~ImageFormat::BGR~' 3rdparty/ZxingQtReader.hpp
|
|
||||||
pushd core/server
|
|
||||||
%{fetch_vendor}
|
|
||||||
popd
|
|
||||||
|
|
||||||
%build
|
|
||||||
%cmake
|
|
||||||
%cmake_build
|
|
||||||
DEST=$PWD/%{__cmake_builddir}/%{core}
|
|
||||||
pushd core/server
|
|
||||||
go build %{gobuildflags} -o $DEST -trimpath -ldflags "-B 0x$(echo "%{name}-%{version}-%{release}-${SOURCE_DATE_EPOCH:-}" | sha1sum | cut -d ' ' -f1) -w -s -X 'github.com/sagernet/sing-box/constant.Version=%{singbox_version}'" -tags "with_clash_api,with_gvisor,with_quic,with_wireguard,with_utls,with_ech,with_dhcp"
|
|
||||||
popd
|
|
||||||
|
|
||||||
%install
|
|
||||||
mkdir -p %{buildroot}%{_libdir}/%{name}
|
|
||||||
mkdir -p %{buildroot}%{_bindir}
|
|
||||||
mkdir -p %{buildroot}%{_datadir}/applications
|
|
||||||
mkdir -p %{buildroot}%{_datadir}/icons
|
|
||||||
|
|
||||||
cp %{SOURCE4} %{buildroot}%{_bindir}/%{name}
|
|
||||||
cp %{SOURCE3} %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
||||||
sed -i 's~/bin~%{_bindir}~g;s~/usr/share~%{_datadir}~g;s~nekoray~%{name}~g' %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
||||||
sed -i 's~/bin~%{_bindir}~g;s~/lib64~%{_libdir}~g;s~nekoray~%{name}~g' %{buildroot}%{_bindir}/%{name}
|
|
||||||
cp %{__cmake_builddir}/%{name} %{buildroot}%{_libdir}/%{name}/%{name}
|
|
||||||
cp %{__cmake_builddir}/%{core} %{buildroot}%{_libdir}/%{name}/%{core}
|
|
||||||
cp res/nekoray.ico %{buildroot}%{_datadir}/icons/%{name}.ico
|
|
||||||
patchelf --remove-rpath %{buildroot}%{_libdir}/%{name}/%{name}
|
|
||||||
patchelf --remove-rpath %{buildroot}%{_libdir}/%{name}/%{core}
|
|
||||||
|
|
||||||
%files
|
|
||||||
%attr(0755, -, -) %{_bindir}/%{name}
|
|
||||||
%attr(0755, -, -) %{_libdir}/%{name}/%{name}
|
|
||||||
%attr(0644, -, -) %{_datadir}/icons/%{name}.ico
|
|
||||||
%attr(0644, -, -) %{_datadir}/applications/%{name}.desktop
|
|
||||||
|
|
||||||
%files core
|
|
||||||
%dir %{_libdir}/%{name}
|
|
||||||
%attr(0755, -, -) %{_libdir}/%{name}/%{core}
|
|
||||||
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
let sourcedir = "anda/apps/nekoray";
|
|
||||||
|
|
||||||
sh(`dnf in -y golang rpmdevtools tar rpm-build coreutils`, #{});
|
|
||||||
sh(`pushd ${sourcedir}; bash -x pre.sh; popd`, #{});
|
|
||||||
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
export sourcedir="$PWD"
|
|
||||||
rpmdev-spectool --all --get-files nekoray.spec
|
|
||||||
version=$(rpmspec --query --queryformat "%{VERSION}\n" nekoray.spec | uniq)
|
|
||||||
|
|
||||||
tar -xzf "nekoray-${version}.tar.gz"
|
|
||||||
pushd "nekoray-${version}/core/server"
|
|
||||||
go mod vendor
|
|
||||||
tar -czf "${sourcedir}/vendor-${version}.tar.gz" vendor
|
|
||||||
popd
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
rpm.version(find(`([\d.]+)-\d+-\d+-\d+`, gh_rawfile("Mahdi-zarei/nekoray", "dev", "nekoray_version.txt"), 1));
|
|
||||||
|
|
||||||
open_file("anda/apps/nekoray/Sagernet.SingBox.Version.txt", "w").write(gh("sagernet/sing-box"));
|
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
%global __brp_mangle_shebangs %{nil}
|
%global __brp_mangle_shebangs %{nil}
|
||||||
|
|
||||||
Name: neohtop
|
Name: neohtop
|
||||||
Version: 1.2.0
|
Version: 1.1.2
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
Summary: System monitoring on steroids
|
Summary: System monitoring on steroids
|
||||||
License: MIT
|
License: MIT
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
%define debug_package %nil
|
%define debug_package %nil
|
||||||
|
|
||||||
Name: peazip
|
Name: peazip
|
||||||
Version: 10.5.0
|
Version: 10.3.0
|
||||||
Release: 1%?dist
|
Release: 2%?dist
|
||||||
Summary: Free Zip / Unzip software and Rar file extractor. Cross-platform file and archive manager
|
Summary: Free Zip / Unzip software and Rar file extractor. Cross-platform file and archive manager
|
||||||
License: LGPL-3.0-only
|
License: LGPL-3.0-only
|
||||||
URL: https://peazip.github.io
|
URL: https://peazip.github.io
|
||||||
@@ -101,19 +101,10 @@ lazbuild --ws=qt6 dev/project_pea.lpi && cp dev/pea ../pea.qt6
|
|||||||
%install
|
%install
|
||||||
install -Dm755 peazip.* -t %buildroot%_bindir
|
install -Dm755 peazip.* -t %buildroot%_bindir
|
||||||
install -Dm755 pea.* -t %buildroot%_bindir
|
install -Dm755 pea.* -t %buildroot%_bindir
|
||||||
install -Dm644 peazip-sources/res/share/batch/freedesktop_integration/peazip.desktop -t %{buildroot}%{_datadir}/applications
|
|
||||||
install -Dm644 peazip-sources/res/share/batch/freedesktop_integration/*.png -t %{buildroot}%{_datadir}/pixmaps
|
|
||||||
install -Dm644 peazip-sources/res/share/batch/freedesktop_integration/KDE-servicemenus/KDE6-dolphin/peazip-kde6.desktop -t %{buildroot}%{_datadir}/kio/servicemenus
|
|
||||||
install -Dm644 peazip-sources/res/share/batch/freedesktop_integration/Nautilus-scripts/PeaZip/* -t %{buildroot}%{_datadir}/nautilus/scripts/PeaZip
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc README.md
|
%doc README.md
|
||||||
%license LICENSE SECURITY.md
|
%license LICENSE SECURITY.md
|
||||||
%{_datadir}/applications/peazip.desktop
|
|
||||||
%{_datadir}/pixmaps/peazip*.png
|
|
||||||
%{_datadir}/kio/servicemenus/peazip-kde6.desktop
|
|
||||||
%dir %{_datadir}/nautilus/scripts/PeaZip
|
|
||||||
%{_datadir}/nautilus/scripts/PeaZip/*
|
|
||||||
|
|
||||||
%files -n pea
|
%files -n pea
|
||||||
%doc README.md
|
%doc README.md
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
%global ver 2025-06-15
|
%global ver 2025-03-18
|
||||||
%global goodver %(echo %ver | sed 's/-//g')
|
%global goodver %(echo %ver | sed 's/-//g')
|
||||||
%global __brp_mangle_shebangs %{nil}
|
%global __brp_mangle_shebangs %{nil}
|
||||||
%bcond_without mold
|
%bcond_without mold
|
||||||
@@ -31,7 +31,7 @@ Packager: madonuko <mado@fyralabs.com>
|
|||||||
%doc README.md
|
%doc README.md
|
||||||
%license LICENSE.md
|
%license LICENSE.md
|
||||||
%license LICENSE.dependencies
|
%license LICENSE.dependencies
|
||||||
%_bindir/ruffle
|
%_bindir/ruffle_desktop
|
||||||
%_datadir/applications/rs.ruffle.Ruffle.desktop
|
%_datadir/applications/rs.ruffle.Ruffle.desktop
|
||||||
%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
|
%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
|
||||||
%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
|
%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
|
||||||
@@ -39,18 +39,18 @@ Packager: madonuko <mado@fyralabs.com>
|
|||||||
%prep
|
%prep
|
||||||
%autosetup -n ruffle-nightly-%ver -p1
|
%autosetup -n ruffle-nightly-%ver -p1
|
||||||
%cargo_prep_online
|
%cargo_prep_online
|
||||||
|
sed -iE 's@^Exec=ruffle %%u$@Exec=ruffle_desktop %%u@' desktop/packages/linux/rs.ruffle.Ruffle.desktop
|
||||||
|
cat desktop/packages/linux/rs.ruffle.Ruffle.desktop
|
||||||
|
|
||||||
%build
|
%build
|
||||||
cd desktop
|
%{cargo_license_online} > LICENSE.dependencies
|
||||||
%cargo_build
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
install -Dm755 target/rpm/ruffle_desktop %buildroot%_bindir/ruffle
|
cd desktop
|
||||||
install -Dm644 desktop/packages/linux/rs.ruffle.Ruffle.svg %buildroot%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
|
%cargo_install
|
||||||
install -Dm644 desktop/packages/linux/rs.ruffle.Ruffle.desktop %buildroot%_datadir/applications/rs.ruffle.Ruffle.desktop
|
install -Dm644 packages/linux/rs.ruffle.Ruffle.svg %buildroot%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
|
||||||
install -Dm644 desktop/packages/linux/rs.ruffle.Ruffle.metainfo.xml %buildroot%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
|
install -Dm644 packages/linux/rs.ruffle.Ruffle.desktop %buildroot%_datadir/applications/rs.ruffle.Ruffle.desktop
|
||||||
|
install -Dm644 packages/linux/rs.ruffle.Ruffle.metainfo.xml %buildroot%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
|
||||||
%{cargo_license_online} > LICENSE.dependencies
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon Jul 29 2024 madonuko <mado@fyralabs.com>
|
* Mon Jul 29 2024 madonuko <mado@fyralabs.com>
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
%global realname subtitleedit
|
%global realname subtitleedit
|
||||||
|
|
||||||
Name: %realname.bin
|
Name: %realname.bin
|
||||||
Version: 4.0.12
|
Version: 4.0.11
|
||||||
Release: 2%?dist
|
Release: 1%?dist
|
||||||
Summary: An advanced subtitle editor and converter
|
Summary: An advanced subtitle editor and converter
|
||||||
License: GPL-3.0-only
|
License: GPL-3.0-only
|
||||||
URL: https://www.nikse.dk/SubtitleEdit
|
URL: https://www.nikse.dk/SubtitleEdit
|
||||||
@@ -13,7 +13,7 @@ Packager: madonuko <mado@fyralabs.com>
|
|||||||
Provides: %realname = %evr
|
Provides: %realname = %evr
|
||||||
Conflicts: %realname
|
Conflicts: %realname
|
||||||
BuildRequires: unzip anda-srpm-macros
|
BuildRequires: unzip anda-srpm-macros
|
||||||
Requires: dejavu-sans-mono-fonts mono-core
|
Requires: mono dejavu-fonts
|
||||||
|
|
||||||
%description
|
%description
|
||||||
%summary.
|
%summary.
|
||||||
@@ -33,7 +33,7 @@ EOF
|
|||||||
|
|
||||||
cat<<EOF > subtitleedit
|
cat<<EOF > subtitleedit
|
||||||
#!/usr/bin/sh
|
#!/usr/bin/sh
|
||||||
exec mono /usr/share/subtitleedit/SubtitleEdit.exe "$@"
|
exec mono /opt/subtitleedit/SubtitleEdit.exe "$@"
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
From 44046bfbcb30a19c45416113a2a82a4d17a1a998 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Mon, 14 Aug 2023 14:06:45 +0200
|
||||||
|
Subject: [PATCH 01/10] main: update GPUs comment for dbus property
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
src/net.hadess.SwitcherooControl.xml | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/net.hadess.SwitcherooControl.xml b/src/net.hadess.SwitcherooControl.xml
|
||||||
|
index e52bc1a..59a8896 100644
|
||||||
|
--- a/src/net.hadess.SwitcherooControl.xml
|
||||||
|
+++ b/src/net.hadess.SwitcherooControl.xml
|
||||||
|
@@ -38,7 +38,8 @@
|
||||||
|
will contain a user-facing name for the GPU, the "Environment" (as) key will
|
||||||
|
contain an array of even number of strings, each being an environment
|
||||||
|
variable to set to use the GPU, followed by its value, the "Default" (b) key
|
||||||
|
- will tag the default (usually integrated) GPU.
|
||||||
|
+ will tag the default GPU, the "Discrete" (b) key tags if the GPU is a
|
||||||
|
+ dedicated component.
|
||||||
|
-->
|
||||||
|
<property name="GPUs" type="aa{sv}" access="read"/>
|
||||||
|
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
@@ -0,0 +1,379 @@
|
|||||||
|
From 4f31415cb61a50c2bcba1510a7511518417d0970 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Mon, 11 Sep 2023 15:21:46 +0200
|
||||||
|
Subject: [PATCH 02/10] main: add Discrete key
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
.gitlab-ci.yml | 1 +
|
||||||
|
data/30-discrete-gpu.rules.in | 3 +
|
||||||
|
data/meson.build | 7 ++
|
||||||
|
meson.build | 9 +++
|
||||||
|
meson_options.txt | 24 +++++++
|
||||||
|
src/discrete-detection/amdgpu.c | 46 +++++++++++++
|
||||||
|
src/discrete-detection/meson.build | 18 +++++
|
||||||
|
src/discrete-detection/nouveau.c | 105 +++++++++++++++++++++++++++++
|
||||||
|
src/meson.build | 4 +-
|
||||||
|
src/switcheroo-control.c | 16 +++++
|
||||||
|
10 files changed, 232 insertions(+), 1 deletion(-)
|
||||||
|
create mode 100644 data/30-discrete-gpu.rules.in
|
||||||
|
create mode 100644 src/discrete-detection/amdgpu.c
|
||||||
|
create mode 100644 src/discrete-detection/meson.build
|
||||||
|
create mode 100644 src/discrete-detection/nouveau.c
|
||||||
|
|
||||||
|
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
|
||||||
|
index a6aa3c7..a09fe20 100644
|
||||||
|
--- a/.gitlab-ci.yml
|
||||||
|
+++ b/.gitlab-ci.yml
|
||||||
|
@@ -3,6 +3,7 @@ image: fedora:rawhide
|
||||||
|
variables:
|
||||||
|
DEPENDENCIES: glib2-devel
|
||||||
|
libgudev-devel
|
||||||
|
+ libdrm-devel
|
||||||
|
gtk-doc
|
||||||
|
gcc
|
||||||
|
gcc-c++
|
||||||
|
diff --git a/data/30-discrete-gpu.rules.in b/data/30-discrete-gpu.rules.in
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..a803ed4
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/data/30-discrete-gpu.rules.in
|
||||||
|
@@ -0,0 +1,3 @@
|
||||||
|
+DRIVERS=="amdgpu", SUBSYSTEM=="drm", PROGRAM="@libexecdir@/check-discrete-amdgpu $env{DEVNAME}", TAG+="switcheroo-discrete-gpu"
|
||||||
|
+DRIVERS=="nouveau", SUBSYSTEM=="drm", PROGRAM="@libexecdir@/check-discrete-nouveau $env{DEVNAME}", TAG+="switcheroo-discrete-gpu"
|
||||||
|
+DRIVERS=="nvidia", TAG+="switcheroo-discrete-gpu"
|
||||||
|
diff --git a/data/meson.build b/data/meson.build
|
||||||
|
index 85e5c93..38cf96c 100644
|
||||||
|
--- a/data/meson.build
|
||||||
|
+++ b/data/meson.build
|
||||||
|
@@ -17,3 +17,10 @@ install_data(
|
||||||
|
'30-pci-intel-gpu.hwdb',
|
||||||
|
install_dir: hwdb_dir,
|
||||||
|
)
|
||||||
|
+
|
||||||
|
+configure_file(
|
||||||
|
+ input: '30-discrete-gpu.rules.in',
|
||||||
|
+ output: '30-discrete-gpu.rules',
|
||||||
|
+ configuration: data_conf,
|
||||||
|
+ install_dir: rules_dir,
|
||||||
|
+)
|
||||||
|
diff --git a/meson.build b/meson.build
|
||||||
|
index b8f4bff..b3aaf0c 100644
|
||||||
|
--- a/meson.build
|
||||||
|
+++ b/meson.build
|
||||||
|
@@ -20,6 +20,9 @@ gnome = import('gnome')
|
||||||
|
glib = dependency('glib-2.0', version: '>= 2.56.0')
|
||||||
|
gio = dependency('gio-2.0', version: '>= 2.56.0')
|
||||||
|
gudev = dependency('gudev-1.0', version: '>= 232')
|
||||||
|
+libdrm = dependency('libdrm', version: '>= 2.4.97', required: get_option('libdrm'))
|
||||||
|
+libdrm_nouveau = dependency('libdrm_nouveau', version: '>= 2.4.97', required: get_option('libdrm_nouveau'))
|
||||||
|
+libdrm_amdgpu = dependency('libdrm_amdgpu', version: '>= 2.4.97', required: get_option('libdrm_amdgpu'))
|
||||||
|
|
||||||
|
systemd_systemunitdir = get_option('systemdsystemunitdir')
|
||||||
|
if systemd_systemunitdir == ''
|
||||||
|
@@ -32,6 +35,12 @@ if hwdb_dir == ''
|
||||||
|
hwdb_dir = udevdir / 'hwdb.d'
|
||||||
|
endif
|
||||||
|
|
||||||
|
+rules_dir = get_option('rulesdir')
|
||||||
|
+if rules_dir == ''
|
||||||
|
+ udevdir = dependency('udev').get_pkgconfig_variable('udevdir')
|
||||||
|
+ rules_dir = udevdir / 'rules.d'
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
# Make like license available in the build root for docs
|
||||||
|
configure_file(
|
||||||
|
input: 'COPYING',
|
||||||
|
diff --git a/meson_options.txt b/meson_options.txt
|
||||||
|
index c8d9619..b8d671a 100644
|
||||||
|
--- a/meson_options.txt
|
||||||
|
+++ b/meson_options.txt
|
||||||
|
@@ -10,6 +10,12 @@ option('hwdbdir',
|
||||||
|
description: 'Directory for hwdb files',
|
||||||
|
)
|
||||||
|
|
||||||
|
+option('rulesdir',
|
||||||
|
+ type: 'string',
|
||||||
|
+ value: '',
|
||||||
|
+ description: 'Directory for ruke files',
|
||||||
|
+)
|
||||||
|
+
|
||||||
|
option('gtk_doc',
|
||||||
|
type: 'boolean',
|
||||||
|
value: false,
|
||||||
|
@@ -21,3 +27,21 @@ option('tests',
|
||||||
|
type: 'boolean',
|
||||||
|
value: false
|
||||||
|
)
|
||||||
|
+
|
||||||
|
+option('libdrm',
|
||||||
|
+ description: 'Whether libdrm should be used to probe GPUs',
|
||||||
|
+ type: 'feature',
|
||||||
|
+ value: 'auto'
|
||||||
|
+)
|
||||||
|
+
|
||||||
|
+option('libdrm_nouveau',
|
||||||
|
+ description: 'Whether libdrm_nouveau should be used to probe Nvidia GPUs',
|
||||||
|
+ type: 'feature',
|
||||||
|
+ value: 'auto'
|
||||||
|
+)
|
||||||
|
+
|
||||||
|
+option('libdrm_amdgpu',
|
||||||
|
+ description: 'Whether libdrm_amdgpu should be used to probe AMD GPUs',
|
||||||
|
+ type: 'feature',
|
||||||
|
+ value: 'auto'
|
||||||
|
+)
|
||||||
|
diff --git a/src/discrete-detection/amdgpu.c b/src/discrete-detection/amdgpu.c
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..2d9804f
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/discrete-detection/amdgpu.c
|
||||||
|
@@ -0,0 +1,46 @@
|
||||||
|
+
|
||||||
|
+#include <fcntl.h>
|
||||||
|
+#include <stdlib.h>
|
||||||
|
+#include <stdio.h>
|
||||||
|
+#include <gio/gio.h>
|
||||||
|
+#include <gudev/gudev.h>
|
||||||
|
+
|
||||||
|
+#include <amdgpu.h>
|
||||||
|
+#include <amdgpu_drm.h>
|
||||||
|
+
|
||||||
|
+typedef int handle;
|
||||||
|
+G_DEFINE_AUTO_CLEANUP_FREE_FUNC(handle, close, -1)
|
||||||
|
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(amdgpu_device_handle, free);
|
||||||
|
+
|
||||||
|
+int main(int argc, char** argv)
|
||||||
|
+{
|
||||||
|
+ if (argc < 2)
|
||||||
|
+ {
|
||||||
|
+ puts ("check-discrete-amdgpu [DEVNAME]");
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ const char *devname;
|
||||||
|
+ g_auto(handle) fd = -1;
|
||||||
|
+ g_autoptr(GUdevDevice) parent = NULL;
|
||||||
|
+ struct drm_amdgpu_info_device device_info = {0};
|
||||||
|
+ amdgpu_device_handle device = NULL;
|
||||||
|
+ uint32_t drm_major, drm_minor;
|
||||||
|
+
|
||||||
|
+ devname = argv[1];
|
||||||
|
+ fd = open (devname, O_RDWR);
|
||||||
|
+ if (fd < 0)
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+ if (amdgpu_device_initialize (fd, &drm_major, &drm_minor, &device))
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+ if (amdgpu_query_info (device, AMDGPU_INFO_DEV_INFO, sizeof(device_info), &device_info))
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+ /* AMDGPU_IDS_FLAGS_FUSION is set for all APUs */
|
||||||
|
+ if (device_info.ids_flags & AMDGPU_IDS_FLAGS_FUSION)
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+ return EXIT_SUCCESS;
|
||||||
|
+}
|
||||||
|
diff --git a/src/discrete-detection/meson.build b/src/discrete-detection/meson.build
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..3a6c03f
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/discrete-detection/meson.build
|
||||||
|
@@ -0,0 +1,18 @@
|
||||||
|
+
|
||||||
|
+if libdrm_amdgpu.found()
|
||||||
|
+ executable('check-discrete-amdgpu',
|
||||||
|
+ files('amdgpu.c'),
|
||||||
|
+ dependencies: deps,
|
||||||
|
+ install: true,
|
||||||
|
+ install_dir: libexecdir,
|
||||||
|
+ )
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
+if libdrm.found() and libdrm_nouveau.found()
|
||||||
|
+ executable('check-discrete-nouveau',
|
||||||
|
+ files('nouveau.c'),
|
||||||
|
+ dependencies: deps,
|
||||||
|
+ install: true,
|
||||||
|
+ install_dir: libexecdir,
|
||||||
|
+ )
|
||||||
|
+endif
|
||||||
|
diff --git a/src/discrete-detection/nouveau.c b/src/discrete-detection/nouveau.c
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..0a1f220
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/discrete-detection/nouveau.c
|
||||||
|
@@ -0,0 +1,105 @@
|
||||||
|
+
|
||||||
|
+#include <fcntl.h>
|
||||||
|
+#include <stdlib.h>
|
||||||
|
+#include <stdio.h>
|
||||||
|
+#include <gio/gio.h>
|
||||||
|
+#include <gudev/gudev.h>
|
||||||
|
+
|
||||||
|
+#include <xf86drm.h>
|
||||||
|
+#include <nouveau_drm.h>
|
||||||
|
+#include <nouveau/nvif/ioctl.h>
|
||||||
|
+#include <nvif/cl0080.h>
|
||||||
|
+#include <nvif/class.h>
|
||||||
|
+
|
||||||
|
+typedef int handle;
|
||||||
|
+G_DEFINE_AUTO_CLEANUP_FREE_FUNC(handle, close, -1)
|
||||||
|
+
|
||||||
|
+int main(int argc, char** argv)
|
||||||
|
+{
|
||||||
|
+ if (argc < 2)
|
||||||
|
+ {
|
||||||
|
+ puts ("check-discrete-nouveau [DEVNAME]");
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ const char *devname;
|
||||||
|
+ g_auto(handle) fd = -1;
|
||||||
|
+
|
||||||
|
+ devname = argv[1];
|
||||||
|
+ fd = open (devname, O_RDWR);
|
||||||
|
+ if (fd < 0)
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+ g_autofree void *device = malloc(352);
|
||||||
|
+
|
||||||
|
+ /* Init device */
|
||||||
|
+ {
|
||||||
|
+ struct {
|
||||||
|
+ struct nvif_ioctl_v0 ioctl;
|
||||||
|
+ struct nvif_ioctl_new_v0 new;
|
||||||
|
+ struct nv_device_v0 dev;
|
||||||
|
+ } init_args = {
|
||||||
|
+ .ioctl = {
|
||||||
|
+ .object = 0,
|
||||||
|
+ .owner = NVIF_IOCTL_V0_OWNER_ANY,
|
||||||
|
+ .route = 0x00,
|
||||||
|
+ .type = NVIF_IOCTL_V0_NEW,
|
||||||
|
+ .version = 0,
|
||||||
|
+ },
|
||||||
|
+ .new = {
|
||||||
|
+ .handle = 0,
|
||||||
|
+ .object = (uintptr_t)device,
|
||||||
|
+ .oclass = NV_DEVICE,
|
||||||
|
+ .route = NVIF_IOCTL_V0_ROUTE_NVIF,
|
||||||
|
+ .token = (uintptr_t)device,
|
||||||
|
+ .version = 0,
|
||||||
|
+ },
|
||||||
|
+ .dev = {
|
||||||
|
+ .device = ~0ULL,
|
||||||
|
+ },
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ if (drmCommandWrite (fd, DRM_NOUVEAU_NVIF, &init_args, sizeof(init_args)))
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /* Query device info */
|
||||||
|
+ struct {
|
||||||
|
+ struct nvif_ioctl_v0 ioctl;
|
||||||
|
+ struct nvif_ioctl_mthd_v0 mthd;
|
||||||
|
+ struct nv_device_info_v0 info;
|
||||||
|
+ } args = {
|
||||||
|
+ .ioctl = {
|
||||||
|
+ .object = (uintptr_t)device,
|
||||||
|
+ .owner = NVIF_IOCTL_V0_OWNER_ANY,
|
||||||
|
+ .route = 0x00,
|
||||||
|
+ .type = NVIF_IOCTL_V0_MTHD,
|
||||||
|
+ .version = 0,
|
||||||
|
+ },
|
||||||
|
+ .mthd = {
|
||||||
|
+ .method = NV_DEVICE_V0_INFO,
|
||||||
|
+ .version = 0,
|
||||||
|
+ },
|
||||||
|
+ .info = {
|
||||||
|
+ .version = 0,
|
||||||
|
+ },
|
||||||
|
+ };
|
||||||
|
+
|
||||||
|
+ if (drmCommandWriteRead (fd, DRM_NOUVEAU_NVIF, &args, sizeof(args)))
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+ switch (args.info.platform)
|
||||||
|
+ {
|
||||||
|
+ case NV_DEVICE_INFO_V0_IGP:
|
||||||
|
+ case NV_DEVICE_INFO_V0_SOC:
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+
|
||||||
|
+ case NV_DEVICE_INFO_V0_PCI:
|
||||||
|
+ case NV_DEVICE_INFO_V0_AGP:
|
||||||
|
+ case NV_DEVICE_INFO_V0_PCIE:
|
||||||
|
+ default:
|
||||||
|
+ return EXIT_SUCCESS;
|
||||||
|
+ }
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+}
|
||||||
|
diff --git a/src/meson.build b/src/meson.build
|
||||||
|
index ab3a77d..da4267f 100644
|
||||||
|
--- a/src/meson.build
|
||||||
|
+++ b/src/meson.build
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-deps = [glib, gio, gudev]
|
||||||
|
+deps = [glib, gio, gudev, libdrm, libdrm_nouveau, libdrm_amdgpu]
|
||||||
|
|
||||||
|
sources = [
|
||||||
|
'info-cleanup.c',
|
||||||
|
@@ -34,3 +34,5 @@ configure_file(
|
||||||
|
configuration: switcherooctl_conf,
|
||||||
|
install_dir: get_option('bindir')
|
||||||
|
)
|
||||||
|
+
|
||||||
|
+subdir('discrete-detection')
|
||||||
|
diff --git a/src/switcheroo-control.c b/src/switcheroo-control.c
|
||||||
|
index abd8154..e407bfb 100644
|
||||||
|
--- a/src/switcheroo-control.c
|
||||||
|
+++ b/src/switcheroo-control.c
|
||||||
|
@@ -31,6 +31,7 @@ typedef struct {
|
||||||
|
char *name;
|
||||||
|
GPtrArray *env;
|
||||||
|
gboolean is_default;
|
||||||
|
+ gboolean is_discrete;
|
||||||
|
} CardData;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
@@ -94,6 +95,8 @@ build_gpus_variant (ControlData *data)
|
||||||
|
g_variant_new_strv ((const gchar * const *) card->env->pdata, card->env->len));
|
||||||
|
g_variant_builder_add (&asv_builder, "{sv}", "Default",
|
||||||
|
g_variant_new_boolean (card->is_default));
|
||||||
|
+ g_variant_builder_add (&asv_builder, "{sv}", "Discrete",
|
||||||
|
+ g_variant_new_boolean (card->is_discrete));
|
||||||
|
|
||||||
|
g_variant_builder_add (&builder, "a{sv}", &asv_builder);
|
||||||
|
}
|
||||||
|
@@ -312,6 +315,18 @@ get_card_is_default (GUdevDevice *d)
|
||||||
|
return g_udev_device_get_sysfs_attr_as_boolean (parent, "boot_vga");
|
||||||
|
}
|
||||||
|
|
||||||
|
+static gboolean
|
||||||
|
+get_card_is_discrete (GUdevDevice *d)
|
||||||
|
+{
|
||||||
|
+ const char * const * tags;
|
||||||
|
+ g_autoptr (GUdevDevice) platform_device = NULL;
|
||||||
|
+
|
||||||
|
+ tags = g_udev_device_get_tags (d);
|
||||||
|
+ if (tags && g_strv_contains (tags, "switcheroo-discrete-gpu"))
|
||||||
|
+ return TRUE;
|
||||||
|
+ return FALSE;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static CardData *
|
||||||
|
get_card_data (GUdevClient *client,
|
||||||
|
GUdevDevice *d)
|
||||||
|
@@ -328,6 +343,7 @@ get_card_data (GUdevClient *client,
|
||||||
|
data->name = get_card_name (d);
|
||||||
|
data->env = env;
|
||||||
|
data->is_default = get_card_is_default (d);
|
||||||
|
+ data->is_discrete = get_card_is_discrete (d);
|
||||||
|
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
From 1b115ed72e03ff1169cbfddd79ef10890baca133 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Tue, 12 Sep 2023 15:53:40 +0200
|
||||||
|
Subject: [PATCH 03/10] tests: fix integration tests without UMockdev
|
||||||
|
`gi.require_version` throws ValueError if the dependency cannot be found
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
tests/integration-test.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tests/integration-test.py b/tests/integration-test.py
|
||||||
|
index d8dea16..e3dd996 100755
|
||||||
|
--- a/tests/integration-test.py
|
||||||
|
+++ b/tests/integration-test.py
|
||||||
|
@@ -37,7 +37,7 @@ except ImportError as e:
|
||||||
|
try:
|
||||||
|
gi.require_version('UMockdev', '1.0')
|
||||||
|
from gi.repository import UMockdev
|
||||||
|
-except ImportError:
|
||||||
|
+except (ImportError, ValueError):
|
||||||
|
sys.stderr.write('Skipping tests, umockdev not available (https://github.com/martinpitt/umockdev)\n')
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
+278
@@ -0,0 +1,278 @@
|
|||||||
|
From d933e96bdb15679ae7653f929461982aa66973ba Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Tue, 12 Sep 2023 15:58:16 +0200
|
||||||
|
Subject: [PATCH 04/10] tests: add tests for discrete detection with mock libs
|
||||||
|
Both tests have 4 different ways of testing: - Invalid Device - Unexpected
|
||||||
|
Device - Non Discrete GPU (iGPU/APU) - Discrete GPU
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
src/discrete-detection/meson.build | 4 +-
|
||||||
|
tests/discrete-detection/libdrm_amdgpu_mock.c | 57 +++++++++++++
|
||||||
|
.../discrete-detection/libdrm_nouveau_mock.c | 68 ++++++++++++++++
|
||||||
|
tests/discrete-detection/meson.build | 80 +++++++++++++++++++
|
||||||
|
tests/meson.build | 2 +
|
||||||
|
5 files changed, 209 insertions(+), 2 deletions(-)
|
||||||
|
create mode 100644 tests/discrete-detection/libdrm_amdgpu_mock.c
|
||||||
|
create mode 100644 tests/discrete-detection/libdrm_nouveau_mock.c
|
||||||
|
create mode 100644 tests/discrete-detection/meson.build
|
||||||
|
|
||||||
|
diff --git a/src/discrete-detection/meson.build b/src/discrete-detection/meson.build
|
||||||
|
index 3a6c03f..8eb8437 100644
|
||||||
|
--- a/src/discrete-detection/meson.build
|
||||||
|
+++ b/src/discrete-detection/meson.build
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
|
||||||
|
if libdrm_amdgpu.found()
|
||||||
|
- executable('check-discrete-amdgpu',
|
||||||
|
+ amdgpu_discrete = executable('check-discrete-amdgpu',
|
||||||
|
files('amdgpu.c'),
|
||||||
|
dependencies: deps,
|
||||||
|
install: true,
|
||||||
|
@@ -9,7 +9,7 @@ if libdrm_amdgpu.found()
|
||||||
|
endif
|
||||||
|
|
||||||
|
if libdrm.found() and libdrm_nouveau.found()
|
||||||
|
- executable('check-discrete-nouveau',
|
||||||
|
+ nouveau_discrete = executable('check-discrete-nouveau',
|
||||||
|
files('nouveau.c'),
|
||||||
|
dependencies: deps,
|
||||||
|
install: true,
|
||||||
|
diff --git a/tests/discrete-detection/libdrm_amdgpu_mock.c b/tests/discrete-detection/libdrm_amdgpu_mock.c
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..20fa4aa
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/discrete-detection/libdrm_amdgpu_mock.c
|
||||||
|
@@ -0,0 +1,57 @@
|
||||||
|
+#include <string.h>
|
||||||
|
+#include <stdint.h>
|
||||||
|
+#include <stdio.h>
|
||||||
|
+
|
||||||
|
+#include <amdgpu_drm.h>
|
||||||
|
+
|
||||||
|
+enum {
|
||||||
|
+ OTHER_GPU,
|
||||||
|
+ AMD_APU,
|
||||||
|
+ AMD_GPU,
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+/* Mock open(2) so we can test multiple devices configurations */
|
||||||
|
+int open(const char *pathname, int flags)
|
||||||
|
+{
|
||||||
|
+ if (!strcmp(pathname, "OTHER_GPU"))
|
||||||
|
+ return OTHER_GPU;
|
||||||
|
+ if (!strcmp (pathname, "AMD_APU"))
|
||||||
|
+ return AMD_APU;
|
||||||
|
+ if (!strcmp (pathname, "AMD_GPU"))
|
||||||
|
+ return AMD_GPU;
|
||||||
|
+
|
||||||
|
+ return -1;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+/* open64 may be used for large file support */
|
||||||
|
+int open64(const char *pathname, int flags)
|
||||||
|
+{
|
||||||
|
+ return open (pathname, flags);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int amdgpu_device_initialize(int fd, uint32_t *major_version, uint32_t *minor_version, int *device_handle)
|
||||||
|
+{
|
||||||
|
+ // Store the fd in the device handle for access in query_info
|
||||||
|
+ *device_handle = fd;
|
||||||
|
+
|
||||||
|
+ if (fd != AMD_GPU && fd != AMD_APU)
|
||||||
|
+ return 1;
|
||||||
|
+
|
||||||
|
+ return 0;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int amdgpu_query_info(int device_handle, unsigned info_id, unsigned size, void *value)
|
||||||
|
+{
|
||||||
|
+ struct drm_amdgpu_info_device* device_info = value;
|
||||||
|
+
|
||||||
|
+ if (device_handle == AMD_GPU) {
|
||||||
|
+ device_info->ids_flags = 0;
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+ if (device_handle == AMD_APU) {
|
||||||
|
+ device_info->ids_flags = AMDGPU_IDS_FLAGS_FUSION;
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ return 1;
|
||||||
|
+}
|
||||||
|
diff --git a/tests/discrete-detection/libdrm_nouveau_mock.c b/tests/discrete-detection/libdrm_nouveau_mock.c
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..cdbfda8
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/discrete-detection/libdrm_nouveau_mock.c
|
||||||
|
@@ -0,0 +1,68 @@
|
||||||
|
+#include <string.h>
|
||||||
|
+#include <stdint.h>
|
||||||
|
+#include <stdio.h>
|
||||||
|
+
|
||||||
|
+#include <xf86drm.h>
|
||||||
|
+#include <nouveau_drm.h>
|
||||||
|
+#include <nouveau/nvif/ioctl.h>
|
||||||
|
+#include <nvif/cl0080.h>
|
||||||
|
+#include <nvif/class.h>
|
||||||
|
+
|
||||||
|
+enum {
|
||||||
|
+ OTHER_GPU,
|
||||||
|
+ NVIDIA_IGPU,
|
||||||
|
+ NVIDIA_GPU,
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+/* Mock open(2) so we can test multiple devices configurations */
|
||||||
|
+int open(const char *pathname, int flags)
|
||||||
|
+{
|
||||||
|
+ if (!strcmp(pathname, "OTHER_GPU"))
|
||||||
|
+ return OTHER_GPU;
|
||||||
|
+ if (!strcmp (pathname, "NVIDIA_IGPU"))
|
||||||
|
+ return NVIDIA_IGPU;
|
||||||
|
+ if (!strcmp (pathname, "NVIDIA_GPU"))
|
||||||
|
+ return NVIDIA_GPU;
|
||||||
|
+
|
||||||
|
+ return -1;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+/* open64 may be used for large file support */
|
||||||
|
+int open64(const char *pathname, int flags)
|
||||||
|
+{
|
||||||
|
+ return open (pathname, flags);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int drmCommandWrite(int fd, unsigned long drmCommandIndex, void *data, unsigned long size)
|
||||||
|
+{
|
||||||
|
+ if (drmCommandIndex != DRM_NOUVEAU_NVIF)
|
||||||
|
+ return 1;
|
||||||
|
+
|
||||||
|
+ if (fd != NVIDIA_GPU && fd != NVIDIA_IGPU)
|
||||||
|
+ return 1;
|
||||||
|
+
|
||||||
|
+ return 0;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+int drmCommandWriteRead(int fd, unsigned long drmCommandIndex, void *data, unsigned long size)
|
||||||
|
+{
|
||||||
|
+ if (drmCommandIndex != DRM_NOUVEAU_NVIF)
|
||||||
|
+ return 1;
|
||||||
|
+
|
||||||
|
+ struct {
|
||||||
|
+ struct nvif_ioctl_v0 ioctl;
|
||||||
|
+ struct nvif_ioctl_mthd_v0 mthd;
|
||||||
|
+ struct nv_device_info_v0 info;
|
||||||
|
+ } *args = data;
|
||||||
|
+
|
||||||
|
+ if (fd == NVIDIA_GPU) {
|
||||||
|
+ args->info.platform = NV_DEVICE_INFO_V0_PCIE;
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+ if (fd == NVIDIA_IGPU) {
|
||||||
|
+ args->info.platform = NV_DEVICE_INFO_V0_IGP;
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ return 1;
|
||||||
|
+}
|
||||||
|
\ No newline at end of file
|
||||||
|
diff --git a/tests/discrete-detection/meson.build b/tests/discrete-detection/meson.build
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..f01a014
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/tests/discrete-detection/meson.build
|
||||||
|
@@ -0,0 +1,80 @@
|
||||||
|
+
|
||||||
|
+if libdrm_amdgpu.found()
|
||||||
|
+ amdgpu_mock_lib = shared_library(
|
||||||
|
+ 'drm_amdgpu_mock',
|
||||||
|
+ files('libdrm_amdgpu_mock.c'),
|
||||||
|
+ dependencies: libdrm_amdgpu
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test amdgpu detection with invalid device',
|
||||||
|
+ amdgpu_discrete,
|
||||||
|
+ args: ['NO_GPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': amdgpu_mock_lib.full_path()}),
|
||||||
|
+ should_fail: true
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test amdgpu detection with non-AMD GPU',
|
||||||
|
+ amdgpu_discrete,
|
||||||
|
+ args: ['OTHER_GPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': amdgpu_mock_lib.full_path()}),
|
||||||
|
+ should_fail: true
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test amdgpu detection with AMD APU',
|
||||||
|
+ amdgpu_discrete,
|
||||||
|
+ args: ['AMD_APU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': amdgpu_mock_lib.full_path()}),
|
||||||
|
+ should_fail: true
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test amdgpu detection with AMD GPU',
|
||||||
|
+ amdgpu_discrete,
|
||||||
|
+ args: ['AMD_GPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': amdgpu_mock_lib.full_path()}),
|
||||||
|
+ should_fail: false
|
||||||
|
+ )
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
+if libdrm.found() and libdrm_nouveau.found()
|
||||||
|
+ nouveau_mock_lib = shared_library(
|
||||||
|
+ 'drm_nouveau_mock',
|
||||||
|
+ files('libdrm_nouveau_mock.c'),
|
||||||
|
+ dependencies: [libdrm, libdrm_nouveau]
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test nouveau detection with invalid device',
|
||||||
|
+ nouveau_discrete,
|
||||||
|
+ args: ['NO_GPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': nouveau_mock_lib.full_path()}),
|
||||||
|
+ should_fail: true
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test nouveau detection with non-Nvidia GPU',
|
||||||
|
+ nouveau_discrete,
|
||||||
|
+ args: ['OTHER_GPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': nouveau_mock_lib.full_path()}),
|
||||||
|
+ should_fail: true
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test nouveau detection with Nvidia iGPU',
|
||||||
|
+ nouveau_discrete,
|
||||||
|
+ args: ['NVIDIA_IGPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': nouveau_mock_lib.full_path()}),
|
||||||
|
+ should_fail: true
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ test(
|
||||||
|
+ 'test nouveau detection with Nvidia GPU',
|
||||||
|
+ nouveau_discrete,
|
||||||
|
+ args: ['NVIDIA_GPU'],
|
||||||
|
+ env: environment({'LD_PRELOAD': nouveau_mock_lib.full_path()}),
|
||||||
|
+ should_fail: false
|
||||||
|
+ )
|
||||||
|
+endif
|
||||||
|
\ No newline at end of file
|
||||||
|
diff --git a/tests/meson.build b/tests/meson.build
|
||||||
|
index b0b7476..61ef00c 100644
|
||||||
|
--- a/tests/meson.build
|
||||||
|
+++ b/tests/meson.build
|
||||||
|
@@ -15,3 +15,5 @@ foreach ut: unit_tests
|
||||||
|
env: envs,
|
||||||
|
)
|
||||||
|
endforeach
|
||||||
|
+
|
||||||
|
+subdir('discrete-detection')
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
From c102b643945dc076d881497dd2ca5865938f7053 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Tue, 12 Sep 2023 15:57:47 +0200
|
||||||
|
Subject: [PATCH 05/10] main: remove leftover and fix typo
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
meson_options.txt | 2 +-
|
||||||
|
src/switcheroo-control.c | 1 -
|
||||||
|
2 files changed, 1 insertion(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/meson_options.txt b/meson_options.txt
|
||||||
|
index b8d671a..c77fea8 100644
|
||||||
|
--- a/meson_options.txt
|
||||||
|
+++ b/meson_options.txt
|
||||||
|
@@ -13,7 +13,7 @@ option('hwdbdir',
|
||||||
|
option('rulesdir',
|
||||||
|
type: 'string',
|
||||||
|
value: '',
|
||||||
|
- description: 'Directory for ruke files',
|
||||||
|
+ description: 'Directory for rule files',
|
||||||
|
)
|
||||||
|
|
||||||
|
option('gtk_doc',
|
||||||
|
diff --git a/src/switcheroo-control.c b/src/switcheroo-control.c
|
||||||
|
index e407bfb..0f6a548 100644
|
||||||
|
--- a/src/switcheroo-control.c
|
||||||
|
+++ b/src/switcheroo-control.c
|
||||||
|
@@ -319,7 +319,6 @@ static gboolean
|
||||||
|
get_card_is_discrete (GUdevDevice *d)
|
||||||
|
{
|
||||||
|
const char * const * tags;
|
||||||
|
- g_autoptr (GUdevDevice) platform_device = NULL;
|
||||||
|
|
||||||
|
tags = g_udev_device_get_tags (d);
|
||||||
|
if (tags && g_strv_contains (tags, "switcheroo-discrete-gpu"))
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
+48
@@ -0,0 +1,48 @@
|
|||||||
|
From f764db4eb565c19ba14155791fbfced3fb5d34c8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Tue, 12 Sep 2023 15:58:27 +0200
|
||||||
|
Subject: [PATCH 06/10] main: move discrete dependencies out of main deps
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
src/discrete-detection/meson.build | 5 +++--
|
||||||
|
src/meson.build | 2 +-
|
||||||
|
2 files changed, 4 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/discrete-detection/meson.build b/src/discrete-detection/meson.build
|
||||||
|
index 8eb8437..353316f 100644
|
||||||
|
--- a/src/discrete-detection/meson.build
|
||||||
|
+++ b/src/discrete-detection/meson.build
|
||||||
|
@@ -1,8 +1,9 @@
|
||||||
|
+discrete_deps = deps + [libdrm, libdrm_nouveau, libdrm_amdgpu]
|
||||||
|
|
||||||
|
if libdrm_amdgpu.found()
|
||||||
|
amdgpu_discrete = executable('check-discrete-amdgpu',
|
||||||
|
files('amdgpu.c'),
|
||||||
|
- dependencies: deps,
|
||||||
|
+ dependencies: discrete_deps,
|
||||||
|
install: true,
|
||||||
|
install_dir: libexecdir,
|
||||||
|
)
|
||||||
|
@@ -11,7 +12,7 @@ endif
|
||||||
|
if libdrm.found() and libdrm_nouveau.found()
|
||||||
|
nouveau_discrete = executable('check-discrete-nouveau',
|
||||||
|
files('nouveau.c'),
|
||||||
|
- dependencies: deps,
|
||||||
|
+ dependencies: discrete_deps,
|
||||||
|
install: true,
|
||||||
|
install_dir: libexecdir,
|
||||||
|
)
|
||||||
|
diff --git a/src/meson.build b/src/meson.build
|
||||||
|
index da4267f..22d69e7 100644
|
||||||
|
--- a/src/meson.build
|
||||||
|
+++ b/src/meson.build
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-deps = [glib, gio, gudev, libdrm, libdrm_nouveau, libdrm_amdgpu]
|
||||||
|
+deps = [glib, gio, gudev]
|
||||||
|
|
||||||
|
sources = [
|
||||||
|
'info-cleanup.c',
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
+137
@@ -0,0 +1,137 @@
|
|||||||
|
From d2ecc29469d5572fd171926c9d1dbb1b851c7b09 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Tue, 12 Sep 2023 17:12:00 +0200
|
||||||
|
Subject: [PATCH 07/10] main: use glib for discrete command-line arguments
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
src/discrete-detection/amdgpu.c | 29 ++++++++++++++++++++---------
|
||||||
|
src/discrete-detection/nouveau.c | 29 ++++++++++++++++++++---------
|
||||||
|
2 files changed, 40 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/discrete-detection/amdgpu.c b/src/discrete-detection/amdgpu.c
|
||||||
|
index 2d9804f..5a9a4ab 100644
|
||||||
|
--- a/src/discrete-detection/amdgpu.c
|
||||||
|
+++ b/src/discrete-detection/amdgpu.c
|
||||||
|
@@ -1,9 +1,10 @@
|
||||||
|
-
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
+#include <locale.h>
|
||||||
|
#include <gio/gio.h>
|
||||||
|
#include <gudev/gudev.h>
|
||||||
|
+#include <glib.h>
|
||||||
|
|
||||||
|
#include <amdgpu.h>
|
||||||
|
#include <amdgpu_drm.h>
|
||||||
|
@@ -12,22 +13,32 @@ typedef int handle;
|
||||||
|
G_DEFINE_AUTO_CLEANUP_FREE_FUNC(handle, close, -1)
|
||||||
|
G_DEFINE_AUTOPTR_CLEANUP_FUNC(amdgpu_device_handle, free);
|
||||||
|
|
||||||
|
-int main(int argc, char** argv)
|
||||||
|
+int main (int argc, char** argv)
|
||||||
|
{
|
||||||
|
- if (argc < 2)
|
||||||
|
- {
|
||||||
|
- puts ("check-discrete-amdgpu [DEVNAME]");
|
||||||
|
- return EXIT_FAILURE;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
const char *devname;
|
||||||
|
g_auto(handle) fd = -1;
|
||||||
|
- g_autoptr(GUdevDevice) parent = NULL;
|
||||||
|
struct drm_amdgpu_info_device device_info = {0};
|
||||||
|
amdgpu_device_handle device = NULL;
|
||||||
|
uint32_t drm_major, drm_minor;
|
||||||
|
+ g_autoptr(GOptionContext) option_context = NULL;
|
||||||
|
+ g_autoptr(GError) error = NULL;
|
||||||
|
|
||||||
|
+ setlocale (LC_ALL, "");
|
||||||
|
+ option_context = g_option_context_new ("");
|
||||||
|
+
|
||||||
|
+ if (!g_option_context_parse (option_context, &argc, &argv, &error)) {
|
||||||
|
+ g_print ("Failed to parse arguments: %s\n", error->message);
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (argc < 2)
|
||||||
|
+ {
|
||||||
|
+ g_print ("%s\n", g_option_context_get_help (option_context, TRUE, NULL));
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+ }
|
||||||
|
devname = argv[1];
|
||||||
|
+;
|
||||||
|
+
|
||||||
|
fd = open (devname, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
diff --git a/src/discrete-detection/nouveau.c b/src/discrete-detection/nouveau.c
|
||||||
|
index 0a1f220..1d61cbb 100644
|
||||||
|
--- a/src/discrete-detection/nouveau.c
|
||||||
|
+++ b/src/discrete-detection/nouveau.c
|
||||||
|
@@ -1,9 +1,10 @@
|
||||||
|
-
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
+#include <locale.h>
|
||||||
|
#include <gio/gio.h>
|
||||||
|
#include <gudev/gudev.h>
|
||||||
|
+#include <glib.h>
|
||||||
|
|
||||||
|
#include <xf86drm.h>
|
||||||
|
#include <nouveau_drm.h>
|
||||||
|
@@ -14,23 +15,34 @@
|
||||||
|
typedef int handle;
|
||||||
|
G_DEFINE_AUTO_CLEANUP_FREE_FUNC(handle, close, -1)
|
||||||
|
|
||||||
|
-int main(int argc, char** argv)
|
||||||
|
+int main (int argc, char** argv)
|
||||||
|
{
|
||||||
|
+ const gchar *devname = NULL;
|
||||||
|
+ g_auto(handle) fd = -1;
|
||||||
|
+ g_autofree void *device = NULL;
|
||||||
|
+ g_autoptr(GOptionContext) option_context = NULL;
|
||||||
|
+ g_autoptr(GError) error = NULL;
|
||||||
|
+
|
||||||
|
+ setlocale (LC_ALL, "");
|
||||||
|
+ option_context = g_option_context_new ("");
|
||||||
|
+
|
||||||
|
+ if (!g_option_context_parse (option_context, &argc, &argv, &error)) {
|
||||||
|
+ g_print ("Failed to parse arguments: %s\n", error->message);
|
||||||
|
+ return EXIT_FAILURE;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
if (argc < 2)
|
||||||
|
{
|
||||||
|
- puts ("check-discrete-nouveau [DEVNAME]");
|
||||||
|
+ g_print ("%s\n", g_option_context_get_help (option_context, TRUE, NULL));
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- const char *devname;
|
||||||
|
- g_auto(handle) fd = -1;
|
||||||
|
-
|
||||||
|
devname = argv[1];
|
||||||
|
+
|
||||||
|
fd = open (devname, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
|
||||||
|
- g_autofree void *device = malloc(352);
|
||||||
|
+ device = malloc(352);
|
||||||
|
|
||||||
|
/* Init device */
|
||||||
|
{
|
||||||
|
@@ -88,7 +100,6 @@ int main(int argc, char** argv)
|
||||||
|
if (drmCommandWriteRead (fd, DRM_NOUVEAU_NVIF, &args, sizeof(args)))
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
|
||||||
|
-
|
||||||
|
switch (args.info.platform)
|
||||||
|
{
|
||||||
|
case NV_DEVICE_INFO_V0_IGP:
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
From 462b09f02de37dfd2965d23cc7c4137bcf45a4ae Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Wed, 14 Feb 2024 20:25:42 +0100
|
||||||
|
Subject: [PATCH 08/10] main: add udev rule for i915 checking a lot of systems
|
||||||
|
has shown that the intel iGPU will always be available at `0000:00:02.0`.
|
||||||
|
Using ID_PATH would have been cleaner, but I couldn't get it to work.
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
data/30-discrete-gpu.rules.in | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/data/30-discrete-gpu.rules.in b/data/30-discrete-gpu.rules.in
|
||||||
|
index a803ed4..f30f315 100644
|
||||||
|
--- a/data/30-discrete-gpu.rules.in
|
||||||
|
+++ b/data/30-discrete-gpu.rules.in
|
||||||
|
@@ -1,3 +1,4 @@
|
||||||
|
DRIVERS=="amdgpu", SUBSYSTEM=="drm", PROGRAM="@libexecdir@/check-discrete-amdgpu $env{DEVNAME}", TAG+="switcheroo-discrete-gpu"
|
||||||
|
DRIVERS=="nouveau", SUBSYSTEM=="drm", PROGRAM="@libexecdir@/check-discrete-nouveau $env{DEVNAME}", TAG+="switcheroo-discrete-gpu"
|
||||||
|
-DRIVERS=="nvidia", TAG+="switcheroo-discrete-gpu"
|
||||||
|
+DRIVERS=="nvidia", SUBSYSTEM=="drm", TAG+="switcheroo-discrete-gpu"
|
||||||
|
+DRIVERS=="i915", SUBSYSTEM=="drm", DEVPATH!="/devices/pci0000:00/0000:00:02.0/drm/*", TAG+="switcheroo-discrete-gpu"
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
From 55db3aeaeb962952881f73e94432f750cfb64fc8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Thu, 15 Feb 2024 16:24:00 +0100
|
||||||
|
Subject: [PATCH 09/10] main: use Discrete key in switcherooctl
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
src/switcherooctl.in | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/switcherooctl.in b/src/switcherooctl.in
|
||||||
|
index 96c21cc..c0e3f07 100755
|
||||||
|
--- a/src/switcherooctl.in
|
||||||
|
+++ b/src/switcherooctl.in
|
||||||
|
@@ -77,6 +77,7 @@ def print_gpu(gpu, index):
|
||||||
|
print('Device:', index)
|
||||||
|
print(' Name: ', gpu['Name'])
|
||||||
|
print(' Default: ', "yes" if gpu['Default'] else "no")
|
||||||
|
+ print(' Discrete: ', "yes" if gpu['Discrete'] else "no")
|
||||||
|
print(' Environment:', env_to_str(gpu['Environment']))
|
||||||
|
|
||||||
|
def _list():
|
||||||
|
@@ -126,7 +127,7 @@ def get_discrete_gpu():
|
||||||
|
return None
|
||||||
|
|
||||||
|
try:
|
||||||
|
- gpu = next(gpu for gpu in gpus if not gpu['Default'])
|
||||||
|
+ gpu = next(gpu for gpu in gpus if gpu['Discrete'])
|
||||||
|
except StopIteration:
|
||||||
|
return None
|
||||||
|
else:
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
From 4232c75fe41158bb5063d630d36b3ffd6a8a57ec Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
Date: Fri, 6 Sep 2024 22:31:56 +0200
|
||||||
|
Subject: [PATCH 10/10] main: use new GPU list on uevent the amount of GPUs may
|
||||||
|
still be the same but underlying attributes may have changed On the ASUS TUF
|
||||||
|
Dash F15 running Fedora 40 6.10.7-200.fc40.x86_64 the udev tags are not
|
||||||
|
applied at the time switcheroo-control starts but at a later uevent they are
|
||||||
|
correct. Memory gets allocated anyways to check if the GPU count has changed,
|
||||||
|
so this shouldn't affect memory usage.
|
||||||
|
|
||||||
|
Signed-off-by: Jan200101 <sentrycraft123@gmail.com>
|
||||||
|
---
|
||||||
|
src/switcheroo-control.c | 16 ++++++----------
|
||||||
|
1 file changed, 6 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/switcheroo-control.c b/src/switcheroo-control.c
|
||||||
|
index 0f6a548..01954c7 100644
|
||||||
|
--- a/src/switcheroo-control.c
|
||||||
|
+++ b/src/switcheroo-control.c
|
||||||
|
@@ -438,16 +438,12 @@ uevent_cb (GUdevClient *client,
|
||||||
|
|
||||||
|
cards = get_drm_cards (data);
|
||||||
|
num_gpus = cards->len;
|
||||||
|
- if (num_gpus != data->num_gpus) {
|
||||||
|
- g_debug ("GPUs added or removed (old: %d new: %d)",
|
||||||
|
- data->num_gpus, num_gpus);
|
||||||
|
- g_ptr_array_free (data->cards, TRUE);
|
||||||
|
- data->cards = cards;
|
||||||
|
- data->num_gpus = cards->len;
|
||||||
|
- send_dbus_event (data);
|
||||||
|
- } else {
|
||||||
|
- g_ptr_array_free (cards, TRUE);
|
||||||
|
- }
|
||||||
|
+ g_debug ("GPUs updated (old: %d new: %d)",
|
||||||
|
+ data->num_gpus, num_gpus);
|
||||||
|
+ g_ptr_array_free (data->cards, TRUE);
|
||||||
|
+ data->cards = cards;
|
||||||
|
+ data->num_gpus = cards->len;
|
||||||
|
+ send_dbus_event (data);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
--
|
||||||
|
2.46.0
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,16 +1,22 @@
|
|||||||
Name: switcheroo-control
|
Name: switcheroo-control
|
||||||
Version: 2.6
|
Version: 2.6
|
||||||
Release: 9%{?dist}
|
Release: 8%{?dist}
|
||||||
Summary: D-Bus service to check the availability of dual-GPU
|
Summary: D-Bus service to check the availability of dual-GPU
|
||||||
|
|
||||||
License: GPLv3
|
License: GPLv3
|
||||||
URL: https://gitlab.freedesktop.org/hadess/switcheroo-control/
|
URL: https://gitlab.freedesktop.org/hadess/switcheroo-control/
|
||||||
# URL from https://gitlab.freedesktop.org/hadess/switcheroo-control/-/releases
|
# URL from https://gitlab.freedesktop.org/hadess/switcheroo-control/-/releases
|
||||||
Source0: https://gitlab.freedesktop.org/hadess/switcheroo-control/uploads/86ea54ac7ddb901b6bf6e915209151f8/switcheroo-control-2.6.tar.xz
|
Source0: https://gitlab.freedesktop.org/hadess/switcheroo-control/uploads/86ea54ac7ddb901b6bf6e915209151f8/switcheroo-control-2.6.tar.xz
|
||||||
# Adds proper discrete GPU detection to switcheroo-control
|
Patch: 0001-main-update-GPUs-comment-for-dbus-property.patch
|
||||||
# https://gitlab.freedesktop.org/hadess/switcheroo-control/-/merge_requests/69
|
Patch: 0002-main-add-Discrete-key.patch
|
||||||
Patch: discrete.patch
|
Patch: 0003-tests-fix-integration-tests-without-UMockdev.patch
|
||||||
|
Patch: 0004-tests-add-tests-for-discrete-detection-with-mock-lib.patch
|
||||||
|
Patch: 0005-main-remove-leftover-and-fix-typo.patch
|
||||||
|
Patch: 0006-main-move-discrete-dependencies-out-of-main-deps.patch
|
||||||
|
Patch: 0007-main-use-glib-for-discrete-command-line-arguments.patch
|
||||||
|
Patch: 0008-main-add-udev-rule-for-i915.patch
|
||||||
|
Patch: 0009-main-use-Discrete-key-in-switcherooctl.patch
|
||||||
|
Patch: 0010-main-use-new-GPU-list-on-uevent.patch
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: pkgconfig(gudev-1.0)
|
BuildRequires: pkgconfig(gudev-1.0)
|
||||||
@@ -19,7 +25,6 @@ BuildRequires: gtk-doc
|
|||||||
BuildRequires: meson
|
BuildRequires: meson
|
||||||
BuildRequires: systemd
|
BuildRequires: systemd
|
||||||
BuildRequires: libdrm-devel
|
BuildRequires: libdrm-devel
|
||||||
BuildRequires: kernel-headers
|
|
||||||
BuildRequires: python3-dbusmock
|
BuildRequires: python3-dbusmock
|
||||||
BuildRequires: umockdev
|
BuildRequires: umockdev
|
||||||
|
|
||||||
@@ -73,7 +78,6 @@ fi
|
|||||||
%{_mandir}/man1/switcherooctl.1*
|
%{_mandir}/man1/switcherooctl.1*
|
||||||
%{_libexecdir}/check-discrete-amdgpu
|
%{_libexecdir}/check-discrete-amdgpu
|
||||||
%{_libexecdir}/check-discrete-nouveau
|
%{_libexecdir}/check-discrete-nouveau
|
||||||
%{_libexecdir}/check-discrete-xe
|
|
||||||
%{_udevrulesdir}/30-discrete-gpu.rules
|
%{_udevrulesdir}/30-discrete-gpu.rules
|
||||||
|
|
||||||
%files docs
|
%files docs
|
||||||
@@ -82,17 +86,14 @@ fi
|
|||||||
%{_datadir}/gtk-doc/html/%{name}/
|
%{_datadir}/gtk-doc/html/%{name}/
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Tue Apr 29 2025 Jan200101 <sentrycraft123@gmail.com> - 2.6-9
|
* Fri Sep 06 2024 Jan200101 <sentrycraft123@gmail.com> - 2.6-8
|
||||||
- Update discrete patch
|
- Update discrete patch
|
||||||
|
|
||||||
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-8
|
* Thu Feb 15 2024 Jan Drögehoff <sentrycraft123@gmail.com> - 2.6-7
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
- Update discrete patch
|
||||||
|
|
||||||
* Mon Jul 29 2024 Miroslav Suchý <msuchy@redhat.com> - 2.6-7
|
* Wed Feb 14 2024 Jan Drögehoff <sentrycraft123@gmail.com> - 2.6-6
|
||||||
- convert license to SPDX
|
- Add discrete patch
|
||||||
|
|
||||||
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-5
|
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.6-5
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
Name: vencord-desktop
|
Name: vencord-desktop
|
||||||
Provides: VencordDesktop = %{version}-%{release}
|
Provides: VencordDesktop = %{version}-%{release}
|
||||||
Version: 1.5.7
|
Version: 1.5.5
|
||||||
Release: 1%?dist
|
Release: 1%?dist
|
||||||
License: GPL-3.0
|
License: GPL-3.0
|
||||||
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
|
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$
|
%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$
|
||||||
|
|
||||||
Name: voicevox
|
Name: voicevox
|
||||||
Version: 0.23.1
|
Version: 0.23.0
|
||||||
Release: 1%?dist
|
Release: 2%?dist
|
||||||
Summary: Free Japanese text-to-speech editor
|
Summary: Free Japanese text-to-speech editor
|
||||||
License: LGPL-3.0
|
License: LGPL-3.0
|
||||||
URL: https://voicevox.hiroshiba.jp
|
URL: https://voicevox.hiroshiba.jp
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
arches = ["x86_64"]
|
|
||||||
rpm {
|
|
||||||
spec = "vpkedit.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
rpm.version(gh("craftablescience/VPKEdit"));
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
Name: vpkedit
|
|
||||||
Version: 4.4.2
|
|
||||||
Release: 1%?dist
|
|
||||||
Summary: A CLI/GUI tool to create, read, and write several pack file formats
|
|
||||||
License: MIT
|
|
||||||
URL: https://github.com/craftablescience/VPKEdit
|
|
||||||
Requires: qt6-qtbase hicolor-icon-theme
|
|
||||||
Suggests: qt6-qtwayland
|
|
||||||
Packager: madonuko <mado@fyralabs.com>
|
|
||||||
BuildRequires: cmake git-core gcc gcc-c++ binutils
|
|
||||||
BuildRequires: cmake(Qt6)
|
|
||||||
BuildRequires: cmake(Qt6Svg)
|
|
||||||
BuildRequires: cmake(Qt6Linguist)
|
|
||||||
BuildRequires: cmake(Qt6Charts)
|
|
||||||
BuildRequires: cmake(Qt6LinguistTools)
|
|
||||||
ExclusiveArch: x86_64
|
|
||||||
|
|
||||||
%description
|
|
||||||
VPKEdit is an open source MIT-licensed tool that can extract from, preview the
|
|
||||||
contents of and write to several pack file formats. It also supports creating
|
|
||||||
new VPKs.
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%git_clone %url v%version
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
|
||||||
%cmake -DCMAKE_INSTALL_PREFIX=%_libdir/%name # -DVPKEDIT_BUILD_LIBC=ON
|
|
||||||
%cmake_build
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%cmake_install
|
|
||||||
pushd %buildroot%_libdir/%name
|
|
||||||
rm -rf libQt*
|
|
||||||
popd
|
|
||||||
ln -sf %_libdir/vpkedit/vpkedit %buildroot%_bindir/vpkedit
|
|
||||||
ln -sf %_libdir/vpkedit/vpkeditcli %buildroot%_bindir/vpkeditcli
|
|
||||||
sed -i 's@Exec=/opt/vpkedit/@Exec=@g' %buildroot%_datadir/applications/vpkedit.desktop
|
|
||||||
|
|
||||||
|
|
||||||
%files
|
|
||||||
%doc README.md CREDITS.md
|
|
||||||
%license LICENSE
|
|
||||||
%_bindir/vpkedit
|
|
||||||
%_bindir/vpkeditcli
|
|
||||||
%_libdir/%name/
|
|
||||||
%_datadir/applications/vpkedit.desktop
|
|
||||||
%_iconsdir/hicolor/128x128/mimetypes/application-x-vpkedit.png
|
|
||||||
%_datadir/mime/packages/vpkedit.xml
|
|
||||||
%_datadir/pixmaps/vpkedit.png
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
Name: WoeUSB-ng
|
Name: WoeUSB-ng
|
||||||
Version: 0.2.12
|
Version: 0.2.12
|
||||||
Release: 2%?dist
|
Release: 1%?dist
|
||||||
Summary: Simple tool that enable you to create your own usb stick with Windows installer
|
Summary: Simple tool that enable you to create your own usb stick with Windows installer
|
||||||
License: GPL-3.0-only
|
License: GPL-3.0-only
|
||||||
Requires: parted dosfstools ntfsprogs p7zip p7zip-plugins xdg-utils grub2-tools
|
Requires: parted dosfstools ntfsprogs p7zip p7zip-plugins xdg-utils grub2-tools
|
||||||
@@ -8,44 +8,28 @@ URL: https://github.com/WoeUSB/WoeUSB-ng
|
|||||||
Source: https://github.com/WoeUSB/WoeUSB-ng/archive/refs/tags/v%version.tar.gz
|
Source: https://github.com/WoeUSB/WoeUSB-ng/archive/refs/tags/v%version.tar.gz
|
||||||
Patch0: https://patch-diff.githubusercontent.com/raw/WoeUSB/WoeUSB-ng/pull/79.patch
|
Patch0: https://patch-diff.githubusercontent.com/raw/WoeUSB/WoeUSB-ng/pull/79.patch
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
Requires: python3-%{name} = %{evr}
|
BuildRequires: python3-devel python3-installer
|
||||||
BuildRequires: anda-srpm-macros python3-devel python3-installer pyproject-rpm-macros python3dist(pip) python3dist(setuptools) python3dist(termcolor) python3dist(wxpython) python3dist(wheel)
|
|
||||||
|
|
||||||
%global _description %{expand:
|
%global _description %{expand:
|
||||||
WoeUSB-ng is a simple tool that enable you to create your own usb stick windows installer from an iso image or a real DVD. This is a rewrite of original WoeUSB.}
|
WoeUSB-ng is a simple tool that enable you to create your own usb stick windows installer from an iso image or a real DVD. This is a rewrite of original WoeUSB.}
|
||||||
|
|
||||||
%description %_description
|
%description %_description
|
||||||
|
|
||||||
%package -n python3-%{name}
|
|
||||||
Summary: Python files for %{name}
|
|
||||||
Requires: %{name} = %{evr}
|
|
||||||
BuildArch: noarch
|
|
||||||
|
|
||||||
%description -n python3-%{name}
|
|
||||||
Python files needed for %{name}.
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -p1
|
%autosetup -p1
|
||||||
|
|
||||||
%if 0%{?fedora} > 41
|
|
||||||
%generate_buildrequires
|
%generate_buildrequires
|
||||||
%pyproject_buildrequires
|
%pyproject_buildrequires
|
||||||
%endif
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%if 0%{?fedora} <= 41
|
|
||||||
%py3_build
|
|
||||||
%else
|
|
||||||
%pyproject_wheel
|
%pyproject_wheel
|
||||||
%endif
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%if 0%{?fedora} <= 41
|
|
||||||
%py3_install
|
|
||||||
%else
|
|
||||||
%pyproject_install
|
%pyproject_install
|
||||||
%pyproject_save_files WoeUSB
|
%pyproject_save_files WoeUSB
|
||||||
%endif
|
|
||||||
install -Dpm644 miscellaneous/WoeUSB-ng.desktop %buildroot%_datadir/applications/WoeUSB-ng.desktop
|
install -Dpm644 miscellaneous/WoeUSB-ng.desktop %buildroot%_datadir/applications/WoeUSB-ng.desktop
|
||||||
install -Dpm644 miscellaneous/com.github.woeusb.woeusb-ng.policy %buildroot%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
|
install -Dpm644 miscellaneous/com.github.woeusb.woeusb-ng.policy %buildroot%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
|
||||||
|
|
||||||
@@ -53,21 +37,14 @@ install -Dpm644 miscellaneous/com.github.woeusb.woeusb-ng.policy %buildroot%_dat
|
|||||||
%check
|
%check
|
||||||
#pyproject_check_import
|
#pyproject_check_import
|
||||||
|
|
||||||
%files
|
|
||||||
|
%files -f %{pyproject_files}
|
||||||
%_bindir/woeusb
|
%_bindir/woeusb
|
||||||
%_bindir/woeusbgui
|
%_bindir/woeusbgui
|
||||||
%_datadir/applications/WoeUSB-ng.desktop
|
%_datadir/applications/WoeUSB-ng.desktop
|
||||||
%_iconsdir/hicolor/scalable/apps/woeusb-logo.png
|
%_iconsdir/hicolor/scalable/apps/woeusb-logo.png
|
||||||
%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
|
%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
|
||||||
|
|
||||||
%if 0%{?fedora} <= 41
|
|
||||||
%files -n python3-%{name}
|
|
||||||
%{python3_sitelib}/WoeUSB/
|
|
||||||
%{python3_sitelib}/woeusb_ng-%{version}-py%{python3_version}.egg-info/
|
|
||||||
%else
|
|
||||||
%files -n python3-%{name} -f %{pyproject_files}
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
%autochangelog
|
%autochangelog
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
project pkg {
|
project pkg {
|
||||||
arches = ["x86_64"]
|
|
||||||
rpm {
|
rpm {
|
||||||
spec = "WoeUSB-ng.spec"
|
spec = "WoeUSB-ng.spec"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,8 +12,8 @@
|
|||||||
%global vendor_pnpm 1
|
%global vendor_pnpm 1
|
||||||
|
|
||||||
Name: youtube-music
|
Name: youtube-music
|
||||||
Version: 3.9.0
|
Version: 3.7.5
|
||||||
Release: 1%?dist
|
Release: 4%?dist
|
||||||
Summary: YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
|
Summary: YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
|
||||||
Source1: youtube-music.desktop
|
Source1: youtube-music.desktop
|
||||||
License: MIT
|
License: MIT
|
||||||
|
|||||||
+12
@@ -0,0 +1,12 @@
|
|||||||
|
diff --color -ru budgie-extras-1.4.0/budgie-weathershow/src/desktop_weather/desktop_weather.vala budgie-extras-1.4.0-patched/budgie-weathershow/src/desktop_weather/desktop_weather.vala
|
||||||
|
--- budgie-extras-1.4.0/budgie-weathershow/src/desktop_weather/desktop_weather.vala 2022-03-11 06:24:44.000000000 +0700
|
||||||
|
+++ budgie-extras-1.4.0-patched/budgie-weathershow/src/desktop_weather/desktop_weather.vala 2022-06-09 14:57:46.677283438 +0700
|
||||||
|
@@ -308,7 +308,7 @@
|
||||||
|
private void get_icondata () {
|
||||||
|
// fetch the icon list
|
||||||
|
string icondir = "/".concat(
|
||||||
|
- "usr/lib/budgie-desktop/plugins",
|
||||||
|
+ "usr/lib64/budgie-desktop/plugins",
|
||||||
|
"/budgie-weathershow/weather_icons"
|
||||||
|
);
|
||||||
|
iconnames = {};
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
%define _ubuntu_rel 22.10.20220822-0ubuntu16
|
%define _ubuntu_rel 22.10.20220822-0ubuntu13
|
||||||
%global _hardened_build 0
|
%global _hardened_build 0
|
||||||
|
|
||||||
Name: compiz9
|
Name: compiz9
|
||||||
|
|||||||
-99
@@ -1,99 +0,0 @@
|
|||||||
diff --git a/src/Core/Package.vala b/src/Core/Package.vala
|
|
||||||
index 62d206fa..cbf05983 100644
|
|
||||||
--- a/src/Core/Package.vala
|
|
||||||
+++ b/src/Core/Package.vala
|
|
||||||
@@ -42,8 +42,29 @@ public enum RuntimeStatus {
|
|
||||||
}
|
|
||||||
|
|
||||||
public class AppCenterCore.Package : Object {
|
|
||||||
+ // locally installed packages
|
|
||||||
public const string APPCENTER_PACKAGE_ORIGIN = "appcenter";
|
|
||||||
- private const string ELEMENTARY_STABLE_PACKAGE_ORIGIN = "elementary-stable-jammy-main";
|
|
||||||
+
|
|
||||||
+ // Fedora repositories
|
|
||||||
+ private const string FEDORA_STABLE_PACKAGE_ORIGIN = "fedora";
|
|
||||||
+ private const string FEDORA_UPDATES_PACKAGE_ORIGIN = "updates";
|
|
||||||
+ private const string FEDORA_TESTING_PACKAGE_ORIGIN = "updates-testing";
|
|
||||||
+
|
|
||||||
+ // RPMFusion repositories
|
|
||||||
+ private const string RPMFUSION_FREE_STABLE_PACKAGE_ORIGIN = "rpmfusion-free";
|
|
||||||
+ private const string RPMFUSION_FREE_UPDATES_PACKAGE_ORIGIN = "rpmfusion-free-updates";
|
|
||||||
+ private const string RPMFUSION_FREE_TESTING_PACKAGE_ORIGIN = "rpmfusion-free-updates-testing";
|
|
||||||
+ private const string RPMFUSION_NONFREE_STABLE_PACKAGE_ORIGIN = "rpmfusion-nonfree";
|
|
||||||
+ private const string RPMFUSION_NONFREE_UPDATES_PACKAGE_ORIGIN = "rpmfusion-nonfree-updates";
|
|
||||||
+ private const string RPMFUSION_NONFREE_TESTING_PACKAGE_ORIGIN = "rpmfusion-nonfree-updates-testing";
|
|
||||||
+
|
|
||||||
+ // Ultramarine repositories
|
|
||||||
+ private const string ULTRAMARINE_PACKAGE_ORIGIN = "ultramarine";
|
|
||||||
+ private const string AKMODS_SECUREBOOT_PACKAGE_ORIGIN = "copr::egeretto:akmods-secureboot";
|
|
||||||
+ private const string KMODTOOL_SECUREBOOT_PACKAGE_ORIGIN = "copr::egeretto:kmodtool-secureboot";
|
|
||||||
+
|
|
||||||
+ // Terra repositories
|
|
||||||
+ private const string TERRA_PACKAGE_ORIGIN = "terra";
|
|
||||||
|
|
||||||
public RuntimeStatus runtime_status { get; set; default = RuntimeStatus.UP_TO_DATE; }
|
|
||||||
|
|
||||||
@@ -216,8 +237,12 @@ public class AppCenterCore.Package : Object {
|
|
||||||
public bool is_native {
|
|
||||||
get {
|
|
||||||
switch (component.get_origin ()) {
|
|
||||||
- case APPCENTER_PACKAGE_ORIGIN:
|
|
||||||
- case ELEMENTARY_STABLE_PACKAGE_ORIGIN:
|
|
||||||
+ case FEDORA_STABLE_PACKAGE_ORIGIN:
|
|
||||||
+ case FEDORA_UPDATES_PACKAGE_ORIGIN:
|
|
||||||
+ case FEDORA_TESTING_PACKAGE_ORIGIN:
|
|
||||||
+ case ULTRAMARINE_PACKAGE_ORIGIN:
|
|
||||||
+ case AKMODS_SECUREBOOT_PACKAGE_ORIGIN:
|
|
||||||
+ case KMODTOOL_SECUREBOOT_PACKAGE_ORIGIN:
|
|
||||||
return true;
|
|
||||||
default:
|
|
||||||
return false;
|
|
||||||
@@ -328,12 +353,33 @@ public class AppCenterCore.Package : Object {
|
|
||||||
owned get {
|
|
||||||
unowned string origin = component.get_origin ();
|
|
||||||
if (backend is PackageKitBackend) {
|
|
||||||
- if (origin == APPCENTER_PACKAGE_ORIGIN) {
|
|
||||||
- return _("AppCenter");
|
|
||||||
- } else if (origin == ELEMENTARY_STABLE_PACKAGE_ORIGIN) {
|
|
||||||
- return _("elementary Updates");
|
|
||||||
- } else if (origin.has_prefix ("ubuntu-")) {
|
|
||||||
- return _("Ubuntu (non-curated)");
|
|
||||||
+ switch (origin) {
|
|
||||||
+ case FEDORA_STABLE_PACKAGE_ORIGIN:
|
|
||||||
+ return "Fedora";
|
|
||||||
+ case FEDORA_UPDATES_PACKAGE_ORIGIN:
|
|
||||||
+ return "Fedora Updates";
|
|
||||||
+ case FEDORA_TESTING_PACKAGE_ORIGIN:
|
|
||||||
+ return "Fedora Updates (Testing)";
|
|
||||||
+ case RPMFUSION_FREE_STABLE_PACKAGE_ORIGIN:
|
|
||||||
+ return "RPMFusion";
|
|
||||||
+ case RPMFUSION_FREE_UPDATES_PACKAGE_ORIGIN:
|
|
||||||
+ return "RPMFusion Updates";
|
|
||||||
+ case RPMFUSION_FREE_TESTING_PACKAGE_ORIGIN:
|
|
||||||
+ return "RPMFusion Updates (Testing)";
|
|
||||||
+ case RPMFUSION_NONFREE_STABLE_PACKAGE_ORIGIN:
|
|
||||||
+ return "RPMFusion (Non-free Software)";
|
|
||||||
+ case RPMFUSION_NONFREE_UPDATES_PACKAGE_ORIGIN:
|
|
||||||
+ return "RPMFusion (Non-free Software) Updates";
|
|
||||||
+ case RPMFUSION_NONFREE_TESTING_PACKAGE_ORIGIN:
|
|
||||||
+ return "RPMFusion (Non-free Software) Updates (Testing)";
|
|
||||||
+ case ULTRAMARINE_PACKAGE_ORIGIN:
|
|
||||||
+ return "Ultramarine";
|
|
||||||
+ case AKMODS_SECUREBOOT_PACKAGE_ORIGIN:
|
|
||||||
+ return "Secureboot support for akmods";
|
|
||||||
+ case KMODTOOL_SECUREBOOT_PACKAGE_ORIGIN:
|
|
||||||
+ return "Secureboot support for kmodtool";
|
|
||||||
+ case TERRA_PACKAGE_ORIGIN:
|
|
||||||
+ return "Terra";
|
|
||||||
}
|
|
||||||
} else if (backend is FlatpakBackend) {
|
|
||||||
var fp_package = this as FlatpakPackage;
|
|
||||||
@@ -342,8 +388,6 @@ public class AppCenterCore.Package : Object {
|
|
||||||
}
|
|
||||||
|
|
||||||
return fp_package.remote_title;
|
|
||||||
- } else if (backend is UbuntuDriversBackend) {
|
|
||||||
- return _("Ubuntu Drivers");
|
|
||||||
}
|
|
||||||
|
|
||||||
return _("Unknown Origin (non-curated)");
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
rpm {
|
|
||||||
spec = "elementary-appcenter.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
# false positives
|
|
||||||
addFilter("E: invalid-lc-messages-dir /usr/share/locale/bh*")
|
|
||||||
addFilter("E: invalid-lc-messages-dir /usr/share/locale/mo*")
|
|
||||||
|
|
||||||
# don't care about manpages
|
|
||||||
addFilter("W: no-manual-page-for-binary io.elementary.appcenter*")
|
|
||||||
|
|
||||||
# don't care about no documentation for sub-packages
|
|
||||||
addFilter("W: no-documentation*")
|
|
||||||
|
|
||||||
@@ -1,315 +0,0 @@
|
|||||||
%global appname io.elementary.appcenter
|
|
||||||
|
|
||||||
Name: elementary-appcenter
|
|
||||||
Summary: Software Center from elementary
|
|
||||||
Version: 8.2.0
|
|
||||||
Release: 1%?dist
|
|
||||||
License: GPL-3.0
|
|
||||||
|
|
||||||
Provides: appcenter = %{version}-%{release}
|
|
||||||
Obsoletes: appcenter < 7.2.1-2
|
|
||||||
|
|
||||||
URL: https://github.com/elementary/appcenter
|
|
||||||
Source0: %url/archive/%{version}/appcenter-%{version}.tar.gz
|
|
||||||
|
|
||||||
Patch0: pr2099.patch
|
|
||||||
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
BuildRequires: gettext
|
|
||||||
BuildRequires: libappstream-glib
|
|
||||||
BuildRequires: meson
|
|
||||||
BuildRequires: vala
|
|
||||||
|
|
||||||
BuildRequires: appstream-vala
|
|
||||||
|
|
||||||
BuildRequires: pkgconfig(appstream) >= 0.10.0
|
|
||||||
BuildRequires: pkgconfig(dbus-1)
|
|
||||||
BuildRequires: pkgconfig(flatpak)
|
|
||||||
BuildRequires: pkgconfig(gee-0.8)
|
|
||||||
BuildRequires: pkgconfig(granite) >= 6.0.0
|
|
||||||
BuildRequires: pkgconfig(gtk+-3.0) >= 3.10
|
|
||||||
BuildRequires: pkgconfig(json-glib-1.0)
|
|
||||||
BuildRequires: pkgconfig(libhandy-1)
|
|
||||||
BuildRequires: pkgconfig(libsoup-2.4)
|
|
||||||
BuildRequires: pkgconfig(libxml-2.0)
|
|
||||||
BuildRequires: pkgconfig(packagekit-glib2)
|
|
||||||
BuildRequires: pkgconfig(polkit-gobject-1)
|
|
||||||
|
|
||||||
Requires: PackageKit
|
|
||||||
Requires: hicolor-icon-theme
|
|
||||||
|
|
||||||
%description
|
|
||||||
AppCenter is a native Gtk+ app store built on AppStream and Packagekit.
|
|
||||||
|
|
||||||
|
|
||||||
%package gnome-shell-search-provider
|
|
||||||
Summary: Software Center from elementary (gnome-shell search provider)
|
|
||||||
|
|
||||||
Provides: appcenter-gnome-shell-search-provider = %{version}-%{release}
|
|
||||||
Obsoletes: appcenter-gnome-shell-search-provider < 7.2.1-2
|
|
||||||
|
|
||||||
BuildArch: noarch
|
|
||||||
|
|
||||||
Requires: %{name} = %{version}-%{release}
|
|
||||||
Requires: gnome-shell
|
|
||||||
|
|
||||||
Supplements: (%{name} and gnome-shell)
|
|
||||||
|
|
||||||
%description gnome-shell-search-provider
|
|
||||||
AppCenter is a native Gtk+ app store built on AppStream and Packagekit.
|
|
||||||
|
|
||||||
This package contains the gnome-shell search provider.
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -p1 -n appcenter-%version
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
|
||||||
%meson -Dpayments=false -Dcurated=false -Dhide_upstream_distro_apps=false
|
|
||||||
%meson_build
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%meson_install
|
|
||||||
|
|
||||||
%find_lang %{appname}
|
|
||||||
|
|
||||||
# remove empty hidden apps file
|
|
||||||
rm -r %{buildroot}/%{_sysconfdir}/%{appname}/appcenter.hiddenapps
|
|
||||||
|
|
||||||
# create autostart entry symlink
|
|
||||||
mkdir -p %{buildroot}/%{_sysconfdir}/xdg/autostart/
|
|
||||||
|
|
||||||
ln -s %{_datadir}/applications/%{appname}-daemon.desktop \
|
|
||||||
%{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
|
|
||||||
|
|
||||||
|
|
||||||
%check
|
|
||||||
desktop-file-validate \
|
|
||||||
%{buildroot}/%{_datadir}/applications/%{appname}*.desktop
|
|
||||||
|
|
||||||
appstream-util validate-relax --nonet \
|
|
||||||
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
|
|
||||||
|
|
||||||
|
|
||||||
%files -f %{appname}.lang
|
|
||||||
%doc README.md
|
|
||||||
%license COPYING
|
|
||||||
|
|
||||||
%dir %{_sysconfdir}/%{appname}
|
|
||||||
%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
|
|
||||||
|
|
||||||
%{_bindir}/%{appname}
|
|
||||||
|
|
||||||
%{_datadir}/applications/%{appname}*.desktop
|
|
||||||
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
|
|
||||||
%{_datadir}/icons/hicolor/*/apps/%{appname}{,-symbolic}.svg
|
|
||||||
%{_datadir}/metainfo/%{appname}.metainfo.xml
|
|
||||||
%{_datadir}/polkit-1/actions/%{appname}.policy
|
|
||||||
|
|
||||||
|
|
||||||
%files gnome-shell-search-provider
|
|
||||||
%{_datadir}/gnome-shell/search-providers/%{appname}.search-provider.ini
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Tue Jun 07 2022 Fabio Valentini <decathorpe@gmail.com> - 3.10.0-1
|
|
||||||
- Update to version 3.10.0.
|
|
||||||
|
|
||||||
* Tue Dec 14 2021 Fabio Valentini <decathorpe@gmail.com> - 3.9.1-1
|
|
||||||
- Update to version 3.9.1.
|
|
||||||
|
|
||||||
* Wed Nov 24 2021 Fabio Valentini <decathorpe@gmail.com> - 3.9.0-1
|
|
||||||
- Update to version 3.9.0.
|
|
||||||
|
|
||||||
* Sat Oct 30 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.2-1
|
|
||||||
- Update to version 3.8.2.
|
|
||||||
|
|
||||||
* Wed Oct 27 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.1-1
|
|
||||||
- Update to version 3.8.1.
|
|
||||||
|
|
||||||
* Tue Sep 28 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.0-1
|
|
||||||
- Update to version 3.8.0.
|
|
||||||
|
|
||||||
* Fri Sep 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-3
|
|
||||||
- Mark flatpak sources in the UI.
|
|
||||||
|
|
||||||
* Fri Sep 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-2
|
|
||||||
- Hard-code Fedora instead of ubuntu repository names.
|
|
||||||
|
|
||||||
* Tue Aug 31 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-1
|
|
||||||
- Update to version 3.7.1.
|
|
||||||
|
|
||||||
* Fri Aug 27 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.0-1
|
|
||||||
- Update to version 3.7.0.
|
|
||||||
|
|
||||||
* Tue Aug 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.3-1
|
|
||||||
- Update to version 3.6.3.
|
|
||||||
|
|
||||||
* Wed Aug 11 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.2-1
|
|
||||||
- Update to version 3.6.2.
|
|
||||||
|
|
||||||
* Thu Aug 05 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.1-1
|
|
||||||
- Update to version 3.6.1.
|
|
||||||
|
|
||||||
* Fri Jul 16 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.0-1
|
|
||||||
- Update to version 3.6.0.
|
|
||||||
|
|
||||||
* Fri Oct 09 2020 Fabio Valentini <decathorpe@gmail.com> - 3.5.1-1
|
|
||||||
- Update to version 3.5.1.
|
|
||||||
|
|
||||||
* Wed Oct 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.5.0-1
|
|
||||||
- Update to version 3.5.0.
|
|
||||||
|
|
||||||
* Fri Aug 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.2-1
|
|
||||||
- Update to version 3.4.2.
|
|
||||||
|
|
||||||
* Thu Jul 02 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.1-1
|
|
||||||
- Update to version 3.4.1.
|
|
||||||
|
|
||||||
* Thu May 28 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.0-1
|
|
||||||
- Update to version 3.4.0.
|
|
||||||
|
|
||||||
* Thu Apr 30 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.0-1
|
|
||||||
- Update to version 3.3.0.
|
|
||||||
|
|
||||||
* Thu Apr 09 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.4-1
|
|
||||||
- Update to version 3.2.4.
|
|
||||||
|
|
||||||
* Thu Apr 02 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.3-1
|
|
||||||
- Update to version 3.2.3.
|
|
||||||
|
|
||||||
* Mon Mar 23 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.2-1
|
|
||||||
- Update to version 3.2.2.
|
|
||||||
|
|
||||||
* Fri Feb 28 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.1-1
|
|
||||||
- Update to version 3.2.1.
|
|
||||||
|
|
||||||
* Fri Feb 15 2019 Fabio Valentini <decathorpe@gmail.com> - 3.1.1-1
|
|
||||||
- Update to version 3.1.1.
|
|
||||||
|
|
||||||
* Wed Jan 02 2019 Fabio Valentini <decathorpe@gmail.com> - 3.1.0-1
|
|
||||||
- Update to version 3.1.0.
|
|
||||||
- Remove empty blacklist file.
|
|
||||||
|
|
||||||
* Fri Nov 30 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0.1-2
|
|
||||||
- Drop elementaryOS blacklist in favor of the version shipped with appcenter.
|
|
||||||
|
|
||||||
* Thu Oct 25 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0.1-1
|
|
||||||
- Update to version 3.0.1.
|
|
||||||
|
|
||||||
* Tue Oct 16 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0-2
|
|
||||||
- Add missing autostart entry symlink for the daemon.
|
|
||||||
|
|
||||||
* Tue Oct 16 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0-1
|
|
||||||
- Update to version 3.0.
|
|
||||||
- Add gnome-shell search provider sub-package.
|
|
||||||
- Explicitly disable payment system and curated applications.
|
|
||||||
- Update blacklist file to current version from elementaryOS.
|
|
||||||
|
|
||||||
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.9-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jun 13 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.9-2
|
|
||||||
- Rebuild for granite5 soname bump.
|
|
||||||
|
|
||||||
* Thu Mar 08 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.9-1
|
|
||||||
- Update to version 0.2.9.
|
|
||||||
- Add patch to fix build with the newer vala and PackageKit on f28+.
|
|
||||||
|
|
||||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.8-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 26 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.8-1
|
|
||||||
- Update to version 0.2.8.
|
|
||||||
|
|
||||||
* Tue Nov 07 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.7-1
|
|
||||||
- Update to version 0.2.7.
|
|
||||||
|
|
||||||
* Fri Nov 03 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.6-2
|
|
||||||
- Rebuild for granite soname bump.
|
|
||||||
|
|
||||||
* Mon Sep 18 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.6-1
|
|
||||||
- Update to version 0.2.6.
|
|
||||||
|
|
||||||
* Sat Aug 05 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.5-1
|
|
||||||
- Update to version 0.2.5.
|
|
||||||
- Include fedora-specific blacklist adapted from elementaryOS.
|
|
||||||
|
|
||||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.4-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.4-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jul 04 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.4-1
|
|
||||||
- Update to version 0.2.4.
|
|
||||||
|
|
||||||
* Thu Jun 01 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.3-1
|
|
||||||
- Update to version 0.2.3.
|
|
||||||
|
|
||||||
* Mon May 22 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.2-1
|
|
||||||
- Update to version 0.2.2.
|
|
||||||
|
|
||||||
* Sat May 20 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.1-1
|
|
||||||
- Update to version 0.2.1.
|
|
||||||
|
|
||||||
* Wed May 17 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2-1
|
|
||||||
- Update to version 0.2.
|
|
||||||
|
|
||||||
* Thu Mar 16 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.4-1
|
|
||||||
- Update to version 0.1.4.
|
|
||||||
- Depend on generic icon again, since it _should_ work.
|
|
||||||
|
|
||||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-8
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 27 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-7
|
|
||||||
- Add patch to rename generic icon to something branded.
|
|
||||||
|
|
||||||
* Wed Jan 25 2017 Fabio Valentini <decathorpe@gmail.com>
|
|
||||||
- Remove explicit BR: /usr/bin/pkgconfig.
|
|
||||||
|
|
||||||
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-6
|
|
||||||
- Explicitly depend on /usr/bin/pkg-config.
|
|
||||||
|
|
||||||
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-5
|
|
||||||
- Add missing scriptlets.
|
|
||||||
|
|
||||||
* Sat Jan 21 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-4
|
|
||||||
- Include icon to fix appdata metadata generation.
|
|
||||||
|
|
||||||
* Tue Jan 10 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-3
|
|
||||||
- Clean up spec file.
|
|
||||||
|
|
||||||
* Sat Dec 24 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-2
|
|
||||||
- Enable libunity support.
|
|
||||||
|
|
||||||
* Mon Dec 05 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-1
|
|
||||||
- Update to version 0.1.3.
|
|
||||||
|
|
||||||
* Sun Nov 20 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.2-2
|
|
||||||
- Build out of tree.
|
|
||||||
|
|
||||||
* Sat Oct 29 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.2-1
|
|
||||||
- Update to version 0.1.2.
|
|
||||||
|
|
||||||
* Fri Oct 07 2016 Neal Gompa <ngompa13@gmail.com> - 0.1.1-4
|
|
||||||
- Add patch to support AppStream 0.10.0 in F25 (LP#1626398)
|
|
||||||
|
|
||||||
* Thu Sep 29 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-3
|
|
||||||
- Mass rebuild.
|
|
||||||
|
|
||||||
* Wed Sep 28 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-2
|
|
||||||
- Spec file cleanups.
|
|
||||||
|
|
||||||
* Tue Sep 27 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-1
|
|
||||||
- Update to version 0.1.1.
|
|
||||||
|
|
||||||
* Sat Sep 17 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1-2
|
|
||||||
- Require PackageKit.
|
|
||||||
|
|
||||||
* Thu Aug 18 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1-1
|
|
||||||
- Update to version 0.1.
|
|
||||||
|
|
||||||
@@ -1,311 +0,0 @@
|
|||||||
commit fce55d9373bfb82953191b32e276a2129ffcb8c1
|
|
||||||
Author: Marius Meisenzahl <meisenzahl@users.noreply.github.com>
|
|
||||||
Date: Wed Feb 7 00:14:43 2024 +0100
|
|
||||||
|
|
||||||
Add support for AppStream 1.0 (#2099)
|
|
||||||
|
|
||||||
diff --git a/src/Core/FlatpakBackend.vala b/src/Core/FlatpakBackend.vala
|
|
||||||
index 98931505..10f2baab 100644
|
|
||||||
--- a/src/Core/FlatpakBackend.vala
|
|
||||||
+++ b/src/Core/FlatpakBackend.vala
|
|
||||||
@@ -400,8 +400,13 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
|
|
||||||
|
|
||||||
var category_array = new GLib.GenericArray<AppStream.Category> ();
|
|
||||||
category_array.add (category);
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ AppStream.utils_sort_components_into_categories (user_appstream_pool.get_components ().as_array (), category_array, false);
|
|
||||||
+ AppStream.utils_sort_components_into_categories (system_appstream_pool.get_components ().as_array (), category_array, false);
|
|
||||||
+#else
|
|
||||||
AppStream.utils_sort_components_into_categories (user_appstream_pool.get_components (), category_array, false);
|
|
||||||
AppStream.utils_sort_components_into_categories (system_appstream_pool.get_components (), category_array, false);
|
|
||||||
+#endif
|
|
||||||
components = category.get_components ();
|
|
||||||
|
|
||||||
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
|
|
||||||
@@ -417,13 +422,21 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
|
|
||||||
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
|
|
||||||
var comps = user_appstream_pool.search (query);
|
|
||||||
if (category == null) {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ comps.as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
comps.foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
var packages = get_packages_for_component_id (comp.get_id ());
|
|
||||||
apps.add_all (packages);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
var cat_packages = get_applications_for_category (category);
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ comps.as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
comps.foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
var packages = get_packages_for_component_id (comp.get_id ());
|
|
||||||
foreach (var package in packages) {
|
|
||||||
if (package in cat_packages) {
|
|
||||||
@@ -435,13 +448,21 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
|
|
||||||
|
|
||||||
comps = system_appstream_pool.search (query);
|
|
||||||
if (category == null) {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ comps.as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
comps.foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
var packages = get_packages_for_component_id (comp.get_id ());
|
|
||||||
apps.add_all (packages);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
var cat_packages = get_applications_for_category (category);
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ comps.as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
comps.foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
var packages = get_packages_for_component_id (comp.get_id ());
|
|
||||||
foreach (var package in packages) {
|
|
||||||
if (package in cat_packages) {
|
|
||||||
@@ -510,7 +531,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ if (package.component.get_developer ().get_name () == author) {
|
|
||||||
+#else
|
|
||||||
if (package.component.developer_name == author) {
|
|
||||||
+#endif
|
|
||||||
package_ids.add (package.component.id);
|
|
||||||
|
|
||||||
AppCenterCore.Package? user_package = null;
|
|
||||||
@@ -1095,7 +1120,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
|
|
||||||
warning ("Errors found in flatpak appdata, some components may be incomplete/missing: %s", e.message);
|
|
||||||
} finally {
|
|
||||||
var comp_validator = ComponentValidator.get_default ();
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ user_appstream_pool.get_components ().as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
user_appstream_pool.get_components ().foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
if (!comp_validator.validate (comp)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
@@ -1133,7 +1162,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
|
|
||||||
warning ("Errors found in flatpak appdata, some components may be incomplete/missing: %s", e.message);
|
|
||||||
} finally {
|
|
||||||
var comp_validator = ComponentValidator.get_default ();
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ system_appstream_pool.get_components ().as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
system_appstream_pool.get_components ().foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
if (!comp_validator.validate (comp)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
diff --git a/src/Core/Package.vala b/src/Core/Package.vala
|
|
||||||
index 0f9a90c4..ed141292 100644
|
|
||||||
--- a/src/Core/Package.vala
|
|
||||||
+++ b/src/Core/Package.vala
|
|
||||||
@@ -306,7 +306,11 @@ public class AppCenterCore.Package : Object {
|
|
||||||
return _author;
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ _author = component.get_developer ().get_name ();
|
|
||||||
+#else
|
|
||||||
_author = component.developer_name;
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (_author == null) {
|
|
||||||
var project_group = component.project_group;
|
|
||||||
@@ -677,7 +681,11 @@ public class AppCenterCore.Package : Object {
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ description = AppStream.markup_convert (description, TEXT);
|
|
||||||
+#else
|
|
||||||
description = AppStream.markup_convert_simple (description);
|
|
||||||
+#endif
|
|
||||||
} catch (Error e) {
|
|
||||||
warning ("Failed to convert description to markup: %s", e.message);
|
|
||||||
}
|
|
||||||
@@ -919,7 +927,11 @@ public class AppCenterCore.Package : Object {
|
|
||||||
}
|
|
||||||
|
|
||||||
public AppStream.Release? get_newest_release () {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ var releases = component.get_releases_plain ().get_entries ();
|
|
||||||
+#else
|
|
||||||
var releases = component.get_releases ();
|
|
||||||
+#endif
|
|
||||||
releases.sort_with_data ((a, b) => {
|
|
||||||
if (a.get_version () == null || b.get_version () == null) {
|
|
||||||
if (a.get_version () != null) {
|
|
||||||
diff --git a/src/Core/PackageKitBackend.vala b/src/Core/PackageKitBackend.vala
|
|
||||||
index 09da4074..a108831e 100644
|
|
||||||
--- a/src/Core/PackageKitBackend.vala
|
|
||||||
+++ b/src/Core/PackageKitBackend.vala
|
|
||||||
@@ -275,7 +275,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
|
|
||||||
} finally {
|
|
||||||
var new_package_list = new Gee.HashMap<string, Package> ();
|
|
||||||
var comp_validator = ComponentValidator.get_default ();
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ appstream_pool.get_components ().as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
appstream_pool.get_components ().foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
if (!comp_validator.validate (comp)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
@@ -317,7 +321,12 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
|
|
||||||
component.set_id (id);
|
|
||||||
component.set_origin (Package.APPCENTER_PACKAGE_ORIGIN);
|
|
||||||
|
|
||||||
-#if HAS_APPSTREAM_0_15
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ var components = new AppStream.ComponentBox (AppStream.ComponentBoxFlags.NONE);
|
|
||||||
+ components.add (component);
|
|
||||||
+
|
|
||||||
+ appstream_pool.add_components (components);
|
|
||||||
+#elif HAS_APPSTREAM_0_15
|
|
||||||
var components = new GenericArray<AppStream.Component> ();
|
|
||||||
components.add (component);
|
|
||||||
|
|
||||||
@@ -430,7 +439,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ if (package.component.get_developer ().get_name () == author) {
|
|
||||||
+#else
|
|
||||||
if (package.component.developer_name == author) {
|
|
||||||
+#endif
|
|
||||||
packages.add (package);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -447,7 +460,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
|
|
||||||
|
|
||||||
var category_array = new GLib.GenericArray<AppStream.Category> ();
|
|
||||||
category_array.add (category);
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ AppStream.utils_sort_components_into_categories (appstream_pool.get_components ().as_array (), category_array, true);
|
|
||||||
+#else
|
|
||||||
AppStream.utils_sort_components_into_categories (appstream_pool.get_components (), category_array, true);
|
|
||||||
+#endif
|
|
||||||
components = category.get_components ();
|
|
||||||
|
|
||||||
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
|
|
||||||
@@ -465,7 +482,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
|
|
||||||
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
|
|
||||||
var comps = appstream_pool.search (query);
|
|
||||||
if (category == null) {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ comps.as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
comps.foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
var package = get_package_for_component_id (comp.get_id ());
|
|
||||||
if (package != null) {
|
|
||||||
apps.add (package);
|
|
||||||
@@ -473,7 +494,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
var cat_packages = get_applications_for_category (category);
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ comps.as_array ().foreach ((comp) => {
|
|
||||||
+#else
|
|
||||||
comps.foreach ((comp) => {
|
|
||||||
+#endif
|
|
||||||
var package = get_package_for_component_id (comp.get_id ());
|
|
||||||
if (package != null && package in cat_packages) {
|
|
||||||
apps.add (package);
|
|
||||||
diff --git a/src/Views/AppInfoView.vala b/src/Views/AppInfoView.vala
|
|
||||||
index 5a3a361a..bef37f0e 100644
|
|
||||||
--- a/src/Views/AppInfoView.vala
|
|
||||||
+++ b/src/Views/AppInfoView.vala
|
|
||||||
@@ -310,8 +310,16 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
|
|
||||||
oars_flowbox.add (uncurated);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ var active_locale = "en-US";
|
|
||||||
+ if (package_component.get_context () != null) {
|
|
||||||
+ active_locale = package_component.get_context ().get_locale () ?? "en-US";
|
|
||||||
+ }
|
|
||||||
+#else
|
|
||||||
var active_locale = package_component.get_active_locale ();
|
|
||||||
- if (active_locale != "en_US") {
|
|
||||||
+#endif
|
|
||||||
+ if (active_locale != "en_US" && active_locale != "en-US") {
|
|
||||||
var percent_translated = package_component.get_language (
|
|
||||||
// Expects language without locale
|
|
||||||
active_locale.split ("_")[0]
|
|
||||||
@@ -492,7 +500,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ screenshots = package_component.get_screenshots_all ();
|
|
||||||
+#else
|
|
||||||
screenshots = package_component.get_screenshots ();
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (screenshots.length > 0) {
|
|
||||||
screenshot_carousel = new Hdy.Carousel () {
|
|
||||||
@@ -1030,7 +1042,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
|
|
||||||
get_app_download_size.begin ();
|
|
||||||
|
|
||||||
Idle.add (() => {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ var releases = package.component.get_releases_plain ().get_entries ();
|
|
||||||
+#else
|
|
||||||
var releases = package.component.get_releases ();
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
foreach (unowned var release in releases) {
|
|
||||||
if (release.get_version () == null) {
|
|
||||||
@@ -1049,7 +1065,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
|
|
||||||
|
|
||||||
release_carousel.add (release_row);
|
|
||||||
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ if (package.installed && AppStream.vercmp_simple (release.get_version (), package.get_version ()) <= 0) {
|
|
||||||
+#else
|
|
||||||
if (package.installed && AppStream.utils_compare_versions (release.get_version (), package.get_version ()) <= 0) {
|
|
||||||
+#endif
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
diff --git a/src/Widgets/ReleaseRow.vala b/src/Widgets/ReleaseRow.vala
|
|
||||||
index 3b487914..36fcbc76 100644
|
|
||||||
--- a/src/Widgets/ReleaseRow.vala
|
|
||||||
+++ b/src/Widgets/ReleaseRow.vala
|
|
||||||
@@ -116,7 +116,11 @@ public class AppCenter.Widgets.ReleaseRow : Gtk.Box {
|
|
||||||
private string format_release_description (string? description ) {
|
|
||||||
if (description != null) {
|
|
||||||
try {
|
|
||||||
+#if HAS_APPSTREAM_1_0
|
|
||||||
+ var markup = AppStream.markup_convert (description, TEXT);
|
|
||||||
+#else
|
|
||||||
var markup = AppStream.markup_convert_simple (description);
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
if (markup.strip () != "") {
|
|
||||||
return markup;
|
|
||||||
diff --git a/src/meson.build b/src/meson.build
|
|
||||||
index d3d558ef..df69a0bf 100644
|
|
||||||
--- a/src/meson.build
|
|
||||||
+++ b/src/meson.build
|
|
||||||
@@ -78,6 +78,10 @@ if appstream.version().version_compare('>=0.16')
|
|
||||||
args += '--define=HAS_APPSTREAM_0_16'
|
|
||||||
endif
|
|
||||||
|
|
||||||
+if appstream.version().version_compare('>=1.0')
|
|
||||||
+ args += '--define=HAS_APPSTREAM_1_0'
|
|
||||||
+endif
|
|
||||||
+
|
|
||||||
if get_option('packagekit_backend')
|
|
||||||
appcenter_files += files(
|
|
||||||
'Core/PackageKitBackend.vala',
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
rpm.version(gh("elementary/appcenter"));
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
rpm {
|
|
||||||
spec = "contractor.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
Name: contractor
|
|
||||||
Version: 0.3.5
|
|
||||||
Release: 1%{?dist}
|
|
||||||
Summary: Desktop-wide extension service
|
|
||||||
|
|
||||||
License: GPL-3.0-or-later
|
|
||||||
URL: https://github.com/elementary/contractor
|
|
||||||
Source0: %{url}/archive/%{version}/contractor-%{version}.tar.gz
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
|
||||||
BuildRequires: vala
|
|
||||||
BuildRequires: meson
|
|
||||||
|
|
||||||
# data/meson.build
|
|
||||||
BuildRequires: pkgconfig(dbus-1)
|
|
||||||
# src/meson.build
|
|
||||||
BuildRequires: pkgconfig(gee-0.8)
|
|
||||||
BuildRequires: pkgconfig(gio-2.0)
|
|
||||||
BuildRequires: pkgconfig(gio-unix-2.0)
|
|
||||||
BuildRequires: pkgconfig(glib-2.0)
|
|
||||||
|
|
||||||
# For %%{_datadir}/dbus-1/services/ directory:
|
|
||||||
Requires: dbus-common
|
|
||||||
|
|
||||||
%description
|
|
||||||
An extension service that allows apps to use the exposed functionality
|
|
||||||
of registered apps. This way, apps don't have to have the functions hard
|
|
||||||
coded into them.
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
|
||||||
%meson
|
|
||||||
%meson_build
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%meson_install
|
|
||||||
|
|
||||||
# Create the the directory where other programs put their contracts
|
|
||||||
mkdir -p %{buildroot}/%{_datadir}/contractor
|
|
||||||
|
|
||||||
|
|
||||||
%files
|
|
||||||
%doc README.md
|
|
||||||
%license COPYING
|
|
||||||
|
|
||||||
%{_bindir}/contractor
|
|
||||||
|
|
||||||
%dir %{_datadir}/contractor
|
|
||||||
%{_datadir}/dbus-1/services/org.elementary.contractor.service
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
%autochangelog
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
rpm.version(gh("elementary/contractor"))
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
rpm {
|
|
||||||
spec = "elementary-calculator.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,74 +0,0 @@
|
|||||||
%global srcname calculator
|
|
||||||
%global appname io.elementary.calculator
|
|
||||||
|
|
||||||
Name: elementary-calculator
|
|
||||||
Summary: Calculator app designed for elementary
|
|
||||||
Version: 8.0.0
|
|
||||||
Release: 1%?dist
|
|
||||||
License: GPL-3.0-or-later
|
|
||||||
|
|
||||||
URL: https://github.com/elementary/%{srcname}
|
|
||||||
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
|
|
||||||
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
BuildRequires: gettext
|
|
||||||
BuildRequires: libappstream-glib
|
|
||||||
BuildRequires: meson >= 0.49
|
|
||||||
BuildRequires: vala
|
|
||||||
|
|
||||||
BuildRequires: pkgconfig(granite-7) >= 7.0.0
|
|
||||||
BuildRequires: pkgconfig(gtk4)
|
|
||||||
BuildRequires: fdupes
|
|
||||||
|
|
||||||
Requires: hicolor-icon-theme
|
|
||||||
|
|
||||||
Provides: pantheon-calculator = %{version}-%{release}
|
|
||||||
Obsoletes: pantheon-calculator < 0.1.3-5
|
|
||||||
|
|
||||||
%description
|
|
||||||
A simple calculator for everyday use.
|
|
||||||
|
|
||||||
It supports basic and some scientific calculations, including trigonometry
|
|
||||||
functions (sin, cos, and tan).
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -n %{srcname}-%{version} -p1
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
|
||||||
%meson
|
|
||||||
%meson_build
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%meson_install
|
|
||||||
|
|
||||||
%find_lang %{appname}
|
|
||||||
|
|
||||||
%fdupes %buildroot/%_datadir/icons/hicolor
|
|
||||||
|
|
||||||
|
|
||||||
%check
|
|
||||||
desktop-file-validate \
|
|
||||||
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
|
|
||||||
|
|
||||||
appstream-util validate-relax --nonet \
|
|
||||||
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
|
|
||||||
|
|
||||||
|
|
||||||
%files -f %{appname}.lang
|
|
||||||
%license COPYING
|
|
||||||
%doc README.md
|
|
||||||
|
|
||||||
%{_bindir}/%{appname}
|
|
||||||
|
|
||||||
%{_datadir}/applications/%{appname}.desktop
|
|
||||||
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
|
|
||||||
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
|
|
||||||
%{_datadir}/metainfo/%{appname}.metainfo.xml
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 1.7.2-1
|
|
||||||
- Repackaged for Terra
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
rpm.version(gh("elementary/calculator"));
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
project pkg {
|
|
||||||
rpm {
|
|
||||||
spec = "elementary-calendar.spec"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,109 +0,0 @@
|
|||||||
%global srcname calendar
|
|
||||||
%global appname io.elementary.calendar
|
|
||||||
|
|
||||||
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
|
|
||||||
|
|
||||||
Name: elementary-calendar
|
|
||||||
Summary: Desktop calendar app designed for elementary
|
|
||||||
Version: 8.0.0
|
|
||||||
Release: 1%?dist
|
|
||||||
License: GPL-3.0-or-later
|
|
||||||
|
|
||||||
URL: https://github.com/elementary/calendar
|
|
||||||
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
|
|
||||||
|
|
||||||
BuildRequires: desktop-file-utils
|
|
||||||
BuildRequires: gettext
|
|
||||||
BuildRequires: libappstream-glib
|
|
||||||
BuildRequires: pkgconfig(champlain-0.12)
|
|
||||||
BuildRequires: pkgconfig(libecal-2.0)
|
|
||||||
BuildRequires: pkgconfig(granite)
|
|
||||||
BuildRequires: pkgconfig(libhandy-1)
|
|
||||||
# BuildRequires: pkgconfig(libportal)
|
|
||||||
BuildRequires: pkgconfig(libportal-gtk3)
|
|
||||||
BuildRequires: folks-devel
|
|
||||||
BuildRequires: libgee-devel
|
|
||||||
BuildRequires: pkgconfig(geocode-glib-2.0)
|
|
||||||
BuildRequires: geoclue2-devel
|
|
||||||
BuildRequires: glib2-devel
|
|
||||||
BuildRequires: gtk+-devel
|
|
||||||
BuildRequires: libical
|
|
||||||
BuildRequires: libhandy >= 0.90.0
|
|
||||||
BuildRequires: meson
|
|
||||||
BuildRequires: vala
|
|
||||||
BuildRequires: evolution-data-server-devel
|
|
||||||
BuildRequires: fdupes
|
|
||||||
|
|
||||||
Requires: hicolor-icon-theme
|
|
||||||
|
|
||||||
%description
|
|
||||||
A slim, lightweight calendar app that syncs and manages multiple
|
|
||||||
calendars in one place, like Google Calendar, Outlook and CalDAV.
|
|
||||||
|
|
||||||
|
|
||||||
%package devel
|
|
||||||
Summary: The official elementary calendar (devel files)
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
%description devel
|
|
||||||
A slim, lightweight calendar app that syncs and manages multiple
|
|
||||||
calendars in one place, like Google Calendar, Outlook and CalDAV.
|
|
||||||
|
|
||||||
This package contains the development files.
|
|
||||||
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%autosetup -n %{srcname}-%{version} -p1
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
|
||||||
%meson
|
|
||||||
%meson_build
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
|
||||||
%meson_install
|
|
||||||
|
|
||||||
%find_lang %{appname}
|
|
||||||
|
|
||||||
%fdupes %buildroot/%_datadir/icons/hicolor
|
|
||||||
|
|
||||||
|
|
||||||
%check
|
|
||||||
%dnl desktop-file-validate %{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
|
|
||||||
desktop-file-validate %{buildroot}/%{_datadir}/applications/%{appname}.desktop
|
|
||||||
|
|
||||||
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
|
|
||||||
|
|
||||||
|
|
||||||
%files -f %{appname}.lang
|
|
||||||
%doc README.md
|
|
||||||
%license COPYING
|
|
||||||
|
|
||||||
%dnl %config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
|
|
||||||
|
|
||||||
%{_bindir}/%{appname}
|
|
||||||
|
|
||||||
%{_libdir}/lib%{name}.so.0*
|
|
||||||
%{_libdir}/%{appname}/
|
|
||||||
|
|
||||||
%{_datadir}/applications/%{appname}.desktop
|
|
||||||
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
|
|
||||||
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
|
|
||||||
%{_datadir}/metainfo/%{appname}.metainfo.xml
|
|
||||||
|
|
||||||
%files devel
|
|
||||||
%{_includedir}/%{name}/
|
|
||||||
|
|
||||||
%{_libdir}/lib%{name}.so
|
|
||||||
%{_libdir}/pkgconfig/%{name}.pc
|
|
||||||
|
|
||||||
%{_datadir}/vala/vapi/%{name}.deps
|
|
||||||
%{_datadir}/vala/vapi/%{name}.vapi
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 6.1.2-1
|
|
||||||
- new version
|
|
||||||
|
|
||||||
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
|
|
||||||
- Repackaged for Terra
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
rpm.version(gh("elementary/calendar"));
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user