├── .gitmodules
├── HowThisWorks.md
├── LICENSE
├── README.md
├── justfile
├── miracle
├── README.md
├── cosmic-ext-miracle.desktop
└── start-cosmic-ext-miracle
├── niri
├── README.md
├── cosmic-ext-niri.desktop
└── start-cosmic-ext-niri
└── sway
├── README.md
├── config-cosmic
├── cosmic-ext-sway-daemon
├── .gitignore
├── Cargo.lock
├── Cargo.toml
├── README.md
├── justfile
└── src
│ └── main.rs
├── cosmic-ext-sway.desktop
└── start-cosmic-ext-sway
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "cosmic-ext-alternative-startup"]
2 | path = cosmic-ext-alternative-startup
3 | url = https://github.com/drakulix/cosmic-ext-alternative-startup
4 |
--------------------------------------------------------------------------------
/HowThisWorks.md:
--------------------------------------------------------------------------------
1 | This project is leveraging very recent [`cosmic-session` code](https://github.com/pop-os/cosmic-session/pull/75) to start different compositors.
2 |
3 | The only thing missing then is `cosmic-comp`'s session api, which can be provided with [`cosmic-ext-alternative-startup`](https://github.com/drakulix/cosmic-ext-alternative-startup) and needs to be started by the compositor in question once startup is done and all sockets are setup.
4 |
5 | This project just puts everything together into an installable package.
6 |
7 | If you want to package this for your own compositor, you need a custom `start-cosmic-*` script and wayland-session. I recommend just taking on the existing ones, copy and modify it.
8 |
9 | Further integration depends on the compositor in question. Check out the `cosmic-ext-sway-daemon` for a little daemon that watches cosmic theme settings to apply them to `sway`.
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | GNU GENERAL PUBLIC LICENSE
2 | Version 3, 29 June 2007
3 |
4 | Copyright (C) 2007 Free Software Foundation, Inc.
5 | Everyone is permitted to copy and distribute verbatim copies
6 | of this license document, but changing it is not allowed.
7 |
8 | Preamble
9 |
10 | The GNU General Public License is a free, copyleft license for
11 | software and other kinds of works.
12 |
13 | The licenses for most software and other practical works are designed
14 | to take away your freedom to share and change the works. By contrast,
15 | the GNU General Public License is intended to guarantee your freedom to
16 | share and change all versions of a program--to make sure it remains free
17 | software for all its users. We, the Free Software Foundation, use the
18 | GNU General Public License for most of our software; it applies also to
19 | any other work released this way by its authors. You can apply it to
20 | your programs, too.
21 |
22 | When we speak of free software, we are referring to freedom, not
23 | price. Our General Public Licenses are designed to make sure that you
24 | have the freedom to distribute copies of free software (and charge for
25 | them if you wish), that you receive source code or can get it if you
26 | want it, that you can change the software or use pieces of it in new
27 | free programs, and that you know you can do these things.
28 |
29 | To protect your rights, we need to prevent others from denying you
30 | these rights or asking you to surrender the rights. Therefore, you have
31 | certain responsibilities if you distribute copies of the software, or if
32 | you modify it: responsibilities to respect the freedom of others.
33 |
34 | For example, if you distribute copies of such a program, whether
35 | gratis or for a fee, you must pass on to the recipients the same
36 | freedoms that you received. You must make sure that they, too, receive
37 | or can get the source code. And you must show them these terms so they
38 | know their rights.
39 |
40 | Developers that use the GNU GPL protect your rights with two steps:
41 | (1) assert copyright on the software, and (2) offer you this License
42 | giving you legal permission to copy, distribute and/or modify it.
43 |
44 | For the developers' and authors' protection, the GPL clearly explains
45 | that there is no warranty for this free software. For both users' and
46 | authors' sake, the GPL requires that modified versions be marked as
47 | changed, so that their problems will not be attributed erroneously to
48 | authors of previous versions.
49 |
50 | Some devices are designed to deny users access to install or run
51 | modified versions of the software inside them, although the manufacturer
52 | can do so. This is fundamentally incompatible with the aim of
53 | protecting users' freedom to change the software. The systematic
54 | pattern of such abuse occurs in the area of products for individuals to
55 | use, which is precisely where it is most unacceptable. Therefore, we
56 | have designed this version of the GPL to prohibit the practice for those
57 | products. If such problems arise substantially in other domains, we
58 | stand ready to extend this provision to those domains in future versions
59 | of the GPL, as needed to protect the freedom of users.
60 |
61 | Finally, every program is threatened constantly by software patents.
62 | States should not allow patents to restrict development and use of
63 | software on general-purpose computers, but in those that do, we wish to
64 | avoid the special danger that patents applied to a free program could
65 | make it effectively proprietary. To prevent this, the GPL assures that
66 | patents cannot be used to render the program non-free.
67 |
68 | The precise terms and conditions for copying, distribution and
69 | modification follow.
70 |
71 | TERMS AND CONDITIONS
72 |
73 | 0. Definitions.
74 |
75 | "This License" refers to version 3 of the GNU General Public License.
76 |
77 | "Copyright" also means copyright-like laws that apply to other kinds of
78 | works, such as semiconductor masks.
79 |
80 | "The Program" refers to any copyrightable work licensed under this
81 | License. Each licensee is addressed as "you". "Licensees" and
82 | "recipients" may be individuals or organizations.
83 |
84 | To "modify" a work means to copy from or adapt all or part of the work
85 | in a fashion requiring copyright permission, other than the making of an
86 | exact copy. The resulting work is called a "modified version" of the
87 | earlier work or a work "based on" the earlier work.
88 |
89 | A "covered work" means either the unmodified Program or a work based
90 | on the Program.
91 |
92 | To "propagate" a work means to do anything with it that, without
93 | permission, would make you directly or secondarily liable for
94 | infringement under applicable copyright law, except executing it on a
95 | computer or modifying a private copy. Propagation includes copying,
96 | distribution (with or without modification), making available to the
97 | public, and in some countries other activities as well.
98 |
99 | To "convey" a work means any kind of propagation that enables other
100 | parties to make or receive copies. Mere interaction with a user through
101 | a computer network, with no transfer of a copy, is not conveying.
102 |
103 | An interactive user interface displays "Appropriate Legal Notices"
104 | to the extent that it includes a convenient and prominently visible
105 | feature that (1) displays an appropriate copyright notice, and (2)
106 | tells the user that there is no warranty for the work (except to the
107 | extent that warranties are provided), that licensees may convey the
108 | work under this License, and how to view a copy of this License. If
109 | the interface presents a list of user commands or options, such as a
110 | menu, a prominent item in the list meets this criterion.
111 |
112 | 1. Source Code.
113 |
114 | The "source code" for a work means the preferred form of the work
115 | for making modifications to it. "Object code" means any non-source
116 | form of a work.
117 |
118 | A "Standard Interface" means an interface that either is an official
119 | standard defined by a recognized standards body, or, in the case of
120 | interfaces specified for a particular programming language, one that
121 | is widely used among developers working in that language.
122 |
123 | The "System Libraries" of an executable work include anything, other
124 | than the work as a whole, that (a) is included in the normal form of
125 | packaging a Major Component, but which is not part of that Major
126 | Component, and (b) serves only to enable use of the work with that
127 | Major Component, or to implement a Standard Interface for which an
128 | implementation is available to the public in source code form. A
129 | "Major Component", in this context, means a major essential component
130 | (kernel, window system, and so on) of the specific operating system
131 | (if any) on which the executable work runs, or a compiler used to
132 | produce the work, or an object code interpreter used to run it.
133 |
134 | The "Corresponding Source" for a work in object code form means all
135 | the source code needed to generate, install, and (for an executable
136 | work) run the object code and to modify the work, including scripts to
137 | control those activities. However, it does not include the work's
138 | System Libraries, or general-purpose tools or generally available free
139 | programs which are used unmodified in performing those activities but
140 | which are not part of the work. For example, Corresponding Source
141 | includes interface definition files associated with source files for
142 | the work, and the source code for shared libraries and dynamically
143 | linked subprograms that the work is specifically designed to require,
144 | such as by intimate data communication or control flow between those
145 | subprograms and other parts of the work.
146 |
147 | The Corresponding Source need not include anything that users
148 | can regenerate automatically from other parts of the Corresponding
149 | Source.
150 |
151 | The Corresponding Source for a work in source code form is that
152 | same work.
153 |
154 | 2. Basic Permissions.
155 |
156 | All rights granted under this License are granted for the term of
157 | copyright on the Program, and are irrevocable provided the stated
158 | conditions are met. This License explicitly affirms your unlimited
159 | permission to run the unmodified Program. The output from running a
160 | covered work is covered by this License only if the output, given its
161 | content, constitutes a covered work. This License acknowledges your
162 | rights of fair use or other equivalent, as provided by copyright law.
163 |
164 | You may make, run and propagate covered works that you do not
165 | convey, without conditions so long as your license otherwise remains
166 | in force. You may convey covered works to others for the sole purpose
167 | of having them make modifications exclusively for you, or provide you
168 | with facilities for running those works, provided that you comply with
169 | the terms of this License in conveying all material for which you do
170 | not control copyright. Those thus making or running the covered works
171 | for you must do so exclusively on your behalf, under your direction
172 | and control, on terms that prohibit them from making any copies of
173 | your copyrighted material outside their relationship with you.
174 |
175 | Conveying under any other circumstances is permitted solely under
176 | the conditions stated below. Sublicensing is not allowed; section 10
177 | makes it unnecessary.
178 |
179 | 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
180 |
181 | No covered work shall be deemed part of an effective technological
182 | measure under any applicable law fulfilling obligations under article
183 | 11 of the WIPO copyright treaty adopted on 20 December 1996, or
184 | similar laws prohibiting or restricting circumvention of such
185 | measures.
186 |
187 | When you convey a covered work, you waive any legal power to forbid
188 | circumvention of technological measures to the extent such circumvention
189 | is effected by exercising rights under this License with respect to
190 | the covered work, and you disclaim any intention to limit operation or
191 | modification of the work as a means of enforcing, against the work's
192 | users, your or third parties' legal rights to forbid circumvention of
193 | technological measures.
194 |
195 | 4. Conveying Verbatim Copies.
196 |
197 | You may convey verbatim copies of the Program's source code as you
198 | receive it, in any medium, provided that you conspicuously and
199 | appropriately publish on each copy an appropriate copyright notice;
200 | keep intact all notices stating that this License and any
201 | non-permissive terms added in accord with section 7 apply to the code;
202 | keep intact all notices of the absence of any warranty; and give all
203 | recipients a copy of this License along with the Program.
204 |
205 | You may charge any price or no price for each copy that you convey,
206 | and you may offer support or warranty protection for a fee.
207 |
208 | 5. Conveying Modified Source Versions.
209 |
210 | You may convey a work based on the Program, or the modifications to
211 | produce it from the Program, in the form of source code under the
212 | terms of section 4, provided that you also meet all of these conditions:
213 |
214 | a) The work must carry prominent notices stating that you modified
215 | it, and giving a relevant date.
216 |
217 | b) The work must carry prominent notices stating that it is
218 | released under this License and any conditions added under section
219 | 7. This requirement modifies the requirement in section 4 to
220 | "keep intact all notices".
221 |
222 | c) You must license the entire work, as a whole, under this
223 | License to anyone who comes into possession of a copy. This
224 | License will therefore apply, along with any applicable section 7
225 | additional terms, to the whole of the work, and all its parts,
226 | regardless of how they are packaged. This License gives no
227 | permission to license the work in any other way, but it does not
228 | invalidate such permission if you have separately received it.
229 |
230 | d) If the work has interactive user interfaces, each must display
231 | Appropriate Legal Notices; however, if the Program has interactive
232 | interfaces that do not display Appropriate Legal Notices, your
233 | work need not make them do so.
234 |
235 | A compilation of a covered work with other separate and independent
236 | works, which are not by their nature extensions of the covered work,
237 | and which are not combined with it such as to form a larger program,
238 | in or on a volume of a storage or distribution medium, is called an
239 | "aggregate" if the compilation and its resulting copyright are not
240 | used to limit the access or legal rights of the compilation's users
241 | beyond what the individual works permit. Inclusion of a covered work
242 | in an aggregate does not cause this License to apply to the other
243 | parts of the aggregate.
244 |
245 | 6. Conveying Non-Source Forms.
246 |
247 | You may convey a covered work in object code form under the terms
248 | of sections 4 and 5, provided that you also convey the
249 | machine-readable Corresponding Source under the terms of this License,
250 | in one of these ways:
251 |
252 | a) Convey the object code in, or embodied in, a physical product
253 | (including a physical distribution medium), accompanied by the
254 | Corresponding Source fixed on a durable physical medium
255 | customarily used for software interchange.
256 |
257 | b) Convey the object code in, or embodied in, a physical product
258 | (including a physical distribution medium), accompanied by a
259 | written offer, valid for at least three years and valid for as
260 | long as you offer spare parts or customer support for that product
261 | model, to give anyone who possesses the object code either (1) a
262 | copy of the Corresponding Source for all the software in the
263 | product that is covered by this License, on a durable physical
264 | medium customarily used for software interchange, for a price no
265 | more than your reasonable cost of physically performing this
266 | conveying of source, or (2) access to copy the
267 | Corresponding Source from a network server at no charge.
268 |
269 | c) Convey individual copies of the object code with a copy of the
270 | written offer to provide the Corresponding Source. This
271 | alternative is allowed only occasionally and noncommercially, and
272 | only if you received the object code with such an offer, in accord
273 | with subsection 6b.
274 |
275 | d) Convey the object code by offering access from a designated
276 | place (gratis or for a charge), and offer equivalent access to the
277 | Corresponding Source in the same way through the same place at no
278 | further charge. You need not require recipients to copy the
279 | Corresponding Source along with the object code. If the place to
280 | copy the object code is a network server, the Corresponding Source
281 | may be on a different server (operated by you or a third party)
282 | that supports equivalent copying facilities, provided you maintain
283 | clear directions next to the object code saying where to find the
284 | Corresponding Source. Regardless of what server hosts the
285 | Corresponding Source, you remain obligated to ensure that it is
286 | available for as long as needed to satisfy these requirements.
287 |
288 | e) Convey the object code using peer-to-peer transmission, provided
289 | you inform other peers where the object code and Corresponding
290 | Source of the work are being offered to the general public at no
291 | charge under subsection 6d.
292 |
293 | A separable portion of the object code, whose source code is excluded
294 | from the Corresponding Source as a System Library, need not be
295 | included in conveying the object code work.
296 |
297 | A "User Product" is either (1) a "consumer product", which means any
298 | tangible personal property which is normally used for personal, family,
299 | or household purposes, or (2) anything designed or sold for incorporation
300 | into a dwelling. In determining whether a product is a consumer product,
301 | doubtful cases shall be resolved in favor of coverage. For a particular
302 | product received by a particular user, "normally used" refers to a
303 | typical or common use of that class of product, regardless of the status
304 | of the particular user or of the way in which the particular user
305 | actually uses, or expects or is expected to use, the product. A product
306 | is a consumer product regardless of whether the product has substantial
307 | commercial, industrial or non-consumer uses, unless such uses represent
308 | the only significant mode of use of the product.
309 |
310 | "Installation Information" for a User Product means any methods,
311 | procedures, authorization keys, or other information required to install
312 | and execute modified versions of a covered work in that User Product from
313 | a modified version of its Corresponding Source. The information must
314 | suffice to ensure that the continued functioning of the modified object
315 | code is in no case prevented or interfered with solely because
316 | modification has been made.
317 |
318 | If you convey an object code work under this section in, or with, or
319 | specifically for use in, a User Product, and the conveying occurs as
320 | part of a transaction in which the right of possession and use of the
321 | User Product is transferred to the recipient in perpetuity or for a
322 | fixed term (regardless of how the transaction is characterized), the
323 | Corresponding Source conveyed under this section must be accompanied
324 | by the Installation Information. But this requirement does not apply
325 | if neither you nor any third party retains the ability to install
326 | modified object code on the User Product (for example, the work has
327 | been installed in ROM).
328 |
329 | The requirement to provide Installation Information does not include a
330 | requirement to continue to provide support service, warranty, or updates
331 | for a work that has been modified or installed by the recipient, or for
332 | the User Product in which it has been modified or installed. Access to a
333 | network may be denied when the modification itself materially and
334 | adversely affects the operation of the network or violates the rules and
335 | protocols for communication across the network.
336 |
337 | Corresponding Source conveyed, and Installation Information provided,
338 | in accord with this section must be in a format that is publicly
339 | documented (and with an implementation available to the public in
340 | source code form), and must require no special password or key for
341 | unpacking, reading or copying.
342 |
343 | 7. Additional Terms.
344 |
345 | "Additional permissions" are terms that supplement the terms of this
346 | License by making exceptions from one or more of its conditions.
347 | Additional permissions that are applicable to the entire Program shall
348 | be treated as though they were included in this License, to the extent
349 | that they are valid under applicable law. If additional permissions
350 | apply only to part of the Program, that part may be used separately
351 | under those permissions, but the entire Program remains governed by
352 | this License without regard to the additional permissions.
353 |
354 | When you convey a copy of a covered work, you may at your option
355 | remove any additional permissions from that copy, or from any part of
356 | it. (Additional permissions may be written to require their own
357 | removal in certain cases when you modify the work.) You may place
358 | additional permissions on material, added by you to a covered work,
359 | for which you have or can give appropriate copyright permission.
360 |
361 | Notwithstanding any other provision of this License, for material you
362 | add to a covered work, you may (if authorized by the copyright holders of
363 | that material) supplement the terms of this License with terms:
364 |
365 | a) Disclaiming warranty or limiting liability differently from the
366 | terms of sections 15 and 16 of this License; or
367 |
368 | b) Requiring preservation of specified reasonable legal notices or
369 | author attributions in that material or in the Appropriate Legal
370 | Notices displayed by works containing it; or
371 |
372 | c) Prohibiting misrepresentation of the origin of that material, or
373 | requiring that modified versions of such material be marked in
374 | reasonable ways as different from the original version; or
375 |
376 | d) Limiting the use for publicity purposes of names of licensors or
377 | authors of the material; or
378 |
379 | e) Declining to grant rights under trademark law for use of some
380 | trade names, trademarks, or service marks; or
381 |
382 | f) Requiring indemnification of licensors and authors of that
383 | material by anyone who conveys the material (or modified versions of
384 | it) with contractual assumptions of liability to the recipient, for
385 | any liability that these contractual assumptions directly impose on
386 | those licensors and authors.
387 |
388 | All other non-permissive additional terms are considered "further
389 | restrictions" within the meaning of section 10. If the Program as you
390 | received it, or any part of it, contains a notice stating that it is
391 | governed by this License along with a term that is a further
392 | restriction, you may remove that term. If a license document contains
393 | a further restriction but permits relicensing or conveying under this
394 | License, you may add to a covered work material governed by the terms
395 | of that license document, provided that the further restriction does
396 | not survive such relicensing or conveying.
397 |
398 | If you add terms to a covered work in accord with this section, you
399 | must place, in the relevant source files, a statement of the
400 | additional terms that apply to those files, or a notice indicating
401 | where to find the applicable terms.
402 |
403 | Additional terms, permissive or non-permissive, may be stated in the
404 | form of a separately written license, or stated as exceptions;
405 | the above requirements apply either way.
406 |
407 | 8. Termination.
408 |
409 | You may not propagate or modify a covered work except as expressly
410 | provided under this License. Any attempt otherwise to propagate or
411 | modify it is void, and will automatically terminate your rights under
412 | this License (including any patent licenses granted under the third
413 | paragraph of section 11).
414 |
415 | However, if you cease all violation of this License, then your
416 | license from a particular copyright holder is reinstated (a)
417 | provisionally, unless and until the copyright holder explicitly and
418 | finally terminates your license, and (b) permanently, if the copyright
419 | holder fails to notify you of the violation by some reasonable means
420 | prior to 60 days after the cessation.
421 |
422 | Moreover, your license from a particular copyright holder is
423 | reinstated permanently if the copyright holder notifies you of the
424 | violation by some reasonable means, this is the first time you have
425 | received notice of violation of this License (for any work) from that
426 | copyright holder, and you cure the violation prior to 30 days after
427 | your receipt of the notice.
428 |
429 | Termination of your rights under this section does not terminate the
430 | licenses of parties who have received copies or rights from you under
431 | this License. If your rights have been terminated and not permanently
432 | reinstated, you do not qualify to receive new licenses for the same
433 | material under section 10.
434 |
435 | 9. Acceptance Not Required for Having Copies.
436 |
437 | You are not required to accept this License in order to receive or
438 | run a copy of the Program. Ancillary propagation of a covered work
439 | occurring solely as a consequence of using peer-to-peer transmission
440 | to receive a copy likewise does not require acceptance. However,
441 | nothing other than this License grants you permission to propagate or
442 | modify any covered work. These actions infringe copyright if you do
443 | not accept this License. Therefore, by modifying or propagating a
444 | covered work, you indicate your acceptance of this License to do so.
445 |
446 | 10. Automatic Licensing of Downstream Recipients.
447 |
448 | Each time you convey a covered work, the recipient automatically
449 | receives a license from the original licensors, to run, modify and
450 | propagate that work, subject to this License. You are not responsible
451 | for enforcing compliance by third parties with this License.
452 |
453 | An "entity transaction" is a transaction transferring control of an
454 | organization, or substantially all assets of one, or subdividing an
455 | organization, or merging organizations. If propagation of a covered
456 | work results from an entity transaction, each party to that
457 | transaction who receives a copy of the work also receives whatever
458 | licenses to the work the party's predecessor in interest had or could
459 | give under the previous paragraph, plus a right to possession of the
460 | Corresponding Source of the work from the predecessor in interest, if
461 | the predecessor has it or can get it with reasonable efforts.
462 |
463 | You may not impose any further restrictions on the exercise of the
464 | rights granted or affirmed under this License. For example, you may
465 | not impose a license fee, royalty, or other charge for exercise of
466 | rights granted under this License, and you may not initiate litigation
467 | (including a cross-claim or counterclaim in a lawsuit) alleging that
468 | any patent claim is infringed by making, using, selling, offering for
469 | sale, or importing the Program or any portion of it.
470 |
471 | 11. Patents.
472 |
473 | A "contributor" is a copyright holder who authorizes use under this
474 | License of the Program or a work on which the Program is based. The
475 | work thus licensed is called the contributor's "contributor version".
476 |
477 | A contributor's "essential patent claims" are all patent claims
478 | owned or controlled by the contributor, whether already acquired or
479 | hereafter acquired, that would be infringed by some manner, permitted
480 | by this License, of making, using, or selling its contributor version,
481 | but do not include claims that would be infringed only as a
482 | consequence of further modification of the contributor version. For
483 | purposes of this definition, "control" includes the right to grant
484 | patent sublicenses in a manner consistent with the requirements of
485 | this License.
486 |
487 | Each contributor grants you a non-exclusive, worldwide, royalty-free
488 | patent license under the contributor's essential patent claims, to
489 | make, use, sell, offer for sale, import and otherwise run, modify and
490 | propagate the contents of its contributor version.
491 |
492 | In the following three paragraphs, a "patent license" is any express
493 | agreement or commitment, however denominated, not to enforce a patent
494 | (such as an express permission to practice a patent or covenant not to
495 | sue for patent infringement). To "grant" such a patent license to a
496 | party means to make such an agreement or commitment not to enforce a
497 | patent against the party.
498 |
499 | If you convey a covered work, knowingly relying on a patent license,
500 | and the Corresponding Source of the work is not available for anyone
501 | to copy, free of charge and under the terms of this License, through a
502 | publicly available network server or other readily accessible means,
503 | then you must either (1) cause the Corresponding Source to be so
504 | available, or (2) arrange to deprive yourself of the benefit of the
505 | patent license for this particular work, or (3) arrange, in a manner
506 | consistent with the requirements of this License, to extend the patent
507 | license to downstream recipients. "Knowingly relying" means you have
508 | actual knowledge that, but for the patent license, your conveying the
509 | covered work in a country, or your recipient's use of the covered work
510 | in a country, would infringe one or more identifiable patents in that
511 | country that you have reason to believe are valid.
512 |
513 | If, pursuant to or in connection with a single transaction or
514 | arrangement, you convey, or propagate by procuring conveyance of, a
515 | covered work, and grant a patent license to some of the parties
516 | receiving the covered work authorizing them to use, propagate, modify
517 | or convey a specific copy of the covered work, then the patent license
518 | you grant is automatically extended to all recipients of the covered
519 | work and works based on it.
520 |
521 | A patent license is "discriminatory" if it does not include within
522 | the scope of its coverage, prohibits the exercise of, or is
523 | conditioned on the non-exercise of one or more of the rights that are
524 | specifically granted under this License. You may not convey a covered
525 | work if you are a party to an arrangement with a third party that is
526 | in the business of distributing software, under which you make payment
527 | to the third party based on the extent of your activity of conveying
528 | the work, and under which the third party grants, to any of the
529 | parties who would receive the covered work from you, a discriminatory
530 | patent license (a) in connection with copies of the covered work
531 | conveyed by you (or copies made from those copies), or (b) primarily
532 | for and in connection with specific products or compilations that
533 | contain the covered work, unless you entered into that arrangement,
534 | or that patent license was granted, prior to 28 March 2007.
535 |
536 | Nothing in this License shall be construed as excluding or limiting
537 | any implied license or other defenses to infringement that may
538 | otherwise be available to you under applicable patent law.
539 |
540 | 12. No Surrender of Others' Freedom.
541 |
542 | If conditions are imposed on you (whether by court order, agreement or
543 | otherwise) that contradict the conditions of this License, they do not
544 | excuse you from the conditions of this License. If you cannot convey a
545 | covered work so as to satisfy simultaneously your obligations under this
546 | License and any other pertinent obligations, then as a consequence you may
547 | not convey it at all. For example, if you agree to terms that obligate you
548 | to collect a royalty for further conveying from those to whom you convey
549 | the Program, the only way you could satisfy both those terms and this
550 | License would be to refrain entirely from conveying the Program.
551 |
552 | 13. Use with the GNU Affero General Public License.
553 |
554 | Notwithstanding any other provision of this License, you have
555 | permission to link or combine any covered work with a work licensed
556 | under version 3 of the GNU Affero General Public License into a single
557 | combined work, and to convey the resulting work. The terms of this
558 | License will continue to apply to the part which is the covered work,
559 | but the special requirements of the GNU Affero General Public License,
560 | section 13, concerning interaction through a network will apply to the
561 | combination as such.
562 |
563 | 14. Revised Versions of this License.
564 |
565 | The Free Software Foundation may publish revised and/or new versions of
566 | the GNU General Public License from time to time. Such new versions will
567 | be similar in spirit to the present version, but may differ in detail to
568 | address new problems or concerns.
569 |
570 | Each version is given a distinguishing version number. If the
571 | Program specifies that a certain numbered version of the GNU General
572 | Public License "or any later version" applies to it, you have the
573 | option of following the terms and conditions either of that numbered
574 | version or of any later version published by the Free Software
575 | Foundation. If the Program does not specify a version number of the
576 | GNU General Public License, you may choose any version ever published
577 | by the Free Software Foundation.
578 |
579 | If the Program specifies that a proxy can decide which future
580 | versions of the GNU General Public License can be used, that proxy's
581 | public statement of acceptance of a version permanently authorizes you
582 | to choose that version for the Program.
583 |
584 | Later license versions may give you additional or different
585 | permissions. However, no additional obligations are imposed on any
586 | author or copyright holder as a result of your choosing to follow a
587 | later version.
588 |
589 | 15. Disclaimer of Warranty.
590 |
591 | THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
592 | APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
593 | HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
594 | OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
595 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
596 | PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
597 | IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
598 | ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
599 |
600 | 16. Limitation of Liability.
601 |
602 | IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
603 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
604 | THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
605 | GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
606 | USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
607 | DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
608 | PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
609 | EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
610 | SUCH DAMAGES.
611 |
612 | 17. Interpretation of Sections 15 and 16.
613 |
614 | If the disclaimer of warranty and limitation of liability provided
615 | above cannot be given local legal effect according to their terms,
616 | reviewing courts shall apply local law that most closely approximates
617 | an absolute waiver of all civil liability in connection with the
618 | Program, unless a warranty or assumption of liability accompanies a
619 | copy of the Program in return for a fee.
620 |
621 | END OF TERMS AND CONDITIONS
622 |
623 | How to Apply These Terms to Your New Programs
624 |
625 | If you develop a new program, and you want it to be of the greatest
626 | possible use to the public, the best way to achieve this is to make it
627 | free software which everyone can redistribute and change under these terms.
628 |
629 | To do so, attach the following notices to the program. It is safest
630 | to attach them to the start of each source file to most effectively
631 | state the exclusion of warranty; and each file should have at least
632 | the "copyright" line and a pointer to where the full notice is found.
633 |
634 |
635 | Copyright (C)
636 |
637 | This program is free software: you can redistribute it and/or modify
638 | it under the terms of the GNU General Public License as published by
639 | the Free Software Foundation, either version 3 of the License, or
640 | (at your option) any later version.
641 |
642 | This program is distributed in the hope that it will be useful,
643 | but WITHOUT ANY WARRANTY; without even the implied warranty of
644 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
645 | GNU General Public License for more details.
646 |
647 | You should have received a copy of the GNU General Public License
648 | along with this program. If not, see .
649 |
650 | Also add information on how to contact you by electronic and paper mail.
651 |
652 | If the program does terminal interaction, make it output a short
653 | notice like this when it starts in an interactive mode:
654 |
655 | Copyright (C)
656 | This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
657 | This is free software, and you are welcome to redistribute it
658 | under certain conditions; type `show c' for details.
659 |
660 | The hypothetical commands `show w' and `show c' should show the appropriate
661 | parts of the General Public License. Of course, your program's commands
662 | might be different; for a GUI interface, you would use an "about box".
663 |
664 | You should also get your employer (if you work as a programmer) or school,
665 | if any, to sign a "copyright disclaimer" for the program, if necessary.
666 | For more information on this, and how to apply and follow the GNU GPL, see
667 | .
668 |
669 | The GNU General Public License does not permit incorporating your program
670 | into proprietary programs. If your program is a subroutine library, you
671 | may consider it more useful to permit linking proprietary applications with
672 | the library. If this is what you want to do, use the GNU Lesser General
673 | Public License instead of this License. But first, please read
674 | .
675 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # cosmic-ext-extra-sessions
2 |
3 | COSMIC-based alternative sessions with different compositors:
4 | - [sway](https://github.com/swaywm/sway)
5 | - [niri](https://github.com/YaLTeR/niri)
6 | - [miracle-wm](https://miracle-wm.org/)
7 |
8 | **Note**: These are unsupported configurations for **alpha** software. Things will break!
9 | Please confirm any bugs against standard COSMIC, before opening issues on it's projects.
10 | If in doubt open an issue here first!
11 |
12 | ## But what about ...
13 |
14 | Just add it! Please take a look at [How This Works](./HowThisWorks.md) and start a PR!
15 |
16 | ### But what about hyprland
17 |
18 | No.
19 |
20 | ### But ...
21 |
22 | No. I won't debate you on it. Go and do this somewhere else and don't expect support.
23 |
24 | ## Why?
25 |
26 | - Because it's fun!
27 | - (And it nicely shows off what using common standards can give you.)
28 | - ((Also, I can't count the amount of issues of people wanting scrolling tiling in COSMIC. Here, just use niri while we decide what to do about this. It's a great project!))
29 |
30 | ## How?
31 |
32 | Cosmic uses a lot of open protocols, the only little magic bit happens in [`cosmic-ext-alternative-startup`](https://github.com/drakulix/cosmic-ext-alternative-startup).
33 |
34 | For specific instructions for each environment look into their specific folder:
35 | - [sway](./sway)
36 | - [niri](./niri)
37 | - [miracle-wm](./miracle)
38 |
39 | ## Requirements
40 |
41 | - You need a `cosmic-session` binary build with this [patch](https://github.com/pop-os/cosmic-session/pull/75)
42 | - You will want a very recent nightly build of cosmic-panel, that fixes crashes on other compositors.
43 | - cosmic + your compositor of choice installed
44 |
--------------------------------------------------------------------------------
/justfile:
--------------------------------------------------------------------------------
1 | just := just_executable()
2 |
3 | build:
4 | {{ just }} cosmic-ext-alternative-startup/build-release
5 |
6 | _install rootdir="" prefix="/usr/local":
7 | {{ just }} rootdir={{rootdir}} prefix={{prefix}} cosmic-ext-alternative-startup/install
8 |
9 | _build-sway:
10 | {{ just }} sway/cosmic-ext-sway-daemon/build-release
11 |
12 | install-sway rootdir="" prefix="/usr/local": _build-sway _install
13 | {{ just }} rootdir={{rootdir}} prefix={{prefix}} sway/cosmic-ext-sway-daemon/install
14 | install -Dm0644 sway/config-cosmic {{rootdir}}/etc/sway/config-cosmic
15 | install -Dm0644 sway/cosmic-ext-sway.desktop {{rootdir}}{{prefix}}/share/wayland-sessions/cosmic-ext-sway.desktop
16 | install -Dm0644 sway/start-cosmic-ext-sway {{rootdir}}{{prefix}}/bin/start-cosmic-ext-sway
17 |
18 | install-niri rootdir="" prefix="/usr/local": _install
19 | install -Dm0644 niri/cosmic-ext-niri.desktop {{rootdir}}{{prefix}}/share/wayland-sessions/cosmic-ext-niri.desktop
20 | install -Dm0755 niri/start-cosmic-ext-niri {{rootdir}}{{prefix}}/bin/start-cosmic-ext-niri
21 |
22 | install-miracle rootdir="" prefix="/usr/local": _install
23 | install -Dm0644 miracle/cosmic-ext-miracle.desktop {{rootdir}}{{prefix}}/share/wayland-sessions/cosmic-ext-miracle.desktop
24 | install -Dm0644 miracle/start-cosmic-ext-miracle {{rootdir}}{{prefix}}/bin/start-cosmic-ext-miracle
25 |
--------------------------------------------------------------------------------
/miracle/README.md:
--------------------------------------------------------------------------------
1 | # cosmic-ext-miracle
2 |
3 | This is cosmic running on miracle!
4 |
5 | ## Install
6 |
7 | Either clone the repo and run `just install-miracle` or install manually:
8 | - `start-cosmic-ext-miracle` somewhere in your `PATH`, e.g. /usr/local/bin
9 | - `cosmic-ext-miracle.desktop` into `/usr/share/wayland-sessions/cosmic-ext-miracle.desktop`
10 |
11 | Additionally you'll need to add this to your miracle config:
12 | ```
13 | startup_apps:
14 | - command: cosmic-alternative-startup
15 | restart_on_death: false
16 | in_systemd_scope: false
17 | ```
18 |
19 | I also recommend adding the following line for the full cosmic experience:
20 | ```
21 | terminal: cosmic-term
22 | custom_actions:
23 | - command: cosmic-launcher
24 | action: down
25 | modifiers:
26 | - primary
27 | key: KEY_D
28 | - command: cosmic-app-library
29 | action: down
30 | modifiers:
31 | - primary
32 | - shift
33 | key: KEY_D
34 | ```
35 |
--------------------------------------------------------------------------------
/miracle/cosmic-ext-miracle.desktop:
--------------------------------------------------------------------------------
1 | [Desktop Entry]
2 | Name=COSMIC on miracle
3 | Comment=This session logs you into the COSMIC desktop on miracle
4 | Exec=/usr/bin/start-cosmic-ext-miracle
5 | Type=Application
6 | DesktopNames=miracle
7 |
--------------------------------------------------------------------------------
/miracle/start-cosmic-ext-miracle:
--------------------------------------------------------------------------------
1 | #!/usr/bin/bash
2 |
3 | set -e
4 |
5 | # From: https://people.debian.org/~mpitt/systemd.conf-2016-graphical-session.pdf
6 |
7 | if command -v systemctl >/dev/null; then
8 | # robustness: if the previous graphical session left some failed units,
9 | # reset them so that they don't break this startup
10 | for unit in $(systemctl --user --no-legend --state=failed --plain list-units | cut -f1 -d' '); do
11 | partof="$(systemctl --user show -p PartOf --value "$unit")"
12 | for target in cosmic-session.target graphical-session.target; do
13 | if [ "$partof" = "$target" ]; then
14 | systemctl --user reset-failed "$unit"
15 | break
16 | fi
17 | done
18 | done
19 | fi
20 |
21 | # use the user's preferred shell to acquire environment variables
22 | # see: https://github.com/pop-os/cosmic-session/issues/23
23 | if [ -n "${SHELL}" ]; then
24 | # --in-login-shell: our flag to indicate that we don't need to recurse any further
25 | if [ "${1}" != "--in-login-shell" ]; then
26 | # `exec -l`: like `login`, prefixes $SHELL with a hyphen to start a login shell
27 | exec bash -c "exec -l '${SHELL}' -c '${0} --in-login-shell'"
28 | fi
29 | fi
30 |
31 | export XDG_CURRENT_DESKTOP="${XDG_CURRENT_DESKTOP:=miracle}"
32 | export XDG_SESSION_TYPE="${XDG_SESSION_TYPE:=wayland}"
33 | export XCURSOR_THEME="${XCURSOR_THEME:=Cosmic}"
34 | export _JAVA_AWT_WM_NONREPARENTING=1
35 | export GDK_BACKEND=wayland,x11
36 | export MOZ_ENABLE_WAYLAND=1
37 | export QT_QPA_PLATFORM="wayland;xcb"
38 | export QT_AUTO_SCREEN_SCALE_FACTOR=1
39 | export QT_ENABLE_HIGHDPI_SCALING=1
40 |
41 | if command -v systemctl >/dev/null; then
42 | # set environment variables for new units started by user service manager
43 | systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
44 | fi
45 | # Run cosmic-session
46 | if [[ -z "${DBUS_SESSION_BUS_ADDRESS}" ]]; then
47 | exec /usr/bin/dbus-run-session -- /usr/bin/cosmic-session miracle-wm --add-wayland-extensions all
48 | else
49 | exec /usr/bin/cosmic-session miracle-wm --add-wayland-extensions all
50 | fi
51 |
--------------------------------------------------------------------------------
/niri/README.md:
--------------------------------------------------------------------------------
1 | # cosmic-ext-niri
2 |
3 | This is cosmic running on niri!
4 |
5 | ## Install
6 |
7 | ### Option 1 - Cloning the repo
8 |
9 | Clone the repo with:
10 |
11 | ```bash
12 | git clone https://github.com/Drakulix/cosmic-ext-extra-sessions.git
13 | ```
14 |
15 | Within the repo directory, install submodules:
16 |
17 | ```bash
18 | cd cosmic-ext-extra-sessions
19 | git submodule update --init
20 | ```
21 |
22 | And finally, build and install for niri with:
23 |
24 | ```bash
25 | just build
26 | sudo just install-niri
27 | ```
28 |
29 | ### Option 2 - Manual installation
30 |
31 | Copy the following files:
32 |
33 | - `start-cosmic-ext-niri` somewhere in your `PATH`, e.g. /usr/local/bin
34 | - `cosmic-ext-niri.desktop` into `/usr/share/wayland-sessions/cosmic-ext-niri.desktop`
35 |
36 | ### Update your Niri config
37 |
38 | If you haven't yet, run niri once to generate a config file.
39 |
40 | In your niri `config.kdl file`, add the following line (removing any existing spawn-at-startup options):
41 |
42 | ```kdl
43 | spawn-at-startup "cosmic-ext-alternative-startup"
44 | ```
45 |
46 | I also recommend adding the following lines for the full cosmic experience to your `binds`:
47 |
48 | ```kdl
49 | Mod+T { spawn "cosmic-term"; }
50 | Mod+D { spawn "cosmic-launcher"; }
51 | Mod+Shift+D { spawn "cosmic-app-library"; }
52 | Mod+Alt+L { spawn "cosmic-greeter"; }
53 | ```
54 |
55 | Make sure to also disable any existing entries in your for these modifiers.
56 |
--------------------------------------------------------------------------------
/niri/cosmic-ext-niri.desktop:
--------------------------------------------------------------------------------
1 | [Desktop Entry]
2 | Name=COSMIC on niri
3 | Comment=This session logs you into the COSMIC desktop on niri
4 | Exec=/usr/local/bin/start-cosmic-ext-niri
5 | Type=Application
6 | DesktopNames=niri
7 |
--------------------------------------------------------------------------------
/niri/start-cosmic-ext-niri:
--------------------------------------------------------------------------------
1 | #!/usr/bin/bash
2 |
3 | set -e
4 |
5 | # From: https://people.debian.org/~mpitt/systemd.conf-2016-graphical-session.pdf
6 |
7 | if command -v systemctl >/dev/null; then
8 | # robustness: if the previous graphical session left some failed units,
9 | # reset them so that they don't break this startup
10 | for unit in $(systemctl --user --no-legend --state=failed --plain list-units | cut -f1 -d' '); do
11 | partof="$(systemctl --user show -p PartOf --value "$unit")"
12 | for target in cosmic-session.target graphical-session.target; do
13 | if [ "$partof" = "$target" ]; then
14 | systemctl --user reset-failed "$unit"
15 | break
16 | fi
17 | done
18 | done
19 | fi
20 |
21 | # use the user's preferred shell to acquire environment variables
22 | # see: https://github.com/pop-os/cosmic-session/issues/23
23 | if [ -n "${SHELL}" ]; then
24 | # --in-login-shell: our flag to indicate that we don't need to recurse any further
25 | if [ "${1}" != "--in-login-shell" ]; then
26 | # `exec -l`: like `login`, prefixes $SHELL with a hyphen to start a login shell
27 | exec bash -c "exec -l '${SHELL}' -c '${0} --in-login-shell'"
28 | fi
29 | fi
30 |
31 | export XDG_CURRENT_DESKTOP="${XDG_CURRENT_DESKTOP:=niri}"
32 | export XDG_SESSION_TYPE="${XDG_SESSION_TYPE:=wayland}"
33 | export XCURSOR_THEME="${XCURSOR_THEME:=Cosmic}"
34 | export _JAVA_AWT_WM_NONREPARENTING=1
35 | export GDK_BACKEND=wayland,x11
36 | export MOZ_ENABLE_WAYLAND=1
37 | export QT_QPA_PLATFORM="wayland;xcb"
38 | export QT_AUTO_SCREEN_SCALE_FACTOR=1
39 | export QT_ENABLE_HIGHDPI_SCALING=1
40 |
41 | if command -v systemctl >/dev/null; then
42 | # set environment variables for new units started by user service manager
43 | systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
44 | fi
45 | # Run cosmic-session
46 | if [[ -z "${DBUS_SESSION_BUS_ADDRESS}" ]]; then
47 | exec /usr/bin/dbus-run-session -- /usr/bin/cosmic-session niri
48 | else
49 | exec /usr/bin/cosmic-session niri
50 | fi
51 |
--------------------------------------------------------------------------------
/sway/README.md:
--------------------------------------------------------------------------------
1 | # cosmic-ext-sway
2 |
3 | This is cosmic running on sway!
4 |
5 | ## Install
6 |
7 | Either clone the repo and run `just install-sway` or install manually:
8 | - `start-cosmic-ext-sway` somewhere in your `PATH`, e.g. `/usr/local/bin`
9 | - `cosmic-ext-sway.desktop` into `/usr/share/wayland-sessions/cosmic-ext-sway.desktop`
10 | - `config-cosmic` to `/etc/sway/config-cosmic`
11 |
12 | Optionally install `cosmic-ext-sway-daemon` to your `PATH` for further integration.
13 |
14 | ## Configuration
15 |
16 | The default configuration on various distributions sets up it's own session code and possibly systemd integration, which potentially conflicts with what `cosmic-ext-sway` is doing.
17 |
18 | Additionally we need to launch a couple of programs (`cosmic-ext-alternative-startup` and optionally `cosmic-ext-sway-daemon`).
19 |
20 |
21 | If you want to configure this yourself, I recommend either using `config-cosmic` as a starting base or just including `config-cosmic` in your local configuration and then override settings you don't like.
--------------------------------------------------------------------------------
/sway/config-cosmic:
--------------------------------------------------------------------------------
1 | # Default config for sway
2 | #
3 | # Copy this to ~/.config/sway/config and edit it to your liking.
4 | #
5 | # Read `man 5 sway` for a complete reference.
6 |
7 | ### Variables
8 | #
9 | # Logo key. Use Mod1 for Alt.
10 | set $mod Mod4
11 | # Home row direction keys, like vim
12 | set $left h
13 | set $down j
14 | set $up k
15 | set $right l
16 | # Your preferred terminal emulator
17 | set $term cosmic-term
18 | # Your preferred application launcher
19 | # Note: pass the final command to swaymsg so that the resulting window can be opened
20 | # on the original workspace that the command was run on.
21 | set $menu cosmic-launcher
22 |
23 | ### Output configuration
24 | #
25 | # Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
26 | #output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
27 | #
28 | # Example configuration:
29 | #
30 | # output HDMI-A-1 resolution 1920x1080 position 1920,0
31 | #
32 | # You can get the names of your outputs by running: swaymsg -t get_outputs
33 |
34 | ### Idle configuration
35 | #
36 | # Example configuration:
37 | #
38 | # exec swayidle -w \
39 | # timeout 300 'swaylock -f -c 000000' \
40 | # timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
41 | # before-sleep 'swaylock -f -c 000000'
42 | #
43 | # This will lock your screen after 300 seconds of inactivity, then turn off
44 | # your displays after another 300 seconds, and turn your screens back on when
45 | # resumed. It will also lock your screen before your computer goes to sleep.
46 |
47 | ### Input configuration
48 | #
49 | # Example configuration:
50 | #
51 | # input "2:14:SynPS/2_Synaptics_TouchPad" {
52 | # dwt enabled
53 | # tap enabled
54 | # natural_scroll enabled
55 | # middle_emulation enabled
56 | # }
57 | #
58 | # You can get the names of your inputs by running: swaymsg -t get_inputs
59 | # Read `man 5 sway-input` for more information about this section.
60 |
61 | ### Key bindings
62 | #
63 | # Basics:
64 | #
65 | # Start a terminal
66 | bindsym $mod+Return exec $term
67 |
68 | # Kill focused window
69 | bindsym $mod+Shift+q kill
70 |
71 | # Start your launcher
72 | bindsym $mod+d exec $menu
73 | bindsym $mod+shift+d exec cosmic-app-library
74 |
75 | # Drag floating windows by holding down $mod and left mouse button.
76 | # Resize them with right mouse button + $mod.
77 | # Despite the name, also works for non-floating windows.
78 | # Change normal to inverse to use left mouse button for resizing and right
79 | # mouse button for dragging.
80 | floating_modifier $mod normal
81 |
82 | # Reload the configuration file
83 | bindsym $mod+Shift+c reload
84 | #
85 | # Moving around:
86 | #
87 | # Move your focus around
88 | bindsym $mod+$left focus left
89 | bindsym $mod+$down focus down
90 | bindsym $mod+$up focus up
91 | bindsym $mod+$right focus right
92 | # Or use $mod+[up|down|left|right]
93 | bindsym $mod+Left focus left
94 | bindsym $mod+Down focus down
95 | bindsym $mod+Up focus up
96 | bindsym $mod+Right focus right
97 |
98 | # Move the focused window with the same, but add Shift
99 | bindsym $mod+Shift+$left move left
100 | bindsym $mod+Shift+$down move down
101 | bindsym $mod+Shift+$up move up
102 | bindsym $mod+Shift+$right move right
103 | # Ditto, with arrow keys
104 | bindsym $mod+Shift+Left move left
105 | bindsym $mod+Shift+Down move down
106 | bindsym $mod+Shift+Up move up
107 | bindsym $mod+Shift+Right move right
108 | #
109 | # Workspaces:
110 | #
111 | # Switch to workspace
112 | bindsym $mod+1 workspace number 1
113 | bindsym $mod+2 workspace number 2
114 | bindsym $mod+3 workspace number 3
115 | bindsym $mod+4 workspace number 4
116 | bindsym $mod+5 workspace number 5
117 | bindsym $mod+6 workspace number 6
118 | bindsym $mod+7 workspace number 7
119 | bindsym $mod+8 workspace number 8
120 | bindsym $mod+9 workspace number 9
121 | bindsym $mod+0 workspace number 10
122 | # Move focused container to workspace
123 | bindsym $mod+Shift+1 move container to workspace number 1
124 | bindsym $mod+Shift+2 move container to workspace number 2
125 | bindsym $mod+Shift+3 move container to workspace number 3
126 | bindsym $mod+Shift+4 move container to workspace number 4
127 | bindsym $mod+Shift+5 move container to workspace number 5
128 | bindsym $mod+Shift+6 move container to workspace number 6
129 | bindsym $mod+Shift+7 move container to workspace number 7
130 | bindsym $mod+Shift+8 move container to workspace number 8
131 | bindsym $mod+Shift+9 move container to workspace number 9
132 | bindsym $mod+Shift+0 move container to workspace number 10
133 | # Note: workspaces can have any name you want, not just numbers.
134 | # We just use 1-10 as the default.
135 | #
136 | # Layout stuff:
137 | #
138 | # You can "split" the current object of your focus with
139 | # $mod+b or $mod+v, for horizontal and vertical splits
140 | # respectively.
141 | bindsym $mod+b splith
142 | bindsym $mod+v splitv
143 |
144 | # Switch the current container between different layout styles
145 | bindsym $mod+s layout stacking
146 | bindsym $mod+w layout tabbed
147 | bindsym $mod+e layout toggle split
148 |
149 | # Make the current focus fullscreen
150 | bindsym $mod+f fullscreen
151 |
152 | # Toggle the current focus between tiling and floating mode
153 | bindsym $mod+Shift+space floating toggle
154 |
155 | # Swap focus between the tiling area and the floating area
156 | bindsym $mod+space focus mode_toggle
157 |
158 | # Move focus to the parent container
159 | bindsym $mod+a focus parent
160 | #
161 | # Scratchpad:
162 | #
163 | # Sway has a "scratchpad", which is a bag of holding for windows.
164 | # You can send windows there and get them back later.
165 |
166 | # Move the currently focused window to the scratchpad
167 | bindsym $mod+Shift+minus move scratchpad
168 |
169 | # Show the next scratchpad window or hide the focused scratchpad window.
170 | # If there are multiple scratchpad windows, this command cycles through them.
171 | bindsym $mod+minus scratchpad show
172 | #
173 | # Resizing containers:
174 | #
175 | mode "resize" {
176 | # left will shrink the containers width
177 | # right will grow the containers width
178 | # up will shrink the containers height
179 | # down will grow the containers height
180 | bindsym $left resize shrink width 10px
181 | bindsym $down resize grow height 10px
182 | bindsym $up resize shrink height 10px
183 | bindsym $right resize grow width 10px
184 |
185 | # Ditto, with arrow keys
186 | bindsym Left resize shrink width 10px
187 | bindsym Down resize grow height 10px
188 | bindsym Up resize shrink height 10px
189 | bindsym Right resize grow width 10px
190 |
191 | # Return to default mode
192 | bindsym Return mode "default"
193 | bindsym Escape mode "default"
194 | }
195 | bindsym $mod+r mode "resize"
196 |
197 | focus_follows_mouse no
198 | exec /usr/bin/cosmic-ext-alternative-startup
199 | exec /usr/bin/cosmic-ext-sway-daemon
200 |
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway-daemon/.gitignore:
--------------------------------------------------------------------------------
1 | /target
2 |
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway-daemon/Cargo.lock:
--------------------------------------------------------------------------------
1 | # This file is automatically @generated by Cargo.
2 | # It is not intended for manual editing.
3 | version = 3
4 |
5 | [[package]]
6 | name = "adler"
7 | version = "1.0.2"
8 | source = "registry+https://github.com/rust-lang/crates.io-index"
9 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
10 |
11 | [[package]]
12 | name = "adler2"
13 | version = "2.0.0"
14 | source = "registry+https://github.com/rust-lang/crates.io-index"
15 | checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627"
16 |
17 | [[package]]
18 | name = "ahash"
19 | version = "0.8.11"
20 | source = "registry+https://github.com/rust-lang/crates.io-index"
21 | checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
22 | dependencies = [
23 | "cfg-if",
24 | "getrandom",
25 | "once_cell",
26 | "version_check",
27 | "zerocopy",
28 | ]
29 |
30 | [[package]]
31 | name = "aliasable"
32 | version = "0.1.3"
33 | source = "registry+https://github.com/rust-lang/crates.io-index"
34 | checksum = "250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd"
35 |
36 | [[package]]
37 | name = "allocator-api2"
38 | version = "0.2.18"
39 | source = "registry+https://github.com/rust-lang/crates.io-index"
40 | checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
41 |
42 | [[package]]
43 | name = "almost"
44 | version = "0.2.0"
45 | source = "registry+https://github.com/rust-lang/crates.io-index"
46 | checksum = "3aa2999eb46af81abb65c2d30d446778d7e613b60bbf4e174a027e80f90a3c14"
47 |
48 | [[package]]
49 | name = "android-tzdata"
50 | version = "0.1.1"
51 | source = "registry+https://github.com/rust-lang/crates.io-index"
52 | checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
53 |
54 | [[package]]
55 | name = "android_system_properties"
56 | version = "0.1.5"
57 | source = "registry+https://github.com/rust-lang/crates.io-index"
58 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
59 | dependencies = [
60 | "libc",
61 | ]
62 |
63 | [[package]]
64 | name = "anyhow"
65 | version = "1.0.91"
66 | source = "registry+https://github.com/rust-lang/crates.io-index"
67 | checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8"
68 |
69 | [[package]]
70 | name = "apply"
71 | version = "0.3.0"
72 | source = "registry+https://github.com/rust-lang/crates.io-index"
73 | checksum = "f47b57fc4521e3cae26a4d45b5227f8fadee4c345be0fefd8d5d1711afb8aeb9"
74 |
75 | [[package]]
76 | name = "approx"
77 | version = "0.5.1"
78 | source = "registry+https://github.com/rust-lang/crates.io-index"
79 | checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
80 | dependencies = [
81 | "num-traits",
82 | ]
83 |
84 | [[package]]
85 | name = "arrayref"
86 | version = "0.3.9"
87 | source = "registry+https://github.com/rust-lang/crates.io-index"
88 | checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
89 |
90 | [[package]]
91 | name = "arrayvec"
92 | version = "0.7.6"
93 | source = "registry+https://github.com/rust-lang/crates.io-index"
94 | checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
95 |
96 | [[package]]
97 | name = "as-raw-xcb-connection"
98 | version = "1.0.1"
99 | source = "registry+https://github.com/rust-lang/crates.io-index"
100 | checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
101 |
102 | [[package]]
103 | name = "ash"
104 | version = "0.38.0+1.3.281"
105 | source = "registry+https://github.com/rust-lang/crates.io-index"
106 | checksum = "0bb44936d800fea8f016d7f2311c6a4f97aebd5dc86f09906139ec848cf3a46f"
107 | dependencies = [
108 | "libloading",
109 | ]
110 |
111 | [[package]]
112 | name = "atomicwrites"
113 | version = "0.4.2"
114 | source = "git+https://github.com/jackpot51/rust-atomicwrites#043ab4859d53ffd3d55334685303d8df39c9f768"
115 | dependencies = [
116 | "rustix",
117 | "tempfile",
118 | "windows-sys 0.48.0",
119 | ]
120 |
121 | [[package]]
122 | name = "autocfg"
123 | version = "1.4.0"
124 | source = "registry+https://github.com/rust-lang/crates.io-index"
125 | checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
126 |
127 | [[package]]
128 | name = "base64"
129 | version = "0.21.7"
130 | source = "registry+https://github.com/rust-lang/crates.io-index"
131 | checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
132 |
133 | [[package]]
134 | name = "base64"
135 | version = "0.22.1"
136 | source = "registry+https://github.com/rust-lang/crates.io-index"
137 | checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
138 |
139 | [[package]]
140 | name = "bit-set"
141 | version = "0.6.0"
142 | source = "registry+https://github.com/rust-lang/crates.io-index"
143 | checksum = "f0481a0e032742109b1133a095184ee93d88f3dc9e0d28a5d033dc77a073f44f"
144 | dependencies = [
145 | "bit-vec",
146 | ]
147 |
148 | [[package]]
149 | name = "bit-vec"
150 | version = "0.7.0"
151 | source = "registry+https://github.com/rust-lang/crates.io-index"
152 | checksum = "d2c54ff287cfc0a34f38a6b832ea1bd8e448a330b3e40a50859e6488bee07f22"
153 |
154 | [[package]]
155 | name = "bit_field"
156 | version = "0.10.2"
157 | source = "registry+https://github.com/rust-lang/crates.io-index"
158 | checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
159 |
160 | [[package]]
161 | name = "bitflags"
162 | version = "1.3.2"
163 | source = "registry+https://github.com/rust-lang/crates.io-index"
164 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
165 |
166 | [[package]]
167 | name = "bitflags"
168 | version = "2.6.0"
169 | source = "registry+https://github.com/rust-lang/crates.io-index"
170 | checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
171 | dependencies = [
172 | "serde",
173 | ]
174 |
175 | [[package]]
176 | name = "block"
177 | version = "0.1.6"
178 | source = "registry+https://github.com/rust-lang/crates.io-index"
179 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
180 |
181 | [[package]]
182 | name = "bumpalo"
183 | version = "3.16.0"
184 | source = "registry+https://github.com/rust-lang/crates.io-index"
185 | checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
186 |
187 | [[package]]
188 | name = "by_address"
189 | version = "1.2.1"
190 | source = "registry+https://github.com/rust-lang/crates.io-index"
191 | checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06"
192 |
193 | [[package]]
194 | name = "bytemuck"
195 | version = "1.19.0"
196 | source = "registry+https://github.com/rust-lang/crates.io-index"
197 | checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d"
198 | dependencies = [
199 | "bytemuck_derive",
200 | ]
201 |
202 | [[package]]
203 | name = "bytemuck_derive"
204 | version = "1.8.0"
205 | source = "registry+https://github.com/rust-lang/crates.io-index"
206 | checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec"
207 | dependencies = [
208 | "proc-macro2",
209 | "quote",
210 | "syn 2.0.85",
211 | ]
212 |
213 | [[package]]
214 | name = "byteorder"
215 | version = "1.5.0"
216 | source = "registry+https://github.com/rust-lang/crates.io-index"
217 | checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
218 |
219 | [[package]]
220 | name = "bytes"
221 | version = "1.8.0"
222 | source = "registry+https://github.com/rust-lang/crates.io-index"
223 | checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da"
224 |
225 | [[package]]
226 | name = "calloop"
227 | version = "0.13.0"
228 | source = "registry+https://github.com/rust-lang/crates.io-index"
229 | checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec"
230 | dependencies = [
231 | "bitflags 2.6.0",
232 | "log",
233 | "polling",
234 | "rustix",
235 | "slab",
236 | "thiserror",
237 | ]
238 |
239 | [[package]]
240 | name = "calloop"
241 | version = "0.14.1"
242 | source = "registry+https://github.com/rust-lang/crates.io-index"
243 | checksum = "a1ead1e1514bce44c0f40e027899fbc595907fc112635bed21b3b5d975c0a5e7"
244 | dependencies = [
245 | "bitflags 2.6.0",
246 | "polling",
247 | "rustix",
248 | "slab",
249 | "tracing",
250 | ]
251 |
252 | [[package]]
253 | name = "calloop-wayland-source"
254 | version = "0.3.0"
255 | source = "registry+https://github.com/rust-lang/crates.io-index"
256 | checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20"
257 | dependencies = [
258 | "calloop 0.13.0",
259 | "rustix",
260 | "wayland-backend",
261 | "wayland-client",
262 | ]
263 |
264 | [[package]]
265 | name = "cc"
266 | version = "1.1.31"
267 | source = "registry+https://github.com/rust-lang/crates.io-index"
268 | checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f"
269 | dependencies = [
270 | "shlex",
271 | ]
272 |
273 | [[package]]
274 | name = "cfg-if"
275 | version = "1.0.0"
276 | source = "registry+https://github.com/rust-lang/crates.io-index"
277 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
278 |
279 | [[package]]
280 | name = "cfg_aliases"
281 | version = "0.1.1"
282 | source = "registry+https://github.com/rust-lang/crates.io-index"
283 | checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
284 |
285 | [[package]]
286 | name = "cfg_aliases"
287 | version = "0.2.1"
288 | source = "registry+https://github.com/rust-lang/crates.io-index"
289 | checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724"
290 |
291 | [[package]]
292 | name = "chrono"
293 | version = "0.4.38"
294 | source = "registry+https://github.com/rust-lang/crates.io-index"
295 | checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
296 | dependencies = [
297 | "android-tzdata",
298 | "iana-time-zone",
299 | "js-sys",
300 | "num-traits",
301 | "wasm-bindgen",
302 | "windows-targets 0.52.6",
303 | ]
304 |
305 | [[package]]
306 | name = "clipboard-win"
307 | version = "5.4.0"
308 | source = "registry+https://github.com/rust-lang/crates.io-index"
309 | checksum = "15efe7a882b08f34e38556b14f2fb3daa98769d06c7f0c1b076dfd0d983bc892"
310 | dependencies = [
311 | "error-code",
312 | ]
313 |
314 | [[package]]
315 | name = "clipboard_macos"
316 | version = "0.1.0"
317 | source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265"
318 | dependencies = [
319 | "objc",
320 | "objc-foundation",
321 | "objc_id",
322 | ]
323 |
324 | [[package]]
325 | name = "clipboard_wayland"
326 | version = "0.2.2"
327 | source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265"
328 | dependencies = [
329 | "dnd",
330 | "mime",
331 | "smithay-clipboard",
332 | ]
333 |
334 | [[package]]
335 | name = "clipboard_x11"
336 | version = "0.4.2"
337 | source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265"
338 | dependencies = [
339 | "thiserror",
340 | "x11rb",
341 | ]
342 |
343 | [[package]]
344 | name = "cocoa"
345 | version = "0.25.0"
346 | source = "registry+https://github.com/rust-lang/crates.io-index"
347 | checksum = "f6140449f97a6e97f9511815c5632d84c8aacf8ac271ad77c559218161a1373c"
348 | dependencies = [
349 | "bitflags 1.3.2",
350 | "block",
351 | "cocoa-foundation",
352 | "core-foundation",
353 | "core-graphics",
354 | "foreign-types",
355 | "libc",
356 | "objc",
357 | ]
358 |
359 | [[package]]
360 | name = "cocoa-foundation"
361 | version = "0.1.2"
362 | source = "registry+https://github.com/rust-lang/crates.io-index"
363 | checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7"
364 | dependencies = [
365 | "bitflags 1.3.2",
366 | "block",
367 | "core-foundation",
368 | "core-graphics-types",
369 | "libc",
370 | "objc",
371 | ]
372 |
373 | [[package]]
374 | name = "codespan-reporting"
375 | version = "0.11.1"
376 | source = "registry+https://github.com/rust-lang/crates.io-index"
377 | checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
378 | dependencies = [
379 | "termcolor",
380 | "unicode-width",
381 | ]
382 |
383 | [[package]]
384 | name = "color_quant"
385 | version = "1.1.0"
386 | source = "registry+https://github.com/rust-lang/crates.io-index"
387 | checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
388 |
389 | [[package]]
390 | name = "com"
391 | version = "0.6.0"
392 | source = "registry+https://github.com/rust-lang/crates.io-index"
393 | checksum = "7e17887fd17353b65b1b2ef1c526c83e26cd72e74f598a8dc1bee13a48f3d9f6"
394 | dependencies = [
395 | "com_macros",
396 | ]
397 |
398 | [[package]]
399 | name = "com_macros"
400 | version = "0.6.0"
401 | source = "registry+https://github.com/rust-lang/crates.io-index"
402 | checksum = "d375883580a668c7481ea6631fc1a8863e33cc335bf56bfad8d7e6d4b04b13a5"
403 | dependencies = [
404 | "com_macros_support",
405 | "proc-macro2",
406 | "syn 1.0.109",
407 | ]
408 |
409 | [[package]]
410 | name = "com_macros_support"
411 | version = "0.6.0"
412 | source = "registry+https://github.com/rust-lang/crates.io-index"
413 | checksum = "ad899a1087a9296d5644792d7cb72b8e34c1bec8e7d4fbc002230169a6e8710c"
414 | dependencies = [
415 | "proc-macro2",
416 | "quote",
417 | "syn 1.0.109",
418 | ]
419 |
420 | [[package]]
421 | name = "concurrent-queue"
422 | version = "2.5.0"
423 | source = "registry+https://github.com/rust-lang/crates.io-index"
424 | checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
425 | dependencies = [
426 | "crossbeam-utils",
427 | ]
428 |
429 | [[package]]
430 | name = "const-random"
431 | version = "0.1.18"
432 | source = "registry+https://github.com/rust-lang/crates.io-index"
433 | checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359"
434 | dependencies = [
435 | "const-random-macro",
436 | ]
437 |
438 | [[package]]
439 | name = "const-random-macro"
440 | version = "0.1.16"
441 | source = "registry+https://github.com/rust-lang/crates.io-index"
442 | checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e"
443 | dependencies = [
444 | "getrandom",
445 | "once_cell",
446 | "tiny-keccak",
447 | ]
448 |
449 | [[package]]
450 | name = "core-foundation"
451 | version = "0.9.4"
452 | source = "registry+https://github.com/rust-lang/crates.io-index"
453 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
454 | dependencies = [
455 | "core-foundation-sys",
456 | "libc",
457 | ]
458 |
459 | [[package]]
460 | name = "core-foundation-sys"
461 | version = "0.8.7"
462 | source = "registry+https://github.com/rust-lang/crates.io-index"
463 | checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
464 |
465 | [[package]]
466 | name = "core-graphics"
467 | version = "0.23.2"
468 | source = "registry+https://github.com/rust-lang/crates.io-index"
469 | checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081"
470 | dependencies = [
471 | "bitflags 1.3.2",
472 | "core-foundation",
473 | "core-graphics-types",
474 | "foreign-types",
475 | "libc",
476 | ]
477 |
478 | [[package]]
479 | name = "core-graphics-types"
480 | version = "0.1.3"
481 | source = "registry+https://github.com/rust-lang/crates.io-index"
482 | checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
483 | dependencies = [
484 | "bitflags 1.3.2",
485 | "core-foundation",
486 | "libc",
487 | ]
488 |
489 | [[package]]
490 | name = "cosmic-config"
491 | version = "0.1.0"
492 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
493 | dependencies = [
494 | "atomicwrites",
495 | "cosmic-config-derive",
496 | "dirs",
497 | "iced_futures",
498 | "known-folders",
499 | "notify",
500 | "once_cell",
501 | "ron",
502 | "serde",
503 | "tracing",
504 | "xdg",
505 | ]
506 |
507 | [[package]]
508 | name = "cosmic-config-derive"
509 | version = "0.1.0"
510 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
511 | dependencies = [
512 | "quote",
513 | "syn 1.0.109",
514 | ]
515 |
516 | [[package]]
517 | name = "cosmic-sway-daemon"
518 | version = "0.1.0"
519 | dependencies = [
520 | "anyhow",
521 | "calloop 0.14.1",
522 | "cosmic-config",
523 | "cosmic-theme",
524 | "libcosmic",
525 | "swayipc",
526 | ]
527 |
528 | [[package]]
529 | name = "cosmic-text"
530 | version = "0.12.1"
531 | source = "git+https://github.com/pop-os/cosmic-text.git#4fe90bb6126c22f589b46768d7754d65ae300c5e"
532 | dependencies = [
533 | "bitflags 2.6.0",
534 | "fontdb 0.16.2",
535 | "log",
536 | "rangemap",
537 | "rayon",
538 | "rustc-hash 1.1.0",
539 | "rustybuzz",
540 | "self_cell",
541 | "smol_str",
542 | "swash",
543 | "sys-locale",
544 | "ttf-parser 0.21.1",
545 | "unicode-bidi",
546 | "unicode-linebreak",
547 | "unicode-script",
548 | "unicode-segmentation",
549 | ]
550 |
551 | [[package]]
552 | name = "cosmic-theme"
553 | version = "0.1.0"
554 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
555 | dependencies = [
556 | "almost",
557 | "cosmic-config",
558 | "csscolorparser",
559 | "dirs",
560 | "lazy_static",
561 | "palette",
562 | "ron",
563 | "serde",
564 | "serde_json",
565 | "thiserror",
566 | ]
567 |
568 | [[package]]
569 | name = "crc32fast"
570 | version = "1.4.2"
571 | source = "registry+https://github.com/rust-lang/crates.io-index"
572 | checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
573 | dependencies = [
574 | "cfg-if",
575 | ]
576 |
577 | [[package]]
578 | name = "crossbeam-channel"
579 | version = "0.5.13"
580 | source = "registry+https://github.com/rust-lang/crates.io-index"
581 | checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2"
582 | dependencies = [
583 | "crossbeam-utils",
584 | ]
585 |
586 | [[package]]
587 | name = "crossbeam-deque"
588 | version = "0.8.5"
589 | source = "registry+https://github.com/rust-lang/crates.io-index"
590 | checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
591 | dependencies = [
592 | "crossbeam-epoch",
593 | "crossbeam-utils",
594 | ]
595 |
596 | [[package]]
597 | name = "crossbeam-epoch"
598 | version = "0.9.18"
599 | source = "registry+https://github.com/rust-lang/crates.io-index"
600 | checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
601 | dependencies = [
602 | "crossbeam-utils",
603 | ]
604 |
605 | [[package]]
606 | name = "crossbeam-utils"
607 | version = "0.8.20"
608 | source = "registry+https://github.com/rust-lang/crates.io-index"
609 | checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
610 |
611 | [[package]]
612 | name = "crunchy"
613 | version = "0.2.2"
614 | source = "registry+https://github.com/rust-lang/crates.io-index"
615 | checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
616 |
617 | [[package]]
618 | name = "css-color"
619 | version = "0.2.8"
620 | source = "registry+https://github.com/rust-lang/crates.io-index"
621 | checksum = "42aaeae719fd78ce501d77c6cdf01f7e96f26bcd5617a4903a1c2b97e388543a"
622 |
623 | [[package]]
624 | name = "csscolorparser"
625 | version = "0.6.2"
626 | source = "registry+https://github.com/rust-lang/crates.io-index"
627 | checksum = "eb2a7d3066da2de787b7f032c736763eb7ae5d355f81a68bab2675a96008b0bf"
628 | dependencies = [
629 | "phf",
630 | "serde",
631 | ]
632 |
633 | [[package]]
634 | name = "ctor-lite"
635 | version = "0.1.0"
636 | source = "registry+https://github.com/rust-lang/crates.io-index"
637 | checksum = "1f791803201ab277ace03903de1594460708d2d54df6053f2d9e82f592b19e3b"
638 |
639 | [[package]]
640 | name = "cursor-icon"
641 | version = "1.1.0"
642 | source = "registry+https://github.com/rust-lang/crates.io-index"
643 | checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991"
644 |
645 | [[package]]
646 | name = "d3d12"
647 | version = "22.0.0"
648 | source = "registry+https://github.com/rust-lang/crates.io-index"
649 | checksum = "bdbd1f579714e3c809ebd822c81ef148b1ceaeb3d535352afc73fd0c4c6a0017"
650 | dependencies = [
651 | "bitflags 2.6.0",
652 | "libloading",
653 | "winapi",
654 | ]
655 |
656 | [[package]]
657 | name = "darling"
658 | version = "0.20.10"
659 | source = "registry+https://github.com/rust-lang/crates.io-index"
660 | checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989"
661 | dependencies = [
662 | "darling_core",
663 | "darling_macro",
664 | ]
665 |
666 | [[package]]
667 | name = "darling_core"
668 | version = "0.20.10"
669 | source = "registry+https://github.com/rust-lang/crates.io-index"
670 | checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5"
671 | dependencies = [
672 | "fnv",
673 | "ident_case",
674 | "proc-macro2",
675 | "quote",
676 | "strsim",
677 | "syn 2.0.85",
678 | ]
679 |
680 | [[package]]
681 | name = "darling_macro"
682 | version = "0.20.10"
683 | source = "registry+https://github.com/rust-lang/crates.io-index"
684 | checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
685 | dependencies = [
686 | "darling_core",
687 | "quote",
688 | "syn 2.0.85",
689 | ]
690 |
691 | [[package]]
692 | name = "data-url"
693 | version = "0.3.1"
694 | source = "registry+https://github.com/rust-lang/crates.io-index"
695 | checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a"
696 |
697 | [[package]]
698 | name = "derive_setters"
699 | version = "0.1.6"
700 | source = "registry+https://github.com/rust-lang/crates.io-index"
701 | checksum = "4e8ef033054e131169b8f0f9a7af8f5533a9436fadf3c500ed547f730f07090d"
702 | dependencies = [
703 | "darling",
704 | "proc-macro2",
705 | "quote",
706 | "syn 2.0.85",
707 | ]
708 |
709 | [[package]]
710 | name = "dirs"
711 | version = "5.0.1"
712 | source = "registry+https://github.com/rust-lang/crates.io-index"
713 | checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225"
714 | dependencies = [
715 | "dirs-sys",
716 | ]
717 |
718 | [[package]]
719 | name = "dirs-sys"
720 | version = "0.4.1"
721 | source = "registry+https://github.com/rust-lang/crates.io-index"
722 | checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c"
723 | dependencies = [
724 | "libc",
725 | "option-ext",
726 | "redox_users",
727 | "windows-sys 0.48.0",
728 | ]
729 |
730 | [[package]]
731 | name = "dlib"
732 | version = "0.5.2"
733 | source = "registry+https://github.com/rust-lang/crates.io-index"
734 | checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
735 | dependencies = [
736 | "libloading",
737 | ]
738 |
739 | [[package]]
740 | name = "dlv-list"
741 | version = "0.5.2"
742 | source = "registry+https://github.com/rust-lang/crates.io-index"
743 | checksum = "442039f5147480ba31067cb00ada1adae6892028e40e45fc5de7b7df6dcc1b5f"
744 | dependencies = [
745 | "const-random",
746 | ]
747 |
748 | [[package]]
749 | name = "dnd"
750 | version = "0.1.0"
751 | source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265"
752 | dependencies = [
753 | "bitflags 2.6.0",
754 | "mime",
755 | "raw-window-handle",
756 | "smithay-client-toolkit",
757 | "smithay-clipboard",
758 | ]
759 |
760 | [[package]]
761 | name = "document-features"
762 | version = "0.2.10"
763 | source = "registry+https://github.com/rust-lang/crates.io-index"
764 | checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0"
765 | dependencies = [
766 | "litrs",
767 | ]
768 |
769 | [[package]]
770 | name = "downcast-rs"
771 | version = "1.2.1"
772 | source = "registry+https://github.com/rust-lang/crates.io-index"
773 | checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
774 |
775 | [[package]]
776 | name = "drm"
777 | version = "0.11.1"
778 | source = "registry+https://github.com/rust-lang/crates.io-index"
779 | checksum = "a0f8a69e60d75ae7dab4ef26a59ca99f2a89d4c142089b537775ae0c198bdcde"
780 | dependencies = [
781 | "bitflags 2.6.0",
782 | "bytemuck",
783 | "drm-ffi",
784 | "drm-fourcc",
785 | "rustix",
786 | ]
787 |
788 | [[package]]
789 | name = "drm-ffi"
790 | version = "0.7.1"
791 | source = "registry+https://github.com/rust-lang/crates.io-index"
792 | checksum = "41334f8405792483e32ad05fbb9c5680ff4e84491883d2947a4757dc54cb2ac6"
793 | dependencies = [
794 | "drm-sys",
795 | "rustix",
796 | ]
797 |
798 | [[package]]
799 | name = "drm-fourcc"
800 | version = "2.2.0"
801 | source = "registry+https://github.com/rust-lang/crates.io-index"
802 | checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4"
803 |
804 | [[package]]
805 | name = "drm-sys"
806 | version = "0.6.1"
807 | source = "registry+https://github.com/rust-lang/crates.io-index"
808 | checksum = "2d09ff881f92f118b11105ba5e34ff8f4adf27b30dae8f12e28c193af1c83176"
809 | dependencies = [
810 | "libc",
811 | "linux-raw-sys 0.6.5",
812 | ]
813 |
814 | [[package]]
815 | name = "either"
816 | version = "1.13.0"
817 | source = "registry+https://github.com/rust-lang/crates.io-index"
818 | checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
819 |
820 | [[package]]
821 | name = "equivalent"
822 | version = "1.0.1"
823 | source = "registry+https://github.com/rust-lang/crates.io-index"
824 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
825 |
826 | [[package]]
827 | name = "errno"
828 | version = "0.3.9"
829 | source = "registry+https://github.com/rust-lang/crates.io-index"
830 | checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
831 | dependencies = [
832 | "libc",
833 | "windows-sys 0.52.0",
834 | ]
835 |
836 | [[package]]
837 | name = "error-code"
838 | version = "3.3.1"
839 | source = "registry+https://github.com/rust-lang/crates.io-index"
840 | checksum = "a5d9305ccc6942a704f4335694ecd3de2ea531b114ac2d51f5f843750787a92f"
841 |
842 | [[package]]
843 | name = "etagere"
844 | version = "0.2.13"
845 | source = "registry+https://github.com/rust-lang/crates.io-index"
846 | checksum = "0e2f1e3be19fb10f549be8c1bf013e8675b4066c445e36eb76d2ebb2f54ee495"
847 | dependencies = [
848 | "euclid",
849 | "svg_fmt",
850 | ]
851 |
852 | [[package]]
853 | name = "euclid"
854 | version = "0.22.11"
855 | source = "registry+https://github.com/rust-lang/crates.io-index"
856 | checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48"
857 | dependencies = [
858 | "num-traits",
859 | ]
860 |
861 | [[package]]
862 | name = "exr"
863 | version = "1.72.0"
864 | source = "registry+https://github.com/rust-lang/crates.io-index"
865 | checksum = "887d93f60543e9a9362ef8a21beedd0a833c5d9610e18c67abe15a5963dcb1a4"
866 | dependencies = [
867 | "bit_field",
868 | "flume",
869 | "half",
870 | "lebe",
871 | "miniz_oxide 0.7.4",
872 | "rayon-core",
873 | "smallvec",
874 | "zune-inflate",
875 | ]
876 |
877 | [[package]]
878 | name = "fast-srgb8"
879 | version = "1.0.0"
880 | source = "registry+https://github.com/rust-lang/crates.io-index"
881 | checksum = "dd2e7510819d6fbf51a5545c8f922716ecfb14df168a3242f7d33e0239efe6a1"
882 |
883 | [[package]]
884 | name = "fastrand"
885 | version = "2.1.1"
886 | source = "registry+https://github.com/rust-lang/crates.io-index"
887 | checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6"
888 |
889 | [[package]]
890 | name = "fdeflate"
891 | version = "0.3.5"
892 | source = "registry+https://github.com/rust-lang/crates.io-index"
893 | checksum = "d8090f921a24b04994d9929e204f50b498a33ea6ba559ffaa05e04f7ee7fb5ab"
894 | dependencies = [
895 | "simd-adler32",
896 | ]
897 |
898 | [[package]]
899 | name = "filetime"
900 | version = "0.2.25"
901 | source = "registry+https://github.com/rust-lang/crates.io-index"
902 | checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586"
903 | dependencies = [
904 | "cfg-if",
905 | "libc",
906 | "libredox",
907 | "windows-sys 0.59.0",
908 | ]
909 |
910 | [[package]]
911 | name = "flate2"
912 | version = "1.0.34"
913 | source = "registry+https://github.com/rust-lang/crates.io-index"
914 | checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0"
915 | dependencies = [
916 | "crc32fast",
917 | "miniz_oxide 0.8.0",
918 | ]
919 |
920 | [[package]]
921 | name = "float-cmp"
922 | version = "0.9.0"
923 | source = "registry+https://github.com/rust-lang/crates.io-index"
924 | checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4"
925 |
926 | [[package]]
927 | name = "float_next_after"
928 | version = "1.0.0"
929 | source = "registry+https://github.com/rust-lang/crates.io-index"
930 | checksum = "8bf7cc16383c4b8d58b9905a8509f02926ce3058053c056376248d958c9df1e8"
931 |
932 | [[package]]
933 | name = "flume"
934 | version = "0.11.1"
935 | source = "registry+https://github.com/rust-lang/crates.io-index"
936 | checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095"
937 | dependencies = [
938 | "spin",
939 | ]
940 |
941 | [[package]]
942 | name = "fnv"
943 | version = "1.0.7"
944 | source = "registry+https://github.com/rust-lang/crates.io-index"
945 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
946 |
947 | [[package]]
948 | name = "font-types"
949 | version = "0.7.2"
950 | source = "registry+https://github.com/rust-lang/crates.io-index"
951 | checksum = "dda6e36206148f69fc6ecb1bb6c0dedd7ee469f3db1d0dc2045beea28430ca43"
952 | dependencies = [
953 | "bytemuck",
954 | ]
955 |
956 | [[package]]
957 | name = "fontconfig-parser"
958 | version = "0.5.7"
959 | source = "registry+https://github.com/rust-lang/crates.io-index"
960 | checksum = "c1fcfcd44ca6e90c921fee9fa665d530b21ef1327a4c1a6c5250ea44b776ada7"
961 | dependencies = [
962 | "roxmltree",
963 | ]
964 |
965 | [[package]]
966 | name = "fontdb"
967 | version = "0.16.2"
968 | source = "registry+https://github.com/rust-lang/crates.io-index"
969 | checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3"
970 | dependencies = [
971 | "fontconfig-parser",
972 | "log",
973 | "memmap2 0.9.5",
974 | "slotmap",
975 | "tinyvec",
976 | "ttf-parser 0.20.0",
977 | ]
978 |
979 | [[package]]
980 | name = "fontdb"
981 | version = "0.18.0"
982 | source = "registry+https://github.com/rust-lang/crates.io-index"
983 | checksum = "e32eac81c1135c1df01d4e6d4233c47ba11f6a6d07f33e0bba09d18797077770"
984 | dependencies = [
985 | "fontconfig-parser",
986 | "log",
987 | "memmap2 0.9.5",
988 | "slotmap",
989 | "tinyvec",
990 | "ttf-parser 0.21.1",
991 | ]
992 |
993 | [[package]]
994 | name = "foreign-types"
995 | version = "0.5.0"
996 | source = "registry+https://github.com/rust-lang/crates.io-index"
997 | checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
998 | dependencies = [
999 | "foreign-types-macros",
1000 | "foreign-types-shared",
1001 | ]
1002 |
1003 | [[package]]
1004 | name = "foreign-types-macros"
1005 | version = "0.2.3"
1006 | source = "registry+https://github.com/rust-lang/crates.io-index"
1007 | checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
1008 | dependencies = [
1009 | "proc-macro2",
1010 | "quote",
1011 | "syn 2.0.85",
1012 | ]
1013 |
1014 | [[package]]
1015 | name = "foreign-types-shared"
1016 | version = "0.3.1"
1017 | source = "registry+https://github.com/rust-lang/crates.io-index"
1018 | checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
1019 |
1020 | [[package]]
1021 | name = "form_urlencoded"
1022 | version = "1.2.1"
1023 | source = "registry+https://github.com/rust-lang/crates.io-index"
1024 | checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456"
1025 | dependencies = [
1026 | "percent-encoding",
1027 | ]
1028 |
1029 | [[package]]
1030 | name = "fraction"
1031 | version = "0.15.3"
1032 | source = "registry+https://github.com/rust-lang/crates.io-index"
1033 | checksum = "0f158e3ff0a1b334408dc9fb811cd99b446986f4d8b741bb08f9df1604085ae7"
1034 | dependencies = [
1035 | "lazy_static",
1036 | "num",
1037 | ]
1038 |
1039 | [[package]]
1040 | name = "freedesktop-icons"
1041 | version = "0.2.6"
1042 | source = "registry+https://github.com/rust-lang/crates.io-index"
1043 | checksum = "a8ef34245e0540c9a3ce7a28340b98d2c12b75da0d446da4e8224923fcaa0c16"
1044 | dependencies = [
1045 | "dirs",
1046 | "once_cell",
1047 | "rust-ini",
1048 | "thiserror",
1049 | "xdg",
1050 | ]
1051 |
1052 | [[package]]
1053 | name = "fsevent-sys"
1054 | version = "4.1.0"
1055 | source = "registry+https://github.com/rust-lang/crates.io-index"
1056 | checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2"
1057 | dependencies = [
1058 | "libc",
1059 | ]
1060 |
1061 | [[package]]
1062 | name = "futures"
1063 | version = "0.3.31"
1064 | source = "registry+https://github.com/rust-lang/crates.io-index"
1065 | checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876"
1066 | dependencies = [
1067 | "futures-channel",
1068 | "futures-core",
1069 | "futures-executor",
1070 | "futures-io",
1071 | "futures-sink",
1072 | "futures-task",
1073 | "futures-util",
1074 | ]
1075 |
1076 | [[package]]
1077 | name = "futures-channel"
1078 | version = "0.3.31"
1079 | source = "registry+https://github.com/rust-lang/crates.io-index"
1080 | checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10"
1081 | dependencies = [
1082 | "futures-core",
1083 | "futures-sink",
1084 | ]
1085 |
1086 | [[package]]
1087 | name = "futures-core"
1088 | version = "0.3.31"
1089 | source = "registry+https://github.com/rust-lang/crates.io-index"
1090 | checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
1091 |
1092 | [[package]]
1093 | name = "futures-executor"
1094 | version = "0.3.31"
1095 | source = "registry+https://github.com/rust-lang/crates.io-index"
1096 | checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f"
1097 | dependencies = [
1098 | "futures-core",
1099 | "futures-task",
1100 | "futures-util",
1101 | "num_cpus",
1102 | ]
1103 |
1104 | [[package]]
1105 | name = "futures-io"
1106 | version = "0.3.31"
1107 | source = "registry+https://github.com/rust-lang/crates.io-index"
1108 | checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6"
1109 |
1110 | [[package]]
1111 | name = "futures-macro"
1112 | version = "0.3.31"
1113 | source = "registry+https://github.com/rust-lang/crates.io-index"
1114 | checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
1115 | dependencies = [
1116 | "proc-macro2",
1117 | "quote",
1118 | "syn 2.0.85",
1119 | ]
1120 |
1121 | [[package]]
1122 | name = "futures-sink"
1123 | version = "0.3.31"
1124 | source = "registry+https://github.com/rust-lang/crates.io-index"
1125 | checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7"
1126 |
1127 | [[package]]
1128 | name = "futures-task"
1129 | version = "0.3.31"
1130 | source = "registry+https://github.com/rust-lang/crates.io-index"
1131 | checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988"
1132 |
1133 | [[package]]
1134 | name = "futures-util"
1135 | version = "0.3.31"
1136 | source = "registry+https://github.com/rust-lang/crates.io-index"
1137 | checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81"
1138 | dependencies = [
1139 | "futures-channel",
1140 | "futures-core",
1141 | "futures-io",
1142 | "futures-macro",
1143 | "futures-sink",
1144 | "futures-task",
1145 | "memchr",
1146 | "pin-project-lite",
1147 | "pin-utils",
1148 | "slab",
1149 | ]
1150 |
1151 | [[package]]
1152 | name = "gethostname"
1153 | version = "0.4.3"
1154 | source = "registry+https://github.com/rust-lang/crates.io-index"
1155 | checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818"
1156 | dependencies = [
1157 | "libc",
1158 | "windows-targets 0.48.5",
1159 | ]
1160 |
1161 | [[package]]
1162 | name = "getrandom"
1163 | version = "0.2.15"
1164 | source = "registry+https://github.com/rust-lang/crates.io-index"
1165 | checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
1166 | dependencies = [
1167 | "cfg-if",
1168 | "libc",
1169 | "wasi",
1170 | ]
1171 |
1172 | [[package]]
1173 | name = "gif"
1174 | version = "0.13.1"
1175 | source = "registry+https://github.com/rust-lang/crates.io-index"
1176 | checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2"
1177 | dependencies = [
1178 | "color_quant",
1179 | "weezl",
1180 | ]
1181 |
1182 | [[package]]
1183 | name = "gl_generator"
1184 | version = "0.14.0"
1185 | source = "registry+https://github.com/rust-lang/crates.io-index"
1186 | checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d"
1187 | dependencies = [
1188 | "khronos_api",
1189 | "log",
1190 | "xml-rs",
1191 | ]
1192 |
1193 | [[package]]
1194 | name = "glam"
1195 | version = "0.25.0"
1196 | source = "registry+https://github.com/rust-lang/crates.io-index"
1197 | checksum = "151665d9be52f9bb40fc7966565d39666f2d1e69233571b71b87791c7e0528b3"
1198 |
1199 | [[package]]
1200 | name = "glow"
1201 | version = "0.13.1"
1202 | source = "registry+https://github.com/rust-lang/crates.io-index"
1203 | checksum = "bd348e04c43b32574f2de31c8bb397d96c9fcfa1371bd4ca6d8bdc464ab121b1"
1204 | dependencies = [
1205 | "js-sys",
1206 | "slotmap",
1207 | "wasm-bindgen",
1208 | "web-sys",
1209 | ]
1210 |
1211 | [[package]]
1212 | name = "glutin_wgl_sys"
1213 | version = "0.6.0"
1214 | source = "registry+https://github.com/rust-lang/crates.io-index"
1215 | checksum = "0a4e1951bbd9434a81aa496fe59ccc2235af3820d27b85f9314e279609211e2c"
1216 | dependencies = [
1217 | "gl_generator",
1218 | ]
1219 |
1220 | [[package]]
1221 | name = "gpu-alloc"
1222 | version = "0.6.0"
1223 | source = "registry+https://github.com/rust-lang/crates.io-index"
1224 | checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
1225 | dependencies = [
1226 | "bitflags 2.6.0",
1227 | "gpu-alloc-types",
1228 | ]
1229 |
1230 | [[package]]
1231 | name = "gpu-alloc-types"
1232 | version = "0.3.0"
1233 | source = "registry+https://github.com/rust-lang/crates.io-index"
1234 | checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
1235 | dependencies = [
1236 | "bitflags 2.6.0",
1237 | ]
1238 |
1239 | [[package]]
1240 | name = "gpu-allocator"
1241 | version = "0.26.0"
1242 | source = "registry+https://github.com/rust-lang/crates.io-index"
1243 | checksum = "fdd4240fc91d3433d5e5b0fc5b67672d771850dc19bbee03c1381e19322803d7"
1244 | dependencies = [
1245 | "log",
1246 | "presser",
1247 | "thiserror",
1248 | "winapi",
1249 | "windows",
1250 | ]
1251 |
1252 | [[package]]
1253 | name = "gpu-descriptor"
1254 | version = "0.3.0"
1255 | source = "registry+https://github.com/rust-lang/crates.io-index"
1256 | checksum = "9c08c1f623a8d0b722b8b99f821eb0ba672a1618f0d3b16ddbee1cedd2dd8557"
1257 | dependencies = [
1258 | "bitflags 2.6.0",
1259 | "gpu-descriptor-types",
1260 | "hashbrown 0.14.5",
1261 | ]
1262 |
1263 | [[package]]
1264 | name = "gpu-descriptor-types"
1265 | version = "0.2.0"
1266 | source = "registry+https://github.com/rust-lang/crates.io-index"
1267 | checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91"
1268 | dependencies = [
1269 | "bitflags 2.6.0",
1270 | ]
1271 |
1272 | [[package]]
1273 | name = "grid"
1274 | version = "0.11.0"
1275 | source = "registry+https://github.com/rust-lang/crates.io-index"
1276 | checksum = "1df00eed8d1f0db937f6be10e46e8072b0671accb504cf0f959c5c52c679f5b9"
1277 |
1278 | [[package]]
1279 | name = "guillotiere"
1280 | version = "0.6.2"
1281 | source = "registry+https://github.com/rust-lang/crates.io-index"
1282 | checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782"
1283 | dependencies = [
1284 | "euclid",
1285 | "svg_fmt",
1286 | ]
1287 |
1288 | [[package]]
1289 | name = "half"
1290 | version = "2.4.1"
1291 | source = "registry+https://github.com/rust-lang/crates.io-index"
1292 | checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
1293 | dependencies = [
1294 | "cfg-if",
1295 | "crunchy",
1296 | ]
1297 |
1298 | [[package]]
1299 | name = "hashbrown"
1300 | version = "0.14.5"
1301 | source = "registry+https://github.com/rust-lang/crates.io-index"
1302 | checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
1303 | dependencies = [
1304 | "ahash",
1305 | "allocator-api2",
1306 | ]
1307 |
1308 | [[package]]
1309 | name = "hashbrown"
1310 | version = "0.15.0"
1311 | source = "registry+https://github.com/rust-lang/crates.io-index"
1312 | checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb"
1313 |
1314 | [[package]]
1315 | name = "hassle-rs"
1316 | version = "0.11.0"
1317 | source = "registry+https://github.com/rust-lang/crates.io-index"
1318 | checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890"
1319 | dependencies = [
1320 | "bitflags 2.6.0",
1321 | "com",
1322 | "libc",
1323 | "libloading",
1324 | "thiserror",
1325 | "widestring",
1326 | "winapi",
1327 | ]
1328 |
1329 | [[package]]
1330 | name = "heck"
1331 | version = "0.4.1"
1332 | source = "registry+https://github.com/rust-lang/crates.io-index"
1333 | checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
1334 |
1335 | [[package]]
1336 | name = "hermit-abi"
1337 | version = "0.3.9"
1338 | source = "registry+https://github.com/rust-lang/crates.io-index"
1339 | checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
1340 |
1341 | [[package]]
1342 | name = "hermit-abi"
1343 | version = "0.4.0"
1344 | source = "registry+https://github.com/rust-lang/crates.io-index"
1345 | checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
1346 |
1347 | [[package]]
1348 | name = "hexf-parse"
1349 | version = "0.2.1"
1350 | source = "registry+https://github.com/rust-lang/crates.io-index"
1351 | checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
1352 |
1353 | [[package]]
1354 | name = "iana-time-zone"
1355 | version = "0.1.61"
1356 | source = "registry+https://github.com/rust-lang/crates.io-index"
1357 | checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220"
1358 | dependencies = [
1359 | "android_system_properties",
1360 | "core-foundation-sys",
1361 | "iana-time-zone-haiku",
1362 | "js-sys",
1363 | "wasm-bindgen",
1364 | "windows-core",
1365 | ]
1366 |
1367 | [[package]]
1368 | name = "iana-time-zone-haiku"
1369 | version = "0.1.2"
1370 | source = "registry+https://github.com/rust-lang/crates.io-index"
1371 | checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
1372 | dependencies = [
1373 | "cc",
1374 | ]
1375 |
1376 | [[package]]
1377 | name = "iced"
1378 | version = "0.14.0-dev"
1379 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1380 | dependencies = [
1381 | "dnd",
1382 | "iced_core",
1383 | "iced_futures",
1384 | "iced_renderer",
1385 | "iced_widget",
1386 | "image",
1387 | "mime",
1388 | "thiserror",
1389 | "window_clipboard",
1390 | ]
1391 |
1392 | [[package]]
1393 | name = "iced_core"
1394 | version = "0.14.0-dev"
1395 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1396 | dependencies = [
1397 | "bitflags 2.6.0",
1398 | "bytes",
1399 | "dnd",
1400 | "glam",
1401 | "log",
1402 | "mime",
1403 | "num-traits",
1404 | "once_cell",
1405 | "palette",
1406 | "raw-window-handle",
1407 | "rustc-hash 2.0.0",
1408 | "serde",
1409 | "smol_str",
1410 | "thiserror",
1411 | "web-time",
1412 | "window_clipboard",
1413 | ]
1414 |
1415 | [[package]]
1416 | name = "iced_futures"
1417 | version = "0.14.0-dev"
1418 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1419 | dependencies = [
1420 | "futures",
1421 | "iced_core",
1422 | "log",
1423 | "rustc-hash 2.0.0",
1424 | "wasm-bindgen-futures",
1425 | "wasm-timer",
1426 | ]
1427 |
1428 | [[package]]
1429 | name = "iced_glyphon"
1430 | version = "0.6.0"
1431 | source = "git+https://github.com/pop-os/glyphon.git?tag=iced-0.14-dev#6ef9d12a20cfd0f7bdf38136a26ded9f7459ec8b"
1432 | dependencies = [
1433 | "cosmic-text",
1434 | "etagere",
1435 | "lru",
1436 | "rustc-hash 2.0.0",
1437 | "wgpu",
1438 | ]
1439 |
1440 | [[package]]
1441 | name = "iced_graphics"
1442 | version = "0.14.0-dev"
1443 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1444 | dependencies = [
1445 | "bitflags 2.6.0",
1446 | "bytemuck",
1447 | "cosmic-text",
1448 | "half",
1449 | "iced_core",
1450 | "iced_futures",
1451 | "image",
1452 | "kamadak-exif",
1453 | "log",
1454 | "lyon_path",
1455 | "once_cell",
1456 | "raw-window-handle",
1457 | "rustc-hash 2.0.0",
1458 | "thiserror",
1459 | "unicode-segmentation",
1460 | ]
1461 |
1462 | [[package]]
1463 | name = "iced_renderer"
1464 | version = "0.14.0-dev"
1465 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1466 | dependencies = [
1467 | "iced_graphics",
1468 | "iced_tiny_skia",
1469 | "iced_wgpu",
1470 | "log",
1471 | "thiserror",
1472 | ]
1473 |
1474 | [[package]]
1475 | name = "iced_runtime"
1476 | version = "0.14.0-dev"
1477 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1478 | dependencies = [
1479 | "bytes",
1480 | "dnd",
1481 | "iced_core",
1482 | "iced_futures",
1483 | "raw-window-handle",
1484 | "thiserror",
1485 | "window_clipboard",
1486 | ]
1487 |
1488 | [[package]]
1489 | name = "iced_tiny_skia"
1490 | version = "0.14.0-dev"
1491 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1492 | dependencies = [
1493 | "bytemuck",
1494 | "cosmic-text",
1495 | "iced_graphics",
1496 | "kurbo 0.10.4",
1497 | "log",
1498 | "resvg",
1499 | "rustc-hash 2.0.0",
1500 | "softbuffer",
1501 | "tiny-skia",
1502 | ]
1503 |
1504 | [[package]]
1505 | name = "iced_wgpu"
1506 | version = "0.14.0-dev"
1507 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1508 | dependencies = [
1509 | "as-raw-xcb-connection",
1510 | "bitflags 2.6.0",
1511 | "bytemuck",
1512 | "futures",
1513 | "glam",
1514 | "guillotiere",
1515 | "iced_glyphon",
1516 | "iced_graphics",
1517 | "log",
1518 | "lyon",
1519 | "once_cell",
1520 | "raw-window-handle",
1521 | "resvg",
1522 | "rustc-hash 2.0.0",
1523 | "rustix",
1524 | "smithay-client-toolkit",
1525 | "thiserror",
1526 | "tiny-xlib",
1527 | "wayland-backend",
1528 | "wayland-client",
1529 | "wayland-protocols",
1530 | "wayland-sys",
1531 | "wgpu",
1532 | "x11rb",
1533 | ]
1534 |
1535 | [[package]]
1536 | name = "iced_widget"
1537 | version = "0.14.0-dev"
1538 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1539 | dependencies = [
1540 | "dnd",
1541 | "iced_renderer",
1542 | "iced_runtime",
1543 | "num-traits",
1544 | "once_cell",
1545 | "ouroboros",
1546 | "rustc-hash 2.0.0",
1547 | "thiserror",
1548 | "unicode-segmentation",
1549 | "window_clipboard",
1550 | ]
1551 |
1552 | [[package]]
1553 | name = "ident_case"
1554 | version = "1.0.1"
1555 | source = "registry+https://github.com/rust-lang/crates.io-index"
1556 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
1557 |
1558 | [[package]]
1559 | name = "idna"
1560 | version = "0.5.0"
1561 | source = "registry+https://github.com/rust-lang/crates.io-index"
1562 | checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
1563 | dependencies = [
1564 | "unicode-bidi",
1565 | "unicode-normalization",
1566 | ]
1567 |
1568 | [[package]]
1569 | name = "image"
1570 | version = "0.24.9"
1571 | source = "registry+https://github.com/rust-lang/crates.io-index"
1572 | checksum = "5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d"
1573 | dependencies = [
1574 | "bytemuck",
1575 | "byteorder",
1576 | "color_quant",
1577 | "exr",
1578 | "gif",
1579 | "jpeg-decoder",
1580 | "num-traits",
1581 | "png",
1582 | "qoi",
1583 | "tiff",
1584 | ]
1585 |
1586 | [[package]]
1587 | name = "imagesize"
1588 | version = "0.12.0"
1589 | source = "registry+https://github.com/rust-lang/crates.io-index"
1590 | checksum = "029d73f573d8e8d63e6d5020011d3255b28c3ba85d6cf870a07184ed23de9284"
1591 |
1592 | [[package]]
1593 | name = "indexmap"
1594 | version = "2.6.0"
1595 | source = "registry+https://github.com/rust-lang/crates.io-index"
1596 | checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da"
1597 | dependencies = [
1598 | "equivalent",
1599 | "hashbrown 0.15.0",
1600 | ]
1601 |
1602 | [[package]]
1603 | name = "inotify"
1604 | version = "0.9.6"
1605 | source = "registry+https://github.com/rust-lang/crates.io-index"
1606 | checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff"
1607 | dependencies = [
1608 | "bitflags 1.3.2",
1609 | "inotify-sys",
1610 | "libc",
1611 | ]
1612 |
1613 | [[package]]
1614 | name = "inotify-sys"
1615 | version = "0.1.5"
1616 | source = "registry+https://github.com/rust-lang/crates.io-index"
1617 | checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
1618 | dependencies = [
1619 | "libc",
1620 | ]
1621 |
1622 | [[package]]
1623 | name = "instant"
1624 | version = "0.1.13"
1625 | source = "registry+https://github.com/rust-lang/crates.io-index"
1626 | checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222"
1627 | dependencies = [
1628 | "cfg-if",
1629 | ]
1630 |
1631 | [[package]]
1632 | name = "itertools"
1633 | version = "0.12.1"
1634 | source = "registry+https://github.com/rust-lang/crates.io-index"
1635 | checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569"
1636 | dependencies = [
1637 | "either",
1638 | ]
1639 |
1640 | [[package]]
1641 | name = "itoa"
1642 | version = "1.0.11"
1643 | source = "registry+https://github.com/rust-lang/crates.io-index"
1644 | checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
1645 |
1646 | [[package]]
1647 | name = "jni-sys"
1648 | version = "0.3.0"
1649 | source = "registry+https://github.com/rust-lang/crates.io-index"
1650 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
1651 |
1652 | [[package]]
1653 | name = "jpeg-decoder"
1654 | version = "0.3.1"
1655 | source = "registry+https://github.com/rust-lang/crates.io-index"
1656 | checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
1657 | dependencies = [
1658 | "rayon",
1659 | ]
1660 |
1661 | [[package]]
1662 | name = "js-sys"
1663 | version = "0.3.72"
1664 | source = "registry+https://github.com/rust-lang/crates.io-index"
1665 | checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9"
1666 | dependencies = [
1667 | "wasm-bindgen",
1668 | ]
1669 |
1670 | [[package]]
1671 | name = "kamadak-exif"
1672 | version = "0.5.5"
1673 | source = "registry+https://github.com/rust-lang/crates.io-index"
1674 | checksum = "ef4fc70d0ab7e5b6bafa30216a6b48705ea964cdfc29c050f2412295eba58077"
1675 | dependencies = [
1676 | "mutate_once",
1677 | ]
1678 |
1679 | [[package]]
1680 | name = "khronos-egl"
1681 | version = "6.0.0"
1682 | source = "registry+https://github.com/rust-lang/crates.io-index"
1683 | checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76"
1684 | dependencies = [
1685 | "libc",
1686 | "libloading",
1687 | "pkg-config",
1688 | ]
1689 |
1690 | [[package]]
1691 | name = "khronos_api"
1692 | version = "3.1.0"
1693 | source = "registry+https://github.com/rust-lang/crates.io-index"
1694 | checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
1695 |
1696 | [[package]]
1697 | name = "known-folders"
1698 | version = "1.2.0"
1699 | source = "registry+https://github.com/rust-lang/crates.io-index"
1700 | checksum = "b7d9a1740cc8b46e259a0eb787d79d855e79ff10b9855a5eba58868d5da7927c"
1701 | dependencies = [
1702 | "windows-sys 0.59.0",
1703 | ]
1704 |
1705 | [[package]]
1706 | name = "kqueue"
1707 | version = "1.0.8"
1708 | source = "registry+https://github.com/rust-lang/crates.io-index"
1709 | checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c"
1710 | dependencies = [
1711 | "kqueue-sys",
1712 | "libc",
1713 | ]
1714 |
1715 | [[package]]
1716 | name = "kqueue-sys"
1717 | version = "1.0.4"
1718 | source = "registry+https://github.com/rust-lang/crates.io-index"
1719 | checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b"
1720 | dependencies = [
1721 | "bitflags 1.3.2",
1722 | "libc",
1723 | ]
1724 |
1725 | [[package]]
1726 | name = "kurbo"
1727 | version = "0.10.4"
1728 | source = "registry+https://github.com/rust-lang/crates.io-index"
1729 | checksum = "1618d4ebd923e97d67e7cd363d80aef35fe961005cbbbb3d2dad8bdd1bc63440"
1730 | dependencies = [
1731 | "arrayvec",
1732 | "smallvec",
1733 | ]
1734 |
1735 | [[package]]
1736 | name = "kurbo"
1737 | version = "0.11.1"
1738 | source = "registry+https://github.com/rust-lang/crates.io-index"
1739 | checksum = "89234b2cc610a7dd927ebde6b41dd1a5d4214cffaef4cf1fb2195d592f92518f"
1740 | dependencies = [
1741 | "arrayvec",
1742 | "smallvec",
1743 | ]
1744 |
1745 | [[package]]
1746 | name = "lazy_static"
1747 | version = "1.5.0"
1748 | source = "registry+https://github.com/rust-lang/crates.io-index"
1749 | checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
1750 |
1751 | [[package]]
1752 | name = "lebe"
1753 | version = "0.5.2"
1754 | source = "registry+https://github.com/rust-lang/crates.io-index"
1755 | checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
1756 |
1757 | [[package]]
1758 | name = "libc"
1759 | version = "0.2.161"
1760 | source = "registry+https://github.com/rust-lang/crates.io-index"
1761 | checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1"
1762 |
1763 | [[package]]
1764 | name = "libcosmic"
1765 | version = "0.1.0"
1766 | source = "git+https://github.com/pop-os/libcosmic.git#fde0516484750e0a7d2499e54964c5ed6ba8e16b"
1767 | dependencies = [
1768 | "apply",
1769 | "chrono",
1770 | "cosmic-config",
1771 | "cosmic-theme",
1772 | "css-color",
1773 | "derive_setters",
1774 | "fraction",
1775 | "freedesktop-icons",
1776 | "iced",
1777 | "iced_core",
1778 | "iced_futures",
1779 | "iced_renderer",
1780 | "iced_runtime",
1781 | "iced_tiny_skia",
1782 | "iced_widget",
1783 | "lazy_static",
1784 | "palette",
1785 | "serde",
1786 | "slotmap",
1787 | "taffy",
1788 | "thiserror",
1789 | "tracing",
1790 | "unicode-segmentation",
1791 | "url",
1792 | "ustr",
1793 | ]
1794 |
1795 | [[package]]
1796 | name = "libloading"
1797 | version = "0.8.5"
1798 | source = "registry+https://github.com/rust-lang/crates.io-index"
1799 | checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4"
1800 | dependencies = [
1801 | "cfg-if",
1802 | "windows-targets 0.52.6",
1803 | ]
1804 |
1805 | [[package]]
1806 | name = "libm"
1807 | version = "0.2.8"
1808 | source = "registry+https://github.com/rust-lang/crates.io-index"
1809 | checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
1810 |
1811 | [[package]]
1812 | name = "libredox"
1813 | version = "0.1.3"
1814 | source = "registry+https://github.com/rust-lang/crates.io-index"
1815 | checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
1816 | dependencies = [
1817 | "bitflags 2.6.0",
1818 | "libc",
1819 | "redox_syscall 0.5.7",
1820 | ]
1821 |
1822 | [[package]]
1823 | name = "linux-raw-sys"
1824 | version = "0.4.14"
1825 | source = "registry+https://github.com/rust-lang/crates.io-index"
1826 | checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
1827 |
1828 | [[package]]
1829 | name = "linux-raw-sys"
1830 | version = "0.6.5"
1831 | source = "registry+https://github.com/rust-lang/crates.io-index"
1832 | checksum = "2a385b1be4e5c3e362ad2ffa73c392e53f031eaa5b7d648e64cd87f27f6063d7"
1833 |
1834 | [[package]]
1835 | name = "litrs"
1836 | version = "0.4.1"
1837 | source = "registry+https://github.com/rust-lang/crates.io-index"
1838 | checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5"
1839 |
1840 | [[package]]
1841 | name = "lock_api"
1842 | version = "0.4.12"
1843 | source = "registry+https://github.com/rust-lang/crates.io-index"
1844 | checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
1845 | dependencies = [
1846 | "autocfg",
1847 | "scopeguard",
1848 | ]
1849 |
1850 | [[package]]
1851 | name = "log"
1852 | version = "0.4.22"
1853 | source = "registry+https://github.com/rust-lang/crates.io-index"
1854 | checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
1855 |
1856 | [[package]]
1857 | name = "lru"
1858 | version = "0.12.5"
1859 | source = "registry+https://github.com/rust-lang/crates.io-index"
1860 | checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38"
1861 |
1862 | [[package]]
1863 | name = "lyon"
1864 | version = "1.0.1"
1865 | source = "registry+https://github.com/rust-lang/crates.io-index"
1866 | checksum = "91e7f9cda98b5430809e63ca5197b06c7d191bf7e26dfc467d5a3f0290e2a74f"
1867 | dependencies = [
1868 | "lyon_algorithms",
1869 | "lyon_tessellation",
1870 | ]
1871 |
1872 | [[package]]
1873 | name = "lyon_algorithms"
1874 | version = "1.0.4"
1875 | source = "registry+https://github.com/rust-lang/crates.io-index"
1876 | checksum = "a3bca95f9a4955b3e4a821fbbcd5edfbd9be2a9a50bb5758173e5358bfb4c623"
1877 | dependencies = [
1878 | "lyon_path",
1879 | "num-traits",
1880 | ]
1881 |
1882 | [[package]]
1883 | name = "lyon_geom"
1884 | version = "1.0.6"
1885 | source = "registry+https://github.com/rust-lang/crates.io-index"
1886 | checksum = "8af69edc087272df438b3ee436c4bb6d7c04aa8af665cfd398feae627dbd8570"
1887 | dependencies = [
1888 | "arrayvec",
1889 | "euclid",
1890 | "num-traits",
1891 | ]
1892 |
1893 | [[package]]
1894 | name = "lyon_path"
1895 | version = "1.0.6"
1896 | source = "registry+https://github.com/rust-lang/crates.io-index"
1897 | checksum = "8e0b8aec2f58586f6eef237985b9a9b7cb3a3aff4417c575075cf95bf925252e"
1898 | dependencies = [
1899 | "lyon_geom",
1900 | "num-traits",
1901 | ]
1902 |
1903 | [[package]]
1904 | name = "lyon_tessellation"
1905 | version = "1.0.15"
1906 | source = "registry+https://github.com/rust-lang/crates.io-index"
1907 | checksum = "579d42360a4b09846eff2feef28f538696c7d6c7439bfa65874ff3cbe0951b2c"
1908 | dependencies = [
1909 | "float_next_after",
1910 | "lyon_path",
1911 | "num-traits",
1912 | ]
1913 |
1914 | [[package]]
1915 | name = "malloc_buf"
1916 | version = "0.0.6"
1917 | source = "registry+https://github.com/rust-lang/crates.io-index"
1918 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
1919 | dependencies = [
1920 | "libc",
1921 | ]
1922 |
1923 | [[package]]
1924 | name = "memchr"
1925 | version = "2.7.4"
1926 | source = "registry+https://github.com/rust-lang/crates.io-index"
1927 | checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
1928 |
1929 | [[package]]
1930 | name = "memmap2"
1931 | version = "0.8.0"
1932 | source = "registry+https://github.com/rust-lang/crates.io-index"
1933 | checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed"
1934 | dependencies = [
1935 | "libc",
1936 | ]
1937 |
1938 | [[package]]
1939 | name = "memmap2"
1940 | version = "0.9.5"
1941 | source = "registry+https://github.com/rust-lang/crates.io-index"
1942 | checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f"
1943 | dependencies = [
1944 | "libc",
1945 | ]
1946 |
1947 | [[package]]
1948 | name = "metal"
1949 | version = "0.29.0"
1950 | source = "registry+https://github.com/rust-lang/crates.io-index"
1951 | checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21"
1952 | dependencies = [
1953 | "bitflags 2.6.0",
1954 | "block",
1955 | "core-graphics-types",
1956 | "foreign-types",
1957 | "log",
1958 | "objc",
1959 | "paste",
1960 | ]
1961 |
1962 | [[package]]
1963 | name = "mime"
1964 | version = "0.1.0"
1965 | source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265"
1966 | dependencies = [
1967 | "smithay-clipboard",
1968 | ]
1969 |
1970 | [[package]]
1971 | name = "miniz_oxide"
1972 | version = "0.7.4"
1973 | source = "registry+https://github.com/rust-lang/crates.io-index"
1974 | checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08"
1975 | dependencies = [
1976 | "adler",
1977 | ]
1978 |
1979 | [[package]]
1980 | name = "miniz_oxide"
1981 | version = "0.8.0"
1982 | source = "registry+https://github.com/rust-lang/crates.io-index"
1983 | checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1"
1984 | dependencies = [
1985 | "adler2",
1986 | "simd-adler32",
1987 | ]
1988 |
1989 | [[package]]
1990 | name = "mio"
1991 | version = "0.8.11"
1992 | source = "registry+https://github.com/rust-lang/crates.io-index"
1993 | checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
1994 | dependencies = [
1995 | "libc",
1996 | "log",
1997 | "wasi",
1998 | "windows-sys 0.48.0",
1999 | ]
2000 |
2001 | [[package]]
2002 | name = "mutate_once"
2003 | version = "0.1.1"
2004 | source = "registry+https://github.com/rust-lang/crates.io-index"
2005 | checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b"
2006 |
2007 | [[package]]
2008 | name = "naga"
2009 | version = "22.1.0"
2010 | source = "registry+https://github.com/rust-lang/crates.io-index"
2011 | checksum = "8bd5a652b6faf21496f2cfd88fc49989c8db0825d1f6746b1a71a6ede24a63ad"
2012 | dependencies = [
2013 | "arrayvec",
2014 | "bit-set",
2015 | "bitflags 2.6.0",
2016 | "cfg_aliases 0.1.1",
2017 | "codespan-reporting",
2018 | "hexf-parse",
2019 | "indexmap",
2020 | "log",
2021 | "rustc-hash 1.1.0",
2022 | "spirv",
2023 | "termcolor",
2024 | "thiserror",
2025 | "unicode-xid",
2026 | ]
2027 |
2028 | [[package]]
2029 | name = "ndk-sys"
2030 | version = "0.5.0+25.2.9519653"
2031 | source = "registry+https://github.com/rust-lang/crates.io-index"
2032 | checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
2033 | dependencies = [
2034 | "jni-sys",
2035 | ]
2036 |
2037 | [[package]]
2038 | name = "notify"
2039 | version = "6.1.1"
2040 | source = "registry+https://github.com/rust-lang/crates.io-index"
2041 | checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d"
2042 | dependencies = [
2043 | "bitflags 2.6.0",
2044 | "crossbeam-channel",
2045 | "filetime",
2046 | "fsevent-sys",
2047 | "inotify",
2048 | "kqueue",
2049 | "libc",
2050 | "log",
2051 | "mio",
2052 | "walkdir",
2053 | "windows-sys 0.48.0",
2054 | ]
2055 |
2056 | [[package]]
2057 | name = "num"
2058 | version = "0.4.3"
2059 | source = "registry+https://github.com/rust-lang/crates.io-index"
2060 | checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23"
2061 | dependencies = [
2062 | "num-bigint",
2063 | "num-complex",
2064 | "num-integer",
2065 | "num-iter",
2066 | "num-rational",
2067 | "num-traits",
2068 | ]
2069 |
2070 | [[package]]
2071 | name = "num-bigint"
2072 | version = "0.4.6"
2073 | source = "registry+https://github.com/rust-lang/crates.io-index"
2074 | checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
2075 | dependencies = [
2076 | "num-integer",
2077 | "num-traits",
2078 | ]
2079 |
2080 | [[package]]
2081 | name = "num-complex"
2082 | version = "0.4.6"
2083 | source = "registry+https://github.com/rust-lang/crates.io-index"
2084 | checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
2085 | dependencies = [
2086 | "num-traits",
2087 | ]
2088 |
2089 | [[package]]
2090 | name = "num-integer"
2091 | version = "0.1.46"
2092 | source = "registry+https://github.com/rust-lang/crates.io-index"
2093 | checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
2094 | dependencies = [
2095 | "num-traits",
2096 | ]
2097 |
2098 | [[package]]
2099 | name = "num-iter"
2100 | version = "0.1.45"
2101 | source = "registry+https://github.com/rust-lang/crates.io-index"
2102 | checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
2103 | dependencies = [
2104 | "autocfg",
2105 | "num-integer",
2106 | "num-traits",
2107 | ]
2108 |
2109 | [[package]]
2110 | name = "num-rational"
2111 | version = "0.4.2"
2112 | source = "registry+https://github.com/rust-lang/crates.io-index"
2113 | checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
2114 | dependencies = [
2115 | "num-bigint",
2116 | "num-integer",
2117 | "num-traits",
2118 | ]
2119 |
2120 | [[package]]
2121 | name = "num-traits"
2122 | version = "0.2.19"
2123 | source = "registry+https://github.com/rust-lang/crates.io-index"
2124 | checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
2125 | dependencies = [
2126 | "autocfg",
2127 | "libm",
2128 | ]
2129 |
2130 | [[package]]
2131 | name = "num_cpus"
2132 | version = "1.16.0"
2133 | source = "registry+https://github.com/rust-lang/crates.io-index"
2134 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
2135 | dependencies = [
2136 | "hermit-abi 0.3.9",
2137 | "libc",
2138 | ]
2139 |
2140 | [[package]]
2141 | name = "objc"
2142 | version = "0.2.7"
2143 | source = "registry+https://github.com/rust-lang/crates.io-index"
2144 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
2145 | dependencies = [
2146 | "malloc_buf",
2147 | ]
2148 |
2149 | [[package]]
2150 | name = "objc-foundation"
2151 | version = "0.1.1"
2152 | source = "registry+https://github.com/rust-lang/crates.io-index"
2153 | checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
2154 | dependencies = [
2155 | "block",
2156 | "objc",
2157 | "objc_id",
2158 | ]
2159 |
2160 | [[package]]
2161 | name = "objc_id"
2162 | version = "0.1.1"
2163 | source = "registry+https://github.com/rust-lang/crates.io-index"
2164 | checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
2165 | dependencies = [
2166 | "objc",
2167 | ]
2168 |
2169 | [[package]]
2170 | name = "once_cell"
2171 | version = "1.20.2"
2172 | source = "registry+https://github.com/rust-lang/crates.io-index"
2173 | checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
2174 |
2175 | [[package]]
2176 | name = "option-ext"
2177 | version = "0.2.0"
2178 | source = "registry+https://github.com/rust-lang/crates.io-index"
2179 | checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
2180 |
2181 | [[package]]
2182 | name = "ordered-multimap"
2183 | version = "0.7.3"
2184 | source = "registry+https://github.com/rust-lang/crates.io-index"
2185 | checksum = "49203cdcae0030493bad186b28da2fa25645fa276a51b6fec8010d281e02ef79"
2186 | dependencies = [
2187 | "dlv-list",
2188 | "hashbrown 0.14.5",
2189 | ]
2190 |
2191 | [[package]]
2192 | name = "ouroboros"
2193 | version = "0.18.4"
2194 | source = "registry+https://github.com/rust-lang/crates.io-index"
2195 | checksum = "944fa20996a25aded6b4795c6d63f10014a7a83f8be9828a11860b08c5fc4a67"
2196 | dependencies = [
2197 | "aliasable",
2198 | "ouroboros_macro",
2199 | "static_assertions",
2200 | ]
2201 |
2202 | [[package]]
2203 | name = "ouroboros_macro"
2204 | version = "0.18.4"
2205 | source = "registry+https://github.com/rust-lang/crates.io-index"
2206 | checksum = "39b0deead1528fd0e5947a8546a9642a9777c25f6e1e26f34c97b204bbb465bd"
2207 | dependencies = [
2208 | "heck",
2209 | "itertools",
2210 | "proc-macro2",
2211 | "proc-macro2-diagnostics",
2212 | "quote",
2213 | "syn 2.0.85",
2214 | ]
2215 |
2216 | [[package]]
2217 | name = "palette"
2218 | version = "0.7.6"
2219 | source = "registry+https://github.com/rust-lang/crates.io-index"
2220 | checksum = "4cbf71184cc5ecc2e4e1baccdb21026c20e5fc3dcf63028a086131b3ab00b6e6"
2221 | dependencies = [
2222 | "approx",
2223 | "fast-srgb8",
2224 | "palette_derive",
2225 | "phf",
2226 | "serde",
2227 | ]
2228 |
2229 | [[package]]
2230 | name = "palette_derive"
2231 | version = "0.7.6"
2232 | source = "registry+https://github.com/rust-lang/crates.io-index"
2233 | checksum = "f5030daf005bface118c096f510ffb781fc28f9ab6a32ab224d8631be6851d30"
2234 | dependencies = [
2235 | "by_address",
2236 | "proc-macro2",
2237 | "quote",
2238 | "syn 2.0.85",
2239 | ]
2240 |
2241 | [[package]]
2242 | name = "parking_lot"
2243 | version = "0.11.2"
2244 | source = "registry+https://github.com/rust-lang/crates.io-index"
2245 | checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99"
2246 | dependencies = [
2247 | "instant",
2248 | "lock_api",
2249 | "parking_lot_core 0.8.6",
2250 | ]
2251 |
2252 | [[package]]
2253 | name = "parking_lot"
2254 | version = "0.12.3"
2255 | source = "registry+https://github.com/rust-lang/crates.io-index"
2256 | checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
2257 | dependencies = [
2258 | "lock_api",
2259 | "parking_lot_core 0.9.10",
2260 | ]
2261 |
2262 | [[package]]
2263 | name = "parking_lot_core"
2264 | version = "0.8.6"
2265 | source = "registry+https://github.com/rust-lang/crates.io-index"
2266 | checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc"
2267 | dependencies = [
2268 | "cfg-if",
2269 | "instant",
2270 | "libc",
2271 | "redox_syscall 0.2.16",
2272 | "smallvec",
2273 | "winapi",
2274 | ]
2275 |
2276 | [[package]]
2277 | name = "parking_lot_core"
2278 | version = "0.9.10"
2279 | source = "registry+https://github.com/rust-lang/crates.io-index"
2280 | checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
2281 | dependencies = [
2282 | "cfg-if",
2283 | "libc",
2284 | "redox_syscall 0.5.7",
2285 | "smallvec",
2286 | "windows-targets 0.52.6",
2287 | ]
2288 |
2289 | [[package]]
2290 | name = "paste"
2291 | version = "1.0.15"
2292 | source = "registry+https://github.com/rust-lang/crates.io-index"
2293 | checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
2294 |
2295 | [[package]]
2296 | name = "percent-encoding"
2297 | version = "2.3.1"
2298 | source = "registry+https://github.com/rust-lang/crates.io-index"
2299 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
2300 |
2301 | [[package]]
2302 | name = "phf"
2303 | version = "0.11.2"
2304 | source = "registry+https://github.com/rust-lang/crates.io-index"
2305 | checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc"
2306 | dependencies = [
2307 | "phf_macros",
2308 | "phf_shared",
2309 | ]
2310 |
2311 | [[package]]
2312 | name = "phf_generator"
2313 | version = "0.11.2"
2314 | source = "registry+https://github.com/rust-lang/crates.io-index"
2315 | checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0"
2316 | dependencies = [
2317 | "phf_shared",
2318 | "rand",
2319 | ]
2320 |
2321 | [[package]]
2322 | name = "phf_macros"
2323 | version = "0.11.2"
2324 | source = "registry+https://github.com/rust-lang/crates.io-index"
2325 | checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b"
2326 | dependencies = [
2327 | "phf_generator",
2328 | "phf_shared",
2329 | "proc-macro2",
2330 | "quote",
2331 | "syn 2.0.85",
2332 | ]
2333 |
2334 | [[package]]
2335 | name = "phf_shared"
2336 | version = "0.11.2"
2337 | source = "registry+https://github.com/rust-lang/crates.io-index"
2338 | checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b"
2339 | dependencies = [
2340 | "siphasher 0.3.11",
2341 | ]
2342 |
2343 | [[package]]
2344 | name = "pico-args"
2345 | version = "0.5.0"
2346 | source = "registry+https://github.com/rust-lang/crates.io-index"
2347 | checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315"
2348 |
2349 | [[package]]
2350 | name = "pin-project-lite"
2351 | version = "0.2.15"
2352 | source = "registry+https://github.com/rust-lang/crates.io-index"
2353 | checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff"
2354 |
2355 | [[package]]
2356 | name = "pin-utils"
2357 | version = "0.1.0"
2358 | source = "registry+https://github.com/rust-lang/crates.io-index"
2359 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
2360 |
2361 | [[package]]
2362 | name = "pkg-config"
2363 | version = "0.3.31"
2364 | source = "registry+https://github.com/rust-lang/crates.io-index"
2365 | checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
2366 |
2367 | [[package]]
2368 | name = "png"
2369 | version = "0.17.14"
2370 | source = "registry+https://github.com/rust-lang/crates.io-index"
2371 | checksum = "52f9d46a34a05a6a57566bc2bfae066ef07585a6e3fa30fbbdff5936380623f0"
2372 | dependencies = [
2373 | "bitflags 1.3.2",
2374 | "crc32fast",
2375 | "fdeflate",
2376 | "flate2",
2377 | "miniz_oxide 0.8.0",
2378 | ]
2379 |
2380 | [[package]]
2381 | name = "polling"
2382 | version = "3.7.3"
2383 | source = "registry+https://github.com/rust-lang/crates.io-index"
2384 | checksum = "cc2790cd301dec6cd3b7a025e4815cf825724a51c98dccfe6a3e55f05ffb6511"
2385 | dependencies = [
2386 | "cfg-if",
2387 | "concurrent-queue",
2388 | "hermit-abi 0.4.0",
2389 | "pin-project-lite",
2390 | "rustix",
2391 | "tracing",
2392 | "windows-sys 0.59.0",
2393 | ]
2394 |
2395 | [[package]]
2396 | name = "presser"
2397 | version = "0.3.1"
2398 | source = "registry+https://github.com/rust-lang/crates.io-index"
2399 | checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa"
2400 |
2401 | [[package]]
2402 | name = "proc-macro2"
2403 | version = "1.0.89"
2404 | source = "registry+https://github.com/rust-lang/crates.io-index"
2405 | checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
2406 | dependencies = [
2407 | "unicode-ident",
2408 | ]
2409 |
2410 | [[package]]
2411 | name = "proc-macro2-diagnostics"
2412 | version = "0.10.1"
2413 | source = "registry+https://github.com/rust-lang/crates.io-index"
2414 | checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8"
2415 | dependencies = [
2416 | "proc-macro2",
2417 | "quote",
2418 | "syn 2.0.85",
2419 | "version_check",
2420 | "yansi",
2421 | ]
2422 |
2423 | [[package]]
2424 | name = "profiling"
2425 | version = "1.0.16"
2426 | source = "registry+https://github.com/rust-lang/crates.io-index"
2427 | checksum = "afbdc74edc00b6f6a218ca6a5364d6226a259d4b8ea1af4a0ea063f27e179f4d"
2428 |
2429 | [[package]]
2430 | name = "qoi"
2431 | version = "0.4.1"
2432 | source = "registry+https://github.com/rust-lang/crates.io-index"
2433 | checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001"
2434 | dependencies = [
2435 | "bytemuck",
2436 | ]
2437 |
2438 | [[package]]
2439 | name = "quick-xml"
2440 | version = "0.36.2"
2441 | source = "registry+https://github.com/rust-lang/crates.io-index"
2442 | checksum = "f7649a7b4df05aed9ea7ec6f628c67c9953a43869b8bc50929569b2999d443fe"
2443 | dependencies = [
2444 | "memchr",
2445 | ]
2446 |
2447 | [[package]]
2448 | name = "quote"
2449 | version = "1.0.37"
2450 | source = "registry+https://github.com/rust-lang/crates.io-index"
2451 | checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
2452 | dependencies = [
2453 | "proc-macro2",
2454 | ]
2455 |
2456 | [[package]]
2457 | name = "rand"
2458 | version = "0.8.5"
2459 | source = "registry+https://github.com/rust-lang/crates.io-index"
2460 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
2461 | dependencies = [
2462 | "rand_core",
2463 | ]
2464 |
2465 | [[package]]
2466 | name = "rand_core"
2467 | version = "0.6.4"
2468 | source = "registry+https://github.com/rust-lang/crates.io-index"
2469 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
2470 |
2471 | [[package]]
2472 | name = "range-alloc"
2473 | version = "0.1.3"
2474 | source = "registry+https://github.com/rust-lang/crates.io-index"
2475 | checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab"
2476 |
2477 | [[package]]
2478 | name = "rangemap"
2479 | version = "1.5.1"
2480 | source = "registry+https://github.com/rust-lang/crates.io-index"
2481 | checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684"
2482 |
2483 | [[package]]
2484 | name = "raw-window-handle"
2485 | version = "0.6.2"
2486 | source = "registry+https://github.com/rust-lang/crates.io-index"
2487 | checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539"
2488 |
2489 | [[package]]
2490 | name = "rayon"
2491 | version = "1.10.0"
2492 | source = "registry+https://github.com/rust-lang/crates.io-index"
2493 | checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
2494 | dependencies = [
2495 | "either",
2496 | "rayon-core",
2497 | ]
2498 |
2499 | [[package]]
2500 | name = "rayon-core"
2501 | version = "1.12.1"
2502 | source = "registry+https://github.com/rust-lang/crates.io-index"
2503 | checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
2504 | dependencies = [
2505 | "crossbeam-deque",
2506 | "crossbeam-utils",
2507 | ]
2508 |
2509 | [[package]]
2510 | name = "read-fonts"
2511 | version = "0.22.5"
2512 | source = "registry+https://github.com/rust-lang/crates.io-index"
2513 | checksum = "4a04b892cb6f91951f144c33321843790c8574c825aafdb16d815fd7183b5229"
2514 | dependencies = [
2515 | "bytemuck",
2516 | "font-types",
2517 | ]
2518 |
2519 | [[package]]
2520 | name = "redox_syscall"
2521 | version = "0.2.16"
2522 | source = "registry+https://github.com/rust-lang/crates.io-index"
2523 | checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
2524 | dependencies = [
2525 | "bitflags 1.3.2",
2526 | ]
2527 |
2528 | [[package]]
2529 | name = "redox_syscall"
2530 | version = "0.4.1"
2531 | source = "registry+https://github.com/rust-lang/crates.io-index"
2532 | checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
2533 | dependencies = [
2534 | "bitflags 1.3.2",
2535 | ]
2536 |
2537 | [[package]]
2538 | name = "redox_syscall"
2539 | version = "0.5.7"
2540 | source = "registry+https://github.com/rust-lang/crates.io-index"
2541 | checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f"
2542 | dependencies = [
2543 | "bitflags 2.6.0",
2544 | ]
2545 |
2546 | [[package]]
2547 | name = "redox_users"
2548 | version = "0.4.6"
2549 | source = "registry+https://github.com/rust-lang/crates.io-index"
2550 | checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43"
2551 | dependencies = [
2552 | "getrandom",
2553 | "libredox",
2554 | "thiserror",
2555 | ]
2556 |
2557 | [[package]]
2558 | name = "renderdoc-sys"
2559 | version = "1.1.0"
2560 | source = "registry+https://github.com/rust-lang/crates.io-index"
2561 | checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832"
2562 |
2563 | [[package]]
2564 | name = "resvg"
2565 | version = "0.42.0"
2566 | source = "registry+https://github.com/rust-lang/crates.io-index"
2567 | checksum = "944d052815156ac8fa77eaac055220e95ba0b01fa8887108ca710c03805d9051"
2568 | dependencies = [
2569 | "gif",
2570 | "jpeg-decoder",
2571 | "log",
2572 | "pico-args",
2573 | "rgb",
2574 | "svgtypes",
2575 | "tiny-skia",
2576 | "usvg",
2577 | ]
2578 |
2579 | [[package]]
2580 | name = "rgb"
2581 | version = "0.8.50"
2582 | source = "registry+https://github.com/rust-lang/crates.io-index"
2583 | checksum = "57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a"
2584 | dependencies = [
2585 | "bytemuck",
2586 | ]
2587 |
2588 | [[package]]
2589 | name = "ron"
2590 | version = "0.8.1"
2591 | source = "registry+https://github.com/rust-lang/crates.io-index"
2592 | checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
2593 | dependencies = [
2594 | "base64 0.21.7",
2595 | "bitflags 2.6.0",
2596 | "serde",
2597 | "serde_derive",
2598 | ]
2599 |
2600 | [[package]]
2601 | name = "roxmltree"
2602 | version = "0.20.0"
2603 | source = "registry+https://github.com/rust-lang/crates.io-index"
2604 | checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97"
2605 |
2606 | [[package]]
2607 | name = "rust-ini"
2608 | version = "0.20.0"
2609 | source = "registry+https://github.com/rust-lang/crates.io-index"
2610 | checksum = "3e0698206bcb8882bf2a9ecb4c1e7785db57ff052297085a6efd4fe42302068a"
2611 | dependencies = [
2612 | "cfg-if",
2613 | "ordered-multimap",
2614 | ]
2615 |
2616 | [[package]]
2617 | name = "rustc-hash"
2618 | version = "1.1.0"
2619 | source = "registry+https://github.com/rust-lang/crates.io-index"
2620 | checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
2621 |
2622 | [[package]]
2623 | name = "rustc-hash"
2624 | version = "2.0.0"
2625 | source = "registry+https://github.com/rust-lang/crates.io-index"
2626 | checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152"
2627 |
2628 | [[package]]
2629 | name = "rustix"
2630 | version = "0.38.37"
2631 | source = "registry+https://github.com/rust-lang/crates.io-index"
2632 | checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811"
2633 | dependencies = [
2634 | "bitflags 2.6.0",
2635 | "errno",
2636 | "libc",
2637 | "linux-raw-sys 0.4.14",
2638 | "windows-sys 0.52.0",
2639 | ]
2640 |
2641 | [[package]]
2642 | name = "rustybuzz"
2643 | version = "0.14.1"
2644 | source = "registry+https://github.com/rust-lang/crates.io-index"
2645 | checksum = "cfb9cf8877777222e4a3bc7eb247e398b56baba500c38c1c46842431adc8b55c"
2646 | dependencies = [
2647 | "bitflags 2.6.0",
2648 | "bytemuck",
2649 | "libm",
2650 | "smallvec",
2651 | "ttf-parser 0.21.1",
2652 | "unicode-bidi-mirroring",
2653 | "unicode-ccc",
2654 | "unicode-properties",
2655 | "unicode-script",
2656 | ]
2657 |
2658 | [[package]]
2659 | name = "ryu"
2660 | version = "1.0.18"
2661 | source = "registry+https://github.com/rust-lang/crates.io-index"
2662 | checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
2663 |
2664 | [[package]]
2665 | name = "same-file"
2666 | version = "1.0.6"
2667 | source = "registry+https://github.com/rust-lang/crates.io-index"
2668 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
2669 | dependencies = [
2670 | "winapi-util",
2671 | ]
2672 |
2673 | [[package]]
2674 | name = "scoped-tls"
2675 | version = "1.0.1"
2676 | source = "registry+https://github.com/rust-lang/crates.io-index"
2677 | checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
2678 |
2679 | [[package]]
2680 | name = "scopeguard"
2681 | version = "1.2.0"
2682 | source = "registry+https://github.com/rust-lang/crates.io-index"
2683 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
2684 |
2685 | [[package]]
2686 | name = "self_cell"
2687 | version = "1.0.4"
2688 | source = "registry+https://github.com/rust-lang/crates.io-index"
2689 | checksum = "d369a96f978623eb3dc28807c4852d6cc617fed53da5d3c400feff1ef34a714a"
2690 |
2691 | [[package]]
2692 | name = "serde"
2693 | version = "1.0.213"
2694 | source = "registry+https://github.com/rust-lang/crates.io-index"
2695 | checksum = "3ea7893ff5e2466df8d720bb615088341b295f849602c6956047f8f80f0e9bc1"
2696 | dependencies = [
2697 | "serde_derive",
2698 | ]
2699 |
2700 | [[package]]
2701 | name = "serde_derive"
2702 | version = "1.0.213"
2703 | source = "registry+https://github.com/rust-lang/crates.io-index"
2704 | checksum = "7e85ad2009c50b58e87caa8cd6dac16bdf511bbfb7af6c33df902396aa480fa5"
2705 | dependencies = [
2706 | "proc-macro2",
2707 | "quote",
2708 | "syn 2.0.85",
2709 | ]
2710 |
2711 | [[package]]
2712 | name = "serde_json"
2713 | version = "1.0.132"
2714 | source = "registry+https://github.com/rust-lang/crates.io-index"
2715 | checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03"
2716 | dependencies = [
2717 | "indexmap",
2718 | "itoa",
2719 | "memchr",
2720 | "ryu",
2721 | "serde",
2722 | ]
2723 |
2724 | [[package]]
2725 | name = "shlex"
2726 | version = "1.3.0"
2727 | source = "registry+https://github.com/rust-lang/crates.io-index"
2728 | checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
2729 |
2730 | [[package]]
2731 | name = "simd-adler32"
2732 | version = "0.3.7"
2733 | source = "registry+https://github.com/rust-lang/crates.io-index"
2734 | checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
2735 |
2736 | [[package]]
2737 | name = "simplecss"
2738 | version = "0.2.1"
2739 | source = "registry+https://github.com/rust-lang/crates.io-index"
2740 | checksum = "a11be7c62927d9427e9f40f3444d5499d868648e2edbc4e2116de69e7ec0e89d"
2741 | dependencies = [
2742 | "log",
2743 | ]
2744 |
2745 | [[package]]
2746 | name = "siphasher"
2747 | version = "0.3.11"
2748 | source = "registry+https://github.com/rust-lang/crates.io-index"
2749 | checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d"
2750 |
2751 | [[package]]
2752 | name = "siphasher"
2753 | version = "1.0.1"
2754 | source = "registry+https://github.com/rust-lang/crates.io-index"
2755 | checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d"
2756 |
2757 | [[package]]
2758 | name = "skrifa"
2759 | version = "0.22.3"
2760 | source = "registry+https://github.com/rust-lang/crates.io-index"
2761 | checksum = "8e1c44ad1f6c5bdd4eefed8326711b7dbda9ea45dfd36068c427d332aa382cbe"
2762 | dependencies = [
2763 | "bytemuck",
2764 | "read-fonts",
2765 | ]
2766 |
2767 | [[package]]
2768 | name = "slab"
2769 | version = "0.4.9"
2770 | source = "registry+https://github.com/rust-lang/crates.io-index"
2771 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
2772 | dependencies = [
2773 | "autocfg",
2774 | ]
2775 |
2776 | [[package]]
2777 | name = "slotmap"
2778 | version = "1.0.7"
2779 | source = "registry+https://github.com/rust-lang/crates.io-index"
2780 | checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a"
2781 | dependencies = [
2782 | "version_check",
2783 | ]
2784 |
2785 | [[package]]
2786 | name = "smallvec"
2787 | version = "1.13.2"
2788 | source = "registry+https://github.com/rust-lang/crates.io-index"
2789 | checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
2790 |
2791 | [[package]]
2792 | name = "smithay-client-toolkit"
2793 | version = "0.19.2"
2794 | source = "registry+https://github.com/rust-lang/crates.io-index"
2795 | checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016"
2796 | dependencies = [
2797 | "bitflags 2.6.0",
2798 | "bytemuck",
2799 | "calloop 0.13.0",
2800 | "calloop-wayland-source",
2801 | "cursor-icon",
2802 | "libc",
2803 | "log",
2804 | "memmap2 0.9.5",
2805 | "pkg-config",
2806 | "rustix",
2807 | "thiserror",
2808 | "wayland-backend",
2809 | "wayland-client",
2810 | "wayland-csd-frame",
2811 | "wayland-cursor",
2812 | "wayland-protocols",
2813 | "wayland-protocols-wlr",
2814 | "wayland-scanner",
2815 | "xkbcommon",
2816 | "xkeysym",
2817 | ]
2818 |
2819 | [[package]]
2820 | name = "smithay-clipboard"
2821 | version = "0.8.0"
2822 | source = "git+https://github.com/pop-os/smithay-clipboard?tag=pop-dnd-5#5a3007def49eb678d1144850c9ee04b80707c56a"
2823 | dependencies = [
2824 | "libc",
2825 | "raw-window-handle",
2826 | "smithay-client-toolkit",
2827 | "wayland-backend",
2828 | ]
2829 |
2830 | [[package]]
2831 | name = "smol_str"
2832 | version = "0.2.2"
2833 | source = "registry+https://github.com/rust-lang/crates.io-index"
2834 | checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead"
2835 | dependencies = [
2836 | "serde",
2837 | ]
2838 |
2839 | [[package]]
2840 | name = "softbuffer"
2841 | version = "0.4.1"
2842 | source = "git+https://github.com/pop-os/softbuffer?tag=cosmic-4.0#6e75b1ad7e98397d37cb187886d05969bc480995"
2843 | dependencies = [
2844 | "as-raw-xcb-connection",
2845 | "bytemuck",
2846 | "cfg_aliases 0.2.1",
2847 | "cocoa",
2848 | "core-graphics",
2849 | "drm",
2850 | "fastrand",
2851 | "foreign-types",
2852 | "js-sys",
2853 | "log",
2854 | "memmap2 0.9.5",
2855 | "objc",
2856 | "raw-window-handle",
2857 | "redox_syscall 0.4.1",
2858 | "rustix",
2859 | "tiny-xlib",
2860 | "wasm-bindgen",
2861 | "wayland-backend",
2862 | "wayland-client",
2863 | "wayland-sys",
2864 | "web-sys",
2865 | "windows-sys 0.52.0",
2866 | "x11rb",
2867 | ]
2868 |
2869 | [[package]]
2870 | name = "spin"
2871 | version = "0.9.8"
2872 | source = "registry+https://github.com/rust-lang/crates.io-index"
2873 | checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
2874 | dependencies = [
2875 | "lock_api",
2876 | ]
2877 |
2878 | [[package]]
2879 | name = "spirv"
2880 | version = "0.3.0+sdk-1.3.268.0"
2881 | source = "registry+https://github.com/rust-lang/crates.io-index"
2882 | checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
2883 | dependencies = [
2884 | "bitflags 2.6.0",
2885 | ]
2886 |
2887 | [[package]]
2888 | name = "static_assertions"
2889 | version = "1.1.0"
2890 | source = "registry+https://github.com/rust-lang/crates.io-index"
2891 | checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
2892 |
2893 | [[package]]
2894 | name = "strict-num"
2895 | version = "0.1.1"
2896 | source = "registry+https://github.com/rust-lang/crates.io-index"
2897 | checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731"
2898 | dependencies = [
2899 | "float-cmp",
2900 | ]
2901 |
2902 | [[package]]
2903 | name = "strsim"
2904 | version = "0.11.1"
2905 | source = "registry+https://github.com/rust-lang/crates.io-index"
2906 | checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
2907 |
2908 | [[package]]
2909 | name = "svg_fmt"
2910 | version = "0.4.3"
2911 | source = "registry+https://github.com/rust-lang/crates.io-index"
2912 | checksum = "20e16a0f46cf5fd675563ef54f26e83e20f2366bcf027bcb3cc3ed2b98aaf2ca"
2913 |
2914 | [[package]]
2915 | name = "svgtypes"
2916 | version = "0.15.2"
2917 | source = "registry+https://github.com/rust-lang/crates.io-index"
2918 | checksum = "794de53cc48eaabeed0ab6a3404a65f40b3e38c067e4435883a65d2aa4ca000e"
2919 | dependencies = [
2920 | "kurbo 0.11.1",
2921 | "siphasher 1.0.1",
2922 | ]
2923 |
2924 | [[package]]
2925 | name = "swash"
2926 | version = "0.1.19"
2927 | source = "registry+https://github.com/rust-lang/crates.io-index"
2928 | checksum = "cbd59f3f359ddd2c95af4758c18270eddd9c730dde98598023cdabff472c2ca2"
2929 | dependencies = [
2930 | "skrifa",
2931 | "yazi",
2932 | "zeno",
2933 | ]
2934 |
2935 | [[package]]
2936 | name = "swayipc"
2937 | version = "3.0.2"
2938 | source = "registry+https://github.com/rust-lang/crates.io-index"
2939 | checksum = "daa5d19f881f372e225095e297072e2e3ee1c4e9e3a46cafe5f5cf70f1313f29"
2940 | dependencies = [
2941 | "serde",
2942 | "serde_json",
2943 | "swayipc-types",
2944 | ]
2945 |
2946 | [[package]]
2947 | name = "swayipc-types"
2948 | version = "1.4.0"
2949 | source = "registry+https://github.com/rust-lang/crates.io-index"
2950 | checksum = "150570ddeab049ddd51930539fe05834054795d5db1a6735285e9534a5f56931"
2951 | dependencies = [
2952 | "serde",
2953 | "serde_json",
2954 | "thiserror",
2955 | ]
2956 |
2957 | [[package]]
2958 | name = "syn"
2959 | version = "1.0.109"
2960 | source = "registry+https://github.com/rust-lang/crates.io-index"
2961 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
2962 | dependencies = [
2963 | "proc-macro2",
2964 | "quote",
2965 | "unicode-ident",
2966 | ]
2967 |
2968 | [[package]]
2969 | name = "syn"
2970 | version = "2.0.85"
2971 | source = "registry+https://github.com/rust-lang/crates.io-index"
2972 | checksum = "5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56"
2973 | dependencies = [
2974 | "proc-macro2",
2975 | "quote",
2976 | "unicode-ident",
2977 | ]
2978 |
2979 | [[package]]
2980 | name = "sys-locale"
2981 | version = "0.3.1"
2982 | source = "registry+https://github.com/rust-lang/crates.io-index"
2983 | checksum = "e801cf239ecd6ccd71f03d270d67dd53d13e90aab208bf4b8fe4ad957ea949b0"
2984 | dependencies = [
2985 | "libc",
2986 | ]
2987 |
2988 | [[package]]
2989 | name = "taffy"
2990 | version = "0.3.11"
2991 | source = "git+https://github.com/DioxusLabs/taffy?rev=7781c70#7781c70241f7f572130c13106f2a869a9cf80885"
2992 | dependencies = [
2993 | "arrayvec",
2994 | "grid",
2995 | "num-traits",
2996 | "slotmap",
2997 | ]
2998 |
2999 | [[package]]
3000 | name = "tempfile"
3001 | version = "3.13.0"
3002 | source = "registry+https://github.com/rust-lang/crates.io-index"
3003 | checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b"
3004 | dependencies = [
3005 | "cfg-if",
3006 | "fastrand",
3007 | "once_cell",
3008 | "rustix",
3009 | "windows-sys 0.59.0",
3010 | ]
3011 |
3012 | [[package]]
3013 | name = "termcolor"
3014 | version = "1.4.1"
3015 | source = "registry+https://github.com/rust-lang/crates.io-index"
3016 | checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
3017 | dependencies = [
3018 | "winapi-util",
3019 | ]
3020 |
3021 | [[package]]
3022 | name = "thiserror"
3023 | version = "1.0.65"
3024 | source = "registry+https://github.com/rust-lang/crates.io-index"
3025 | checksum = "5d11abd9594d9b38965ef50805c5e469ca9cc6f197f883f717e0269a3057b3d5"
3026 | dependencies = [
3027 | "thiserror-impl",
3028 | ]
3029 |
3030 | [[package]]
3031 | name = "thiserror-impl"
3032 | version = "1.0.65"
3033 | source = "registry+https://github.com/rust-lang/crates.io-index"
3034 | checksum = "ae71770322cbd277e69d762a16c444af02aa0575ac0d174f0b9562d3b37f8602"
3035 | dependencies = [
3036 | "proc-macro2",
3037 | "quote",
3038 | "syn 2.0.85",
3039 | ]
3040 |
3041 | [[package]]
3042 | name = "tiff"
3043 | version = "0.9.1"
3044 | source = "registry+https://github.com/rust-lang/crates.io-index"
3045 | checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e"
3046 | dependencies = [
3047 | "flate2",
3048 | "jpeg-decoder",
3049 | "weezl",
3050 | ]
3051 |
3052 | [[package]]
3053 | name = "tiny-keccak"
3054 | version = "2.0.2"
3055 | source = "registry+https://github.com/rust-lang/crates.io-index"
3056 | checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237"
3057 | dependencies = [
3058 | "crunchy",
3059 | ]
3060 |
3061 | [[package]]
3062 | name = "tiny-skia"
3063 | version = "0.11.4"
3064 | source = "registry+https://github.com/rust-lang/crates.io-index"
3065 | checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab"
3066 | dependencies = [
3067 | "arrayref",
3068 | "arrayvec",
3069 | "bytemuck",
3070 | "cfg-if",
3071 | "log",
3072 | "png",
3073 | "tiny-skia-path",
3074 | ]
3075 |
3076 | [[package]]
3077 | name = "tiny-skia-path"
3078 | version = "0.11.4"
3079 | source = "registry+https://github.com/rust-lang/crates.io-index"
3080 | checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93"
3081 | dependencies = [
3082 | "arrayref",
3083 | "bytemuck",
3084 | "strict-num",
3085 | ]
3086 |
3087 | [[package]]
3088 | name = "tiny-xlib"
3089 | version = "0.2.3"
3090 | source = "registry+https://github.com/rust-lang/crates.io-index"
3091 | checksum = "1d52f22673960ad13af14ff4025997312def1223bfa7c8e4949d099e6b3d5d1c"
3092 | dependencies = [
3093 | "as-raw-xcb-connection",
3094 | "ctor-lite",
3095 | "libloading",
3096 | "pkg-config",
3097 | "tracing",
3098 | ]
3099 |
3100 | [[package]]
3101 | name = "tinyvec"
3102 | version = "1.8.0"
3103 | source = "registry+https://github.com/rust-lang/crates.io-index"
3104 | checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
3105 | dependencies = [
3106 | "tinyvec_macros",
3107 | ]
3108 |
3109 | [[package]]
3110 | name = "tinyvec_macros"
3111 | version = "0.1.1"
3112 | source = "registry+https://github.com/rust-lang/crates.io-index"
3113 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
3114 |
3115 | [[package]]
3116 | name = "tracing"
3117 | version = "0.1.40"
3118 | source = "registry+https://github.com/rust-lang/crates.io-index"
3119 | checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
3120 | dependencies = [
3121 | "log",
3122 | "pin-project-lite",
3123 | "tracing-attributes",
3124 | "tracing-core",
3125 | ]
3126 |
3127 | [[package]]
3128 | name = "tracing-attributes"
3129 | version = "0.1.27"
3130 | source = "registry+https://github.com/rust-lang/crates.io-index"
3131 | checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
3132 | dependencies = [
3133 | "proc-macro2",
3134 | "quote",
3135 | "syn 2.0.85",
3136 | ]
3137 |
3138 | [[package]]
3139 | name = "tracing-core"
3140 | version = "0.1.32"
3141 | source = "registry+https://github.com/rust-lang/crates.io-index"
3142 | checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
3143 | dependencies = [
3144 | "once_cell",
3145 | ]
3146 |
3147 | [[package]]
3148 | name = "ttf-parser"
3149 | version = "0.20.0"
3150 | source = "registry+https://github.com/rust-lang/crates.io-index"
3151 | checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4"
3152 |
3153 | [[package]]
3154 | name = "ttf-parser"
3155 | version = "0.21.1"
3156 | source = "registry+https://github.com/rust-lang/crates.io-index"
3157 | checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8"
3158 |
3159 | [[package]]
3160 | name = "unicode-bidi"
3161 | version = "0.3.17"
3162 | source = "registry+https://github.com/rust-lang/crates.io-index"
3163 | checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893"
3164 |
3165 | [[package]]
3166 | name = "unicode-bidi-mirroring"
3167 | version = "0.2.0"
3168 | source = "registry+https://github.com/rust-lang/crates.io-index"
3169 | checksum = "23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86"
3170 |
3171 | [[package]]
3172 | name = "unicode-ccc"
3173 | version = "0.2.0"
3174 | source = "registry+https://github.com/rust-lang/crates.io-index"
3175 | checksum = "1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656"
3176 |
3177 | [[package]]
3178 | name = "unicode-ident"
3179 | version = "1.0.13"
3180 | source = "registry+https://github.com/rust-lang/crates.io-index"
3181 | checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
3182 |
3183 | [[package]]
3184 | name = "unicode-linebreak"
3185 | version = "0.1.5"
3186 | source = "registry+https://github.com/rust-lang/crates.io-index"
3187 | checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
3188 |
3189 | [[package]]
3190 | name = "unicode-normalization"
3191 | version = "0.1.24"
3192 | source = "registry+https://github.com/rust-lang/crates.io-index"
3193 | checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956"
3194 | dependencies = [
3195 | "tinyvec",
3196 | ]
3197 |
3198 | [[package]]
3199 | name = "unicode-properties"
3200 | version = "0.1.3"
3201 | source = "registry+https://github.com/rust-lang/crates.io-index"
3202 | checksum = "e70f2a8b45122e719eb623c01822704c4e0907e7e426a05927e1a1cfff5b75d0"
3203 |
3204 | [[package]]
3205 | name = "unicode-script"
3206 | version = "0.5.7"
3207 | source = "registry+https://github.com/rust-lang/crates.io-index"
3208 | checksum = "9fb421b350c9aff471779e262955939f565ec18b86c15364e6bdf0d662ca7c1f"
3209 |
3210 | [[package]]
3211 | name = "unicode-segmentation"
3212 | version = "1.12.0"
3213 | source = "registry+https://github.com/rust-lang/crates.io-index"
3214 | checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
3215 |
3216 | [[package]]
3217 | name = "unicode-vo"
3218 | version = "0.1.0"
3219 | source = "registry+https://github.com/rust-lang/crates.io-index"
3220 | checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94"
3221 |
3222 | [[package]]
3223 | name = "unicode-width"
3224 | version = "0.1.14"
3225 | source = "registry+https://github.com/rust-lang/crates.io-index"
3226 | checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
3227 |
3228 | [[package]]
3229 | name = "unicode-xid"
3230 | version = "0.2.6"
3231 | source = "registry+https://github.com/rust-lang/crates.io-index"
3232 | checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"
3233 |
3234 | [[package]]
3235 | name = "url"
3236 | version = "2.5.2"
3237 | source = "registry+https://github.com/rust-lang/crates.io-index"
3238 | checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c"
3239 | dependencies = [
3240 | "form_urlencoded",
3241 | "idna",
3242 | "percent-encoding",
3243 | ]
3244 |
3245 | [[package]]
3246 | name = "ustr"
3247 | version = "1.0.0"
3248 | source = "registry+https://github.com/rust-lang/crates.io-index"
3249 | checksum = "7e904a2279a4a36d2356425bb20be271029cc650c335bc82af8bfae30085a3d0"
3250 | dependencies = [
3251 | "ahash",
3252 | "byteorder",
3253 | "lazy_static",
3254 | "parking_lot 0.12.3",
3255 | "serde",
3256 | ]
3257 |
3258 | [[package]]
3259 | name = "usvg"
3260 | version = "0.42.0"
3261 | source = "registry+https://github.com/rust-lang/crates.io-index"
3262 | checksum = "b84ea542ae85c715f07b082438a4231c3760539d902e11d093847a0b22963032"
3263 | dependencies = [
3264 | "base64 0.22.1",
3265 | "data-url",
3266 | "flate2",
3267 | "fontdb 0.18.0",
3268 | "imagesize",
3269 | "kurbo 0.11.1",
3270 | "log",
3271 | "pico-args",
3272 | "roxmltree",
3273 | "rustybuzz",
3274 | "simplecss",
3275 | "siphasher 1.0.1",
3276 | "strict-num",
3277 | "svgtypes",
3278 | "tiny-skia-path",
3279 | "unicode-bidi",
3280 | "unicode-script",
3281 | "unicode-vo",
3282 | "xmlwriter",
3283 | ]
3284 |
3285 | [[package]]
3286 | name = "version_check"
3287 | version = "0.9.5"
3288 | source = "registry+https://github.com/rust-lang/crates.io-index"
3289 | checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
3290 |
3291 | [[package]]
3292 | name = "walkdir"
3293 | version = "2.5.0"
3294 | source = "registry+https://github.com/rust-lang/crates.io-index"
3295 | checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
3296 | dependencies = [
3297 | "same-file",
3298 | "winapi-util",
3299 | ]
3300 |
3301 | [[package]]
3302 | name = "wasi"
3303 | version = "0.11.0+wasi-snapshot-preview1"
3304 | source = "registry+https://github.com/rust-lang/crates.io-index"
3305 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
3306 |
3307 | [[package]]
3308 | name = "wasm-bindgen"
3309 | version = "0.2.95"
3310 | source = "registry+https://github.com/rust-lang/crates.io-index"
3311 | checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e"
3312 | dependencies = [
3313 | "cfg-if",
3314 | "once_cell",
3315 | "wasm-bindgen-macro",
3316 | ]
3317 |
3318 | [[package]]
3319 | name = "wasm-bindgen-backend"
3320 | version = "0.2.95"
3321 | source = "registry+https://github.com/rust-lang/crates.io-index"
3322 | checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358"
3323 | dependencies = [
3324 | "bumpalo",
3325 | "log",
3326 | "once_cell",
3327 | "proc-macro2",
3328 | "quote",
3329 | "syn 2.0.85",
3330 | "wasm-bindgen-shared",
3331 | ]
3332 |
3333 | [[package]]
3334 | name = "wasm-bindgen-futures"
3335 | version = "0.4.45"
3336 | source = "registry+https://github.com/rust-lang/crates.io-index"
3337 | checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b"
3338 | dependencies = [
3339 | "cfg-if",
3340 | "js-sys",
3341 | "wasm-bindgen",
3342 | "web-sys",
3343 | ]
3344 |
3345 | [[package]]
3346 | name = "wasm-bindgen-macro"
3347 | version = "0.2.95"
3348 | source = "registry+https://github.com/rust-lang/crates.io-index"
3349 | checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56"
3350 | dependencies = [
3351 | "quote",
3352 | "wasm-bindgen-macro-support",
3353 | ]
3354 |
3355 | [[package]]
3356 | name = "wasm-bindgen-macro-support"
3357 | version = "0.2.95"
3358 | source = "registry+https://github.com/rust-lang/crates.io-index"
3359 | checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68"
3360 | dependencies = [
3361 | "proc-macro2",
3362 | "quote",
3363 | "syn 2.0.85",
3364 | "wasm-bindgen-backend",
3365 | "wasm-bindgen-shared",
3366 | ]
3367 |
3368 | [[package]]
3369 | name = "wasm-bindgen-shared"
3370 | version = "0.2.95"
3371 | source = "registry+https://github.com/rust-lang/crates.io-index"
3372 | checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d"
3373 |
3374 | [[package]]
3375 | name = "wasm-timer"
3376 | version = "0.2.5"
3377 | source = "registry+https://github.com/rust-lang/crates.io-index"
3378 | checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f"
3379 | dependencies = [
3380 | "futures",
3381 | "js-sys",
3382 | "parking_lot 0.11.2",
3383 | "pin-utils",
3384 | "wasm-bindgen",
3385 | "wasm-bindgen-futures",
3386 | "web-sys",
3387 | ]
3388 |
3389 | [[package]]
3390 | name = "wayland-backend"
3391 | version = "0.3.7"
3392 | source = "registry+https://github.com/rust-lang/crates.io-index"
3393 | checksum = "056535ced7a150d45159d3a8dc30f91a2e2d588ca0b23f70e56033622b8016f6"
3394 | dependencies = [
3395 | "cc",
3396 | "downcast-rs",
3397 | "rustix",
3398 | "scoped-tls",
3399 | "smallvec",
3400 | "wayland-sys",
3401 | ]
3402 |
3403 | [[package]]
3404 | name = "wayland-client"
3405 | version = "0.31.7"
3406 | source = "registry+https://github.com/rust-lang/crates.io-index"
3407 | checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280"
3408 | dependencies = [
3409 | "bitflags 2.6.0",
3410 | "rustix",
3411 | "wayland-backend",
3412 | "wayland-scanner",
3413 | ]
3414 |
3415 | [[package]]
3416 | name = "wayland-csd-frame"
3417 | version = "0.3.0"
3418 | source = "registry+https://github.com/rust-lang/crates.io-index"
3419 | checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
3420 | dependencies = [
3421 | "bitflags 2.6.0",
3422 | "cursor-icon",
3423 | "wayland-backend",
3424 | ]
3425 |
3426 | [[package]]
3427 | name = "wayland-cursor"
3428 | version = "0.31.7"
3429 | source = "registry+https://github.com/rust-lang/crates.io-index"
3430 | checksum = "32b08bc3aafdb0035e7fe0fdf17ba0c09c268732707dca4ae098f60cb28c9e4c"
3431 | dependencies = [
3432 | "rustix",
3433 | "wayland-client",
3434 | "xcursor",
3435 | ]
3436 |
3437 | [[package]]
3438 | name = "wayland-protocols"
3439 | version = "0.32.5"
3440 | source = "registry+https://github.com/rust-lang/crates.io-index"
3441 | checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e"
3442 | dependencies = [
3443 | "bitflags 2.6.0",
3444 | "wayland-backend",
3445 | "wayland-client",
3446 | "wayland-scanner",
3447 | ]
3448 |
3449 | [[package]]
3450 | name = "wayland-protocols-wlr"
3451 | version = "0.3.5"
3452 | source = "registry+https://github.com/rust-lang/crates.io-index"
3453 | checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022"
3454 | dependencies = [
3455 | "bitflags 2.6.0",
3456 | "wayland-backend",
3457 | "wayland-client",
3458 | "wayland-protocols",
3459 | "wayland-scanner",
3460 | ]
3461 |
3462 | [[package]]
3463 | name = "wayland-scanner"
3464 | version = "0.31.5"
3465 | source = "registry+https://github.com/rust-lang/crates.io-index"
3466 | checksum = "597f2001b2e5fc1121e3d5b9791d3e78f05ba6bfa4641053846248e3a13661c3"
3467 | dependencies = [
3468 | "proc-macro2",
3469 | "quick-xml",
3470 | "quote",
3471 | ]
3472 |
3473 | [[package]]
3474 | name = "wayland-sys"
3475 | version = "0.31.5"
3476 | source = "registry+https://github.com/rust-lang/crates.io-index"
3477 | checksum = "efa8ac0d8e8ed3e3b5c9fc92c7881406a268e11555abe36493efabe649a29e09"
3478 | dependencies = [
3479 | "dlib",
3480 | "log",
3481 | "once_cell",
3482 | "pkg-config",
3483 | ]
3484 |
3485 | [[package]]
3486 | name = "web-sys"
3487 | version = "0.3.72"
3488 | source = "registry+https://github.com/rust-lang/crates.io-index"
3489 | checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112"
3490 | dependencies = [
3491 | "js-sys",
3492 | "wasm-bindgen",
3493 | ]
3494 |
3495 | [[package]]
3496 | name = "web-time"
3497 | version = "1.1.0"
3498 | source = "registry+https://github.com/rust-lang/crates.io-index"
3499 | checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
3500 | dependencies = [
3501 | "js-sys",
3502 | "wasm-bindgen",
3503 | ]
3504 |
3505 | [[package]]
3506 | name = "weezl"
3507 | version = "0.1.8"
3508 | source = "registry+https://github.com/rust-lang/crates.io-index"
3509 | checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
3510 |
3511 | [[package]]
3512 | name = "wgpu"
3513 | version = "22.1.0"
3514 | source = "registry+https://github.com/rust-lang/crates.io-index"
3515 | checksum = "e1d1c4ba43f80542cf63a0a6ed3134629ae73e8ab51e4b765a67f3aa062eb433"
3516 | dependencies = [
3517 | "arrayvec",
3518 | "cfg_aliases 0.1.1",
3519 | "document-features",
3520 | "js-sys",
3521 | "log",
3522 | "naga",
3523 | "parking_lot 0.11.2",
3524 | "profiling",
3525 | "raw-window-handle",
3526 | "smallvec",
3527 | "static_assertions",
3528 | "wasm-bindgen",
3529 | "wasm-bindgen-futures",
3530 | "web-sys",
3531 | "wgpu-core",
3532 | "wgpu-hal",
3533 | "wgpu-types",
3534 | ]
3535 |
3536 | [[package]]
3537 | name = "wgpu-core"
3538 | version = "22.1.0"
3539 | source = "registry+https://github.com/rust-lang/crates.io-index"
3540 | checksum = "0348c840d1051b8e86c3bcd31206080c5e71e5933dabd79be1ce732b0b2f089a"
3541 | dependencies = [
3542 | "arrayvec",
3543 | "bit-vec",
3544 | "bitflags 2.6.0",
3545 | "cfg_aliases 0.1.1",
3546 | "document-features",
3547 | "indexmap",
3548 | "log",
3549 | "naga",
3550 | "once_cell",
3551 | "parking_lot 0.11.2",
3552 | "profiling",
3553 | "raw-window-handle",
3554 | "rustc-hash 1.1.0",
3555 | "smallvec",
3556 | "thiserror",
3557 | "wgpu-hal",
3558 | "wgpu-types",
3559 | ]
3560 |
3561 | [[package]]
3562 | name = "wgpu-hal"
3563 | version = "22.0.0"
3564 | source = "registry+https://github.com/rust-lang/crates.io-index"
3565 | checksum = "f6bbf4b4de8b2a83c0401d9e5ae0080a2792055f25859a02bf9be97952bbed4f"
3566 | dependencies = [
3567 | "android_system_properties",
3568 | "arrayvec",
3569 | "ash",
3570 | "bit-set",
3571 | "bitflags 2.6.0",
3572 | "block",
3573 | "cfg_aliases 0.1.1",
3574 | "core-graphics-types",
3575 | "d3d12",
3576 | "glow",
3577 | "glutin_wgl_sys",
3578 | "gpu-alloc",
3579 | "gpu-allocator",
3580 | "gpu-descriptor",
3581 | "hassle-rs",
3582 | "js-sys",
3583 | "khronos-egl",
3584 | "libc",
3585 | "libloading",
3586 | "log",
3587 | "metal",
3588 | "naga",
3589 | "ndk-sys",
3590 | "objc",
3591 | "once_cell",
3592 | "parking_lot 0.11.2",
3593 | "profiling",
3594 | "range-alloc",
3595 | "raw-window-handle",
3596 | "renderdoc-sys",
3597 | "rustc-hash 1.1.0",
3598 | "smallvec",
3599 | "thiserror",
3600 | "wasm-bindgen",
3601 | "web-sys",
3602 | "wgpu-types",
3603 | "winapi",
3604 | ]
3605 |
3606 | [[package]]
3607 | name = "wgpu-types"
3608 | version = "22.0.0"
3609 | source = "registry+https://github.com/rust-lang/crates.io-index"
3610 | checksum = "bc9d91f0e2c4b51434dfa6db77846f2793149d8e73f800fa2e41f52b8eac3c5d"
3611 | dependencies = [
3612 | "bitflags 2.6.0",
3613 | "js-sys",
3614 | "web-sys",
3615 | ]
3616 |
3617 | [[package]]
3618 | name = "widestring"
3619 | version = "1.1.0"
3620 | source = "registry+https://github.com/rust-lang/crates.io-index"
3621 | checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311"
3622 |
3623 | [[package]]
3624 | name = "winapi"
3625 | version = "0.3.9"
3626 | source = "registry+https://github.com/rust-lang/crates.io-index"
3627 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
3628 | dependencies = [
3629 | "winapi-i686-pc-windows-gnu",
3630 | "winapi-x86_64-pc-windows-gnu",
3631 | ]
3632 |
3633 | [[package]]
3634 | name = "winapi-i686-pc-windows-gnu"
3635 | version = "0.4.0"
3636 | source = "registry+https://github.com/rust-lang/crates.io-index"
3637 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
3638 |
3639 | [[package]]
3640 | name = "winapi-util"
3641 | version = "0.1.9"
3642 | source = "registry+https://github.com/rust-lang/crates.io-index"
3643 | checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
3644 | dependencies = [
3645 | "windows-sys 0.59.0",
3646 | ]
3647 |
3648 | [[package]]
3649 | name = "winapi-x86_64-pc-windows-gnu"
3650 | version = "0.4.0"
3651 | source = "registry+https://github.com/rust-lang/crates.io-index"
3652 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
3653 |
3654 | [[package]]
3655 | name = "window_clipboard"
3656 | version = "0.4.1"
3657 | source = "git+https://github.com/pop-os/window_clipboard.git?tag=pop-0.13#a83bf83784276aaa882ef13555295a2ad9edd265"
3658 | dependencies = [
3659 | "clipboard-win",
3660 | "clipboard_macos",
3661 | "clipboard_wayland",
3662 | "clipboard_x11",
3663 | "dnd",
3664 | "mime",
3665 | "raw-window-handle",
3666 | "thiserror",
3667 | ]
3668 |
3669 | [[package]]
3670 | name = "windows"
3671 | version = "0.52.0"
3672 | source = "registry+https://github.com/rust-lang/crates.io-index"
3673 | checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be"
3674 | dependencies = [
3675 | "windows-core",
3676 | "windows-targets 0.52.6",
3677 | ]
3678 |
3679 | [[package]]
3680 | name = "windows-core"
3681 | version = "0.52.0"
3682 | source = "registry+https://github.com/rust-lang/crates.io-index"
3683 | checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
3684 | dependencies = [
3685 | "windows-targets 0.52.6",
3686 | ]
3687 |
3688 | [[package]]
3689 | name = "windows-sys"
3690 | version = "0.48.0"
3691 | source = "registry+https://github.com/rust-lang/crates.io-index"
3692 | checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
3693 | dependencies = [
3694 | "windows-targets 0.48.5",
3695 | ]
3696 |
3697 | [[package]]
3698 | name = "windows-sys"
3699 | version = "0.52.0"
3700 | source = "registry+https://github.com/rust-lang/crates.io-index"
3701 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
3702 | dependencies = [
3703 | "windows-targets 0.52.6",
3704 | ]
3705 |
3706 | [[package]]
3707 | name = "windows-sys"
3708 | version = "0.59.0"
3709 | source = "registry+https://github.com/rust-lang/crates.io-index"
3710 | checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
3711 | dependencies = [
3712 | "windows-targets 0.52.6",
3713 | ]
3714 |
3715 | [[package]]
3716 | name = "windows-targets"
3717 | version = "0.48.5"
3718 | source = "registry+https://github.com/rust-lang/crates.io-index"
3719 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
3720 | dependencies = [
3721 | "windows_aarch64_gnullvm 0.48.5",
3722 | "windows_aarch64_msvc 0.48.5",
3723 | "windows_i686_gnu 0.48.5",
3724 | "windows_i686_msvc 0.48.5",
3725 | "windows_x86_64_gnu 0.48.5",
3726 | "windows_x86_64_gnullvm 0.48.5",
3727 | "windows_x86_64_msvc 0.48.5",
3728 | ]
3729 |
3730 | [[package]]
3731 | name = "windows-targets"
3732 | version = "0.52.6"
3733 | source = "registry+https://github.com/rust-lang/crates.io-index"
3734 | checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
3735 | dependencies = [
3736 | "windows_aarch64_gnullvm 0.52.6",
3737 | "windows_aarch64_msvc 0.52.6",
3738 | "windows_i686_gnu 0.52.6",
3739 | "windows_i686_gnullvm",
3740 | "windows_i686_msvc 0.52.6",
3741 | "windows_x86_64_gnu 0.52.6",
3742 | "windows_x86_64_gnullvm 0.52.6",
3743 | "windows_x86_64_msvc 0.52.6",
3744 | ]
3745 |
3746 | [[package]]
3747 | name = "windows_aarch64_gnullvm"
3748 | version = "0.48.5"
3749 | source = "registry+https://github.com/rust-lang/crates.io-index"
3750 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
3751 |
3752 | [[package]]
3753 | name = "windows_aarch64_gnullvm"
3754 | version = "0.52.6"
3755 | source = "registry+https://github.com/rust-lang/crates.io-index"
3756 | checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
3757 |
3758 | [[package]]
3759 | name = "windows_aarch64_msvc"
3760 | version = "0.48.5"
3761 | source = "registry+https://github.com/rust-lang/crates.io-index"
3762 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
3763 |
3764 | [[package]]
3765 | name = "windows_aarch64_msvc"
3766 | version = "0.52.6"
3767 | source = "registry+https://github.com/rust-lang/crates.io-index"
3768 | checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
3769 |
3770 | [[package]]
3771 | name = "windows_i686_gnu"
3772 | version = "0.48.5"
3773 | source = "registry+https://github.com/rust-lang/crates.io-index"
3774 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
3775 |
3776 | [[package]]
3777 | name = "windows_i686_gnu"
3778 | version = "0.52.6"
3779 | source = "registry+https://github.com/rust-lang/crates.io-index"
3780 | checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
3781 |
3782 | [[package]]
3783 | name = "windows_i686_gnullvm"
3784 | version = "0.52.6"
3785 | source = "registry+https://github.com/rust-lang/crates.io-index"
3786 | checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
3787 |
3788 | [[package]]
3789 | name = "windows_i686_msvc"
3790 | version = "0.48.5"
3791 | source = "registry+https://github.com/rust-lang/crates.io-index"
3792 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
3793 |
3794 | [[package]]
3795 | name = "windows_i686_msvc"
3796 | version = "0.52.6"
3797 | source = "registry+https://github.com/rust-lang/crates.io-index"
3798 | checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
3799 |
3800 | [[package]]
3801 | name = "windows_x86_64_gnu"
3802 | version = "0.48.5"
3803 | source = "registry+https://github.com/rust-lang/crates.io-index"
3804 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
3805 |
3806 | [[package]]
3807 | name = "windows_x86_64_gnu"
3808 | version = "0.52.6"
3809 | source = "registry+https://github.com/rust-lang/crates.io-index"
3810 | checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
3811 |
3812 | [[package]]
3813 | name = "windows_x86_64_gnullvm"
3814 | version = "0.48.5"
3815 | source = "registry+https://github.com/rust-lang/crates.io-index"
3816 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
3817 |
3818 | [[package]]
3819 | name = "windows_x86_64_gnullvm"
3820 | version = "0.52.6"
3821 | source = "registry+https://github.com/rust-lang/crates.io-index"
3822 | checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
3823 |
3824 | [[package]]
3825 | name = "windows_x86_64_msvc"
3826 | version = "0.48.5"
3827 | source = "registry+https://github.com/rust-lang/crates.io-index"
3828 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
3829 |
3830 | [[package]]
3831 | name = "windows_x86_64_msvc"
3832 | version = "0.52.6"
3833 | source = "registry+https://github.com/rust-lang/crates.io-index"
3834 | checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
3835 |
3836 | [[package]]
3837 | name = "x11rb"
3838 | version = "0.13.1"
3839 | source = "registry+https://github.com/rust-lang/crates.io-index"
3840 | checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12"
3841 | dependencies = [
3842 | "as-raw-xcb-connection",
3843 | "gethostname",
3844 | "libc",
3845 | "libloading",
3846 | "once_cell",
3847 | "rustix",
3848 | "x11rb-protocol",
3849 | ]
3850 |
3851 | [[package]]
3852 | name = "x11rb-protocol"
3853 | version = "0.13.1"
3854 | source = "registry+https://github.com/rust-lang/crates.io-index"
3855 | checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d"
3856 |
3857 | [[package]]
3858 | name = "xcursor"
3859 | version = "0.3.8"
3860 | source = "registry+https://github.com/rust-lang/crates.io-index"
3861 | checksum = "0ef33da6b1660b4ddbfb3aef0ade110c8b8a781a3b6382fa5f2b5b040fd55f61"
3862 |
3863 | [[package]]
3864 | name = "xdg"
3865 | version = "2.5.2"
3866 | source = "registry+https://github.com/rust-lang/crates.io-index"
3867 | checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
3868 |
3869 | [[package]]
3870 | name = "xkbcommon"
3871 | version = "0.7.0"
3872 | source = "registry+https://github.com/rust-lang/crates.io-index"
3873 | checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e"
3874 | dependencies = [
3875 | "libc",
3876 | "memmap2 0.8.0",
3877 | "xkeysym",
3878 | ]
3879 |
3880 | [[package]]
3881 | name = "xkeysym"
3882 | version = "0.2.1"
3883 | source = "registry+https://github.com/rust-lang/crates.io-index"
3884 | checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56"
3885 | dependencies = [
3886 | "bytemuck",
3887 | ]
3888 |
3889 | [[package]]
3890 | name = "xml-rs"
3891 | version = "0.8.22"
3892 | source = "registry+https://github.com/rust-lang/crates.io-index"
3893 | checksum = "af4e2e2f7cba5a093896c1e150fbfe177d1883e7448200efb81d40b9d339ef26"
3894 |
3895 | [[package]]
3896 | name = "xmlwriter"
3897 | version = "0.1.0"
3898 | source = "registry+https://github.com/rust-lang/crates.io-index"
3899 | checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9"
3900 |
3901 | [[package]]
3902 | name = "yansi"
3903 | version = "1.0.1"
3904 | source = "registry+https://github.com/rust-lang/crates.io-index"
3905 | checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049"
3906 |
3907 | [[package]]
3908 | name = "yazi"
3909 | version = "0.1.6"
3910 | source = "registry+https://github.com/rust-lang/crates.io-index"
3911 | checksum = "c94451ac9513335b5e23d7a8a2b61a7102398b8cca5160829d313e84c9d98be1"
3912 |
3913 | [[package]]
3914 | name = "zeno"
3915 | version = "0.2.3"
3916 | source = "registry+https://github.com/rust-lang/crates.io-index"
3917 | checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697"
3918 |
3919 | [[package]]
3920 | name = "zerocopy"
3921 | version = "0.7.35"
3922 | source = "registry+https://github.com/rust-lang/crates.io-index"
3923 | checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
3924 | dependencies = [
3925 | "zerocopy-derive",
3926 | ]
3927 |
3928 | [[package]]
3929 | name = "zerocopy-derive"
3930 | version = "0.7.35"
3931 | source = "registry+https://github.com/rust-lang/crates.io-index"
3932 | checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
3933 | dependencies = [
3934 | "proc-macro2",
3935 | "quote",
3936 | "syn 2.0.85",
3937 | ]
3938 |
3939 | [[package]]
3940 | name = "zune-inflate"
3941 | version = "0.2.54"
3942 | source = "registry+https://github.com/rust-lang/crates.io-index"
3943 | checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02"
3944 | dependencies = [
3945 | "simd-adler32",
3946 | ]
3947 |
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway-daemon/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "cosmic-ext-sway-daemon"
3 | version = "0.1.0"
4 | edition = "2021"
5 | authors = ["Victoria Brekenfeld "]
6 | license = "GPL-3.0-only"
7 |
8 | [dependencies]
9 | anyhow = "1.0.91"
10 | calloop = "0.14.1"
11 | libcosmic = { git = "https://github.com/pop-os/libcosmic.git" }
12 | cosmic-config = { git = "https://github.com/pop-os/libcosmic.git" }
13 | cosmic-theme = { git = "https://github.com/pop-os/libcosmic.git" }
14 | swayipc = "3.0.2"
15 |
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway-daemon/README.md:
--------------------------------------------------------------------------------
1 | # cosmic-ext-sway-daemon
2 |
3 | Little daemon to sync cosmic-config settings over to a running sway instance.
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway-daemon/justfile:
--------------------------------------------------------------------------------
1 | name := 'cosmic-ext-sway-daemon'
2 | rootdir := ''
3 | prefix := '/usr'
4 |
5 | base-dir := absolute_path(clean(rootdir / prefix))
6 |
7 | cargo-target-dir := env('CARGO_TARGET_DIR', 'target')
8 | bin-src := cargo-target-dir / 'release' / name
9 | bin-dst := base-dir / 'bin' / name
10 |
11 | # Default recipe which runs `just build-release`
12 | default: build-release
13 |
14 | # Runs `cargo clean`
15 | clean:
16 | cargo clean
17 |
18 | # `cargo clean` and removes vendored dependencies
19 | clean-dist: clean
20 | rm -rf .cargo vendor vendor.tar
21 |
22 | # Compiles with debug profile
23 | build-debug *args:
24 | cargo build {{args}}
25 |
26 | # Compiles with release profile
27 | build-release *args: (build-debug '--release' args)
28 |
29 | # Compiles release profile with vendored dependencies
30 | build-vendored *args: vendor-extract (build-release '--frozen --offline' args)
31 |
32 | # Runs a clippy check
33 | check *args:
34 | cargo clippy --all-features {{args}} -- -W clippy::pedantic
35 |
36 | # Runs a clippy check with JSON message format
37 | check-json: (check '--message-format=json')
38 |
39 | # Installs files
40 | install:
41 | install -Dm0755 {{bin-src}} {{bin-dst}}
42 |
43 | # Uninstalls installed files
44 | uninstall:
45 | rm {{bin-dst}}
46 |
47 | # Vendor dependencies locally
48 | vendor:
49 | mkdir -p .cargo
50 | cargo vendor --sync Cargo.toml \
51 | | head -n -1 > .cargo/config
52 | echo 'directory = "vendor"' >> .cargo/config
53 | tar pcf vendor.tar vendor
54 | rm -rf vendor
55 |
56 | # Extracts vendored dependencies
57 | vendor-extract:
58 | #!/usr/bin/env sh
59 | rm -rf vendor
60 | tar pxf vendor.tar
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway-daemon/src/main.rs:
--------------------------------------------------------------------------------
1 | use anyhow::Context;
2 | use cosmic_theme::{Theme, ThemeMode};
3 |
4 | pub struct State {
5 | ipc: swayipc::Connection,
6 | theme: cosmic::theme::Theme,
7 | }
8 |
9 | fn update_theme(ipc: &mut swayipc::Connection, theme: &Theme) {
10 | let active_hint = if let Some(hint) = theme.window_hint {
11 | hint.into()
12 | } else {
13 | theme.accent_color()
14 | };
15 | let _ = ipc.run_command(format!(
16 | "client.focused #{:X?}{:X?}{:X?} #{:02X?}{:02X?}{:02X?} #{:02X?}{:02X?}{:02X?}",
17 | (active_hint.red * 255.0).round() as u32,
18 | (active_hint.green * 255.0).round() as u32,
19 | (active_hint.blue * 255.0).round() as u32,
20 | (theme.accent_color().red * 255.0).round() as u32,
21 | (theme.accent_color().green * 255.0).round() as u32,
22 | (theme.accent_color().blue * 255.0).round() as u32,
23 | (theme.on_accent_color().red * 255.0).round() as u32,
24 | (theme.on_accent_color().green * 255.0).round() as u32,
25 | (theme.on_accent_color().blue * 255.0).round() as u32,
26 | ));
27 | let _ = ipc.run_command(format!("border normal {}", theme.active_hint));
28 | let _ = ipc.run_command(format!("default_border normal {}", theme.active_hint));
29 | let _ = ipc.run_command(format!("gaps outer all set {}", theme.gaps.0));
30 | let _ = ipc.run_command(format!("gaps inner all set {}", theme.gaps.1));
31 | }
32 |
33 | fn main() -> anyhow::Result<()> {
34 | let mut evlh = calloop::EventLoop::<'static, State>::try_new()
35 | .context("Failed to create event loop")?;
36 | let (ping_tx, ping_rx) = calloop::ping::make_ping().context("Failed to create ping source")?;
37 |
38 | let config_mode_helper = ThemeMode::config()?;
39 | let config_dark_helper = Theme::dark_config()?;
40 | let config_light_helper = Theme::light_config()?;
41 |
42 | evlh.handle().insert_source(ping_rx, move |_, _, state| {
43 | let new_theme = cosmic::theme::system_preference();
44 |
45 | if state.theme.theme_type != new_theme.theme_type {
46 | state.theme = new_theme;
47 | update_theme(&mut state.ipc, state.theme.cosmic());
48 | }
49 | }).context("Failed to setup ping source")?;
50 |
51 | let ping_tx_clone = ping_tx.clone();
52 | let theme_watcher_mode = config_mode_helper.watch(move |_, _keys| {
53 | ping_tx_clone.ping();
54 | })?;
55 | let ping_tx_clone = ping_tx.clone();
56 | let theme_watcher_light = config_light_helper.watch(move |_, _keys| {
57 | ping_tx_clone.ping();
58 | })?;
59 | let theme_watcher_dark = config_dark_helper.watch(move |_, _keys| {
60 | ping_tx.ping();
61 | })?;
62 |
63 | std::mem::forget(theme_watcher_dark);
64 | std::mem::forget(theme_watcher_light);
65 | std::mem::forget(theme_watcher_mode);
66 |
67 | let mut ipc = swayipc::Connection::new().context("Failed to connect to sway")?;
68 | let theme = cosmic::theme::system_preference();
69 | update_theme(&mut ipc, theme.cosmic());
70 | let mut state = State {
71 | ipc,
72 | theme,
73 | };
74 |
75 | evlh.run(None, &mut state, |_| {}).context("Event loop broke")?;
76 |
77 | Ok(())
78 | }
79 |
--------------------------------------------------------------------------------
/sway/cosmic-ext-sway.desktop:
--------------------------------------------------------------------------------
1 | [Desktop Entry]
2 | Name=COSMIC on sway
3 | Comment=This session logs you into the COSMIC desktop on sway
4 | Exec=/usr/bin/start-cosmic-ext-sway
5 | Type=Application
6 | DesktopNames=sway
7 |
--------------------------------------------------------------------------------
/sway/start-cosmic-ext-sway:
--------------------------------------------------------------------------------
1 | #!/usr/bin/bash
2 |
3 | set -e
4 |
5 | # From: https://people.debian.org/~mpitt/systemd.conf-2016-graphical-session.pdf
6 |
7 | if command -v systemctl >/dev/null; then
8 | # robustness: if the previous graphical session left some failed units,
9 | # reset them so that they don't break this startup
10 | for unit in $(systemctl --user --no-legend --state=failed --plain list-units | cut -f1 -d' '); do
11 | partof="$(systemctl --user show -p PartOf --value "$unit")"
12 | for target in cosmic-session.target graphical-session.target; do
13 | if [ "$partof" = "$target" ]; then
14 | systemctl --user reset-failed "$unit"
15 | break
16 | fi
17 | done
18 | done
19 | fi
20 |
21 | # use the user's preferred shell to acquire environment variables
22 | # see: https://github.com/pop-os/cosmic-session/issues/23
23 | if [ -n "${SHELL}" ]; then
24 | # --in-login-shell: our flag to indicate that we don't need to recurse any further
25 | if [ "${1}" != "--in-login-shell" ]; then
26 | # `exec -l`: like `login`, prefixes $SHELL with a hyphen to start a login shell
27 | exec bash -c "exec -l '${SHELL}' -c '${0} --in-login-shell'"
28 | fi
29 | fi
30 |
31 | export XDG_CURRENT_DESKTOP="${XDG_CURRENT_DESKTOP:=sway}"
32 | export XDG_SESSION_TYPE="${XDG_SESSION_TYPE:=wayland}"
33 | export XCURSOR_THEME="${XCURSOR_THEME:=Cosmic}"
34 | export _JAVA_AWT_WM_NONREPARENTING=1
35 | export GDK_BACKEND=wayland,x11
36 | export MOZ_ENABLE_WAYLAND=1
37 | export QT_QPA_PLATFORM="wayland;xcb"
38 | export QT_AUTO_SCREEN_SCALE_FACTOR=1
39 | export QT_ENABLE_HIGHDPI_SCALING=1
40 |
41 | if command -v systemctl >/dev/null; then
42 | # set environment variables for new units started by user service manager
43 | systemctl --user import-environment XDG_SESSION_TYPE XDG_CURRENT_DESKTOP
44 | fi
45 | # Run cosmic-session
46 | if [[ -z "${DBUS_SESSION_BUS_ADDRESS}" ]]; then
47 | exec /usr/bin/dbus-run-session -- /usr/bin/cosmic-session sway -c /etc/sway/config-cosmic
48 | else
49 | exec /usr/bin/cosmic-session sway -c /etc/sway/config-cosmic
50 | fi
51 |
--------------------------------------------------------------------------------