effitask
effitask copied to clipboard
does it work on windows?
does it work on windows?
I don’t know but it should work. The biggest challenge is probably the packaging (gtk is not windows friendly).
https://gtk-rs.org/docs-src/tutorial/cross
Another tutorial, for windows users: https://www.reddit.com/r/rust/comments/86kmhu/compiling_rust_windows_gtk_stepbystep/
I tried to compiling it for windows, but I am getting Could not find `BaseDirectories` in `xdg` error:
cargo run --target=x86_64-pc-windows-gnu
Compiling effitask v0.1.0 (file:///C:/Users/User/Desktop/effitask-1.3.0)
error[E0433]: failed to resolve. Could not find `BaseDirectories` in `xdg`
--> src\application.rs:343:1
|
343 | #[widget]
| ^^^^^^^^^ Could not find `BaseDirectories` in `xdg`
error[E0412]: cannot find type `BaseDirectories` in module `xdg`
--> src\application.rs:67:17
|
67 | xdg: ::xdg::BaseDirectories,
| ^^^^^^^^^^^^^^^ not found in `xdg`
warning: unnecessary parentheses around function argument
--> src\application.rs:343:1
|
343 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
|
= note: #[warn(unused_parens)] on by default
warning: unnecessary parentheses around function argument
--> src\application.rs:343:1
|
343 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\widgets\task.rs:21:1
|
21 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
error: aborting due to 2 previous errors
Some errors occurred: E0412, E0433.
For more information about an error, try `rustc --explain E0412`.
error: Could not compile `effitask`.
To learn more, run the command again with --verbose.
run with --verbose
C:\Users\User\Desktop\effitask-1.3.0
λ cargo run --target=x86_64-pc-windows-gnu --verbose
Fresh pkg-config v0.3.11
Fresh bitflags v1.0.3
Fresh winapi v0.2.8
Fresh byteorder v1.2.3
Fresh futures v0.1.21
Fresh libc v0.2.42
Fresh unicode-xid v0.0.4
Fresh cfg-if v0.1.3
Fresh lazy_static v1.0.1
Fresh c_vec v1.2.1
Fresh slab v0.4.0
Fresh void v1.0.2
Fresh quote v0.3.15
Fresh ucd-util v0.1.1
Fresh lazy_static v0.2.11
Fresh utf8-ranges v1.0.0
Fresh bitflags v0.9.1
Fresh getopts v0.2.17
Fresh xdg v2.1.0
Fresh memchr v1.0.2
Fresh iovec v0.1.2
Fresh memchr v2.0.1
Fresh synom v0.11.3
Fresh log v0.4.2
Fresh unreachable v1.0.0
Fresh regex-syntax v0.5.6
Fresh winapi-x86_64-pc-windows-gnu v0.4.0
Fresh nom v3.2.1
Fresh bytes v0.4.8
Fresh aho-corasick v0.6.4
Fresh syn v0.11.11
Fresh num-traits v0.2.5
Fresh log v0.3.9
Fresh thread_local v0.3.5
Fresh pulldown-cmark v0.1.2
Fresh glib-sys v0.5.0
Fresh cairo-sys-rs v0.5.0
Fresh winapi v0.3.5
Fresh tokio-io v0.1.7
Fresh relm-gen-widget v0.11.0
Fresh num-integer v0.1.39
Fresh regex v0.2.11
Fresh gobject-sys v0.5.0
Fresh net2 v0.2.32
Fresh time v0.1.40
Fresh rand v0.4.2
Fresh relm-derive-common v0.11.0
Fresh env_logger v0.4.3
Fresh gio-sys v0.5.0
Fresh glib v0.4.1
Fresh pango-sys v0.5.0
Fresh atk-sys v0.5.0
Fresh futures-glib v0.3.2
Fresh chrono v0.4.3
Fresh relm-derive v0.11.0
Fresh relm-attributes v0.11.0
Fresh gdk-pixbuf-sys v0.5.0
Fresh gio v0.3.0
Fresh cairo-rs v0.3.0
Fresh pango v0.3.0
Fresh relm-core v0.11.0
Fresh todo-txt v0.8.0
Fresh gdk-pixbuf v0.3.0
Fresh gdk-sys v0.5.0
Fresh relm-state v0.11.0
Fresh gtk-sys v0.5.0
Fresh gdk v0.7.0
Fresh gtk v0.3.0
Fresh relm v0.11.0
Compiling effitask v0.1.0 (file:///C:/Users/User/Desktop/effitask-1.3.0)
Running `rustc --crate-name effitask src\main.rs --crate-type bin --emit=dep-info,link -C debuginfo=2 -C metadata=10bb40bdab1779f3 -C extra-filename=-10bb40bdab1779f3 --out-dir C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps --target x86_64-pc-windows-gnu -C incremental=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\incremental -L dependency=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps -L dependency=C:\Users\User\Desktop\effitask-1.3.0\target\debug\deps --extern cairo=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libcairo-69e3f6686cc8631e.rlib --extern chrono=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libchrono-4bf861685d03e849.rlib --extern gdk=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libgdk-87472d778ebae5f5.rlib --extern gdk_sys=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libgdk_sys-d7584c8e7b6ec885.rlib --extern glib=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libglib-07df524550006edb.rlib --extern gtk=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libgtk-c510b8b7a966e3e9.rlib --extern log=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\liblog-bd0c59373aa3b09b.rlib --extern pulldown_cmark=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libpulldown_cmark-54a197f3dcfa3d2a.rlib --extern rand=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\librand-7eec90eb843445ce.rlib --extern regex=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libregex-4aeb13ef0bb5ced8.rlib --extern relm_attributes=C:\Users\User\Desktop\effitask-1.3.0\target\debug\deps\relm_attributes-ec9e3f6cab3396f1.dll --extern relm=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\librelm-7e5f3d8adb2af51c.rlib --extern relm_derive=C:\Users\User\Desktop\effitask-1.3.0\target\debug\deps\relm_derive-8f579e7852a7bda8.dll --extern todo_txt=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libtodo_txt-deba0ee8dc1d1335.rlib --extern xdg=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libxdg-534adf0f886761ba.rlib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\Users\User\.cargo\registry\src\github.com-1ecc6299db9ec823\winapi-x86_64-pc-windows-gnu-0.4.0\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib`
error[E0433]: failed to resolve. Could not find `BaseDirectories` in `xdg`
--> src\application.rs:343:1
|
343 | #[widget]
| ^^^^^^^^^ Could not find `BaseDirectories` in `xdg`
error[E0412]: cannot find type `BaseDirectories` in module `xdg`
--> src\application.rs:67:17
|
67 | xdg: ::xdg::BaseDirectories,
| ^^^^^^^^^^^^^^^ not found in `xdg`
warning: unnecessary parentheses around function argument
--> src\application.rs:343:1
|
343 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
|
= note: #[warn(unused_parens)] on by default
warning: unnecessary parentheses around function argument
--> src\application.rs:343:1
|
343 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\edit.rs:136:1
|
136 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
warning: unnecessary parentheses around function argument
--> src\widgets\task.rs:21:1
|
21 | #[widget]
| ^^^^^^^^^ help: remove these parentheses
error: aborting due to 2 previous errors
Some errors occurred: E0412, E0433.
For more information about an error, try `rustc --explain E0412`.
error: Could not compile `effitask`.
Caused by:
process didn't exit successfully: `rustc --crate-name effitask src\main.rs --crate-type bin --emit=dep-info,link -C debuginfo=2 -C metadata=10bb40bdab1779f3 -C extra-filename=-10bb40bdab1779f3 --out-dir C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps --target x86_64-pc-windows-gnu -C incremental=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\incremental -L dependency=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps -L dependency=C:\Users\User\Desktop\effitask-1.3.0\target\debug\deps --extern cairo=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libcairo-69e3f6686cc8631e.rlib --extern chrono=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libchrono-4bf861685d03e849.rlib --extern gdk=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libgdk-87472d778ebae5f5.rlib --extern gdk_sys=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libgdk_sys-d7584c8e7b6ec885.rlib --extern glib=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libglib-07df524550006edb.rlib --extern gtk=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libgtk-c510b8b7a966e3e9.rlib --extern log=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\liblog-bd0c59373aa3b09b.rlib --extern pulldown_cmark=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libpulldown_cmark-54a197f3dcfa3d2a.rlib --extern rand=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\librand-7eec90eb843445ce.rlib --extern regex=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libregex-4aeb13ef0bb5ced8.rlib --extern relm_attributes=C:\Users\User\Desktop\effitask-1.3.0\target\debug\deps\relm_attributes-ec9e3f6cab3396f1.dll --extern relm=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\librelm-7e5f3d8adb2af51c.rlib --extern relm_derive=C:\Users\User\Desktop\effitask-1.3.0\target\debug\deps\relm_derive-8f579e7852a7bda8.dll --extern todo_txt=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libtodo_txt-deba0ee8dc1d1335.rlib --extern xdg=C:\Users\User\Desktop\effitask-1.3.0\target\x86_64-pc-windows-gnu\debug\deps\libxdg-534adf0f886761ba.rlib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\Users\User\.cargo\registry\src\github.com-1ecc6299db9ec823\winapi-x86_64-pc-windows-gnu-0.4.0\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib -L native=C:\msys64\mingw64\lib` (exit code: 101)
@JohnWang1023 Thank you :smiley:
The xdg crate is only available for unix OS. I need it to find resource files (images and stylesheets) in /usr/share/effitask
.
I’ll replace the xdg crate with directories, which is multi-platform.
Waiting for https://github.com/soc/directories-rs/issues/39
Is there any windows-build out there?
I got it working inside WSL2 on Windows