Git Product home page Git Product logo

fractalart's Introduction

Fractal Art

This program generates colorful Wallpapers.

Usage

These are optional

It automatically detects your screen resolution.

Command Argument Description Default
-w, --width Integer sets width of the generated image Screen Width
-h, --height Integer sets height of the generated image Screen Height
-f, --file Path specify filename and path ~/.fractalart/wallpaper.bmp
-n, --no-bg don't set the wallpaper

Installation

Arch Linux

This package is available in the AUR as fractalart-git.

Building manually

Make sure you have stack and zlib installed.

Then do:

$ git clone https://github.com/TomSmeets/FractalArt.git
$ cd FractalArt
$ stack install

Your executable will copied to your local-bin path. For Unix systems this path is $HOME/.local/bin and on Windows %APPDATA%\local\bin.

Windows

If you want a new wallpaper each time you start your PC, put the executable into a startup folder.

For Windows 7 this folder is located at: %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup

but can also be found in: Start Menu -> All Programs

Linux

On Linux you have to set your wallpaper path to: ~/.fractalart/wallpaper.bmp

And somehow run the program on startup.

Gnome

You can add ~/.cabal/bin to your path

or move dist/build/FractalArt/FractalArt inside /usr/local/bin/

Create ~/.config/autostart/fractalart.desktop

[Desktop Entry]
Name=FractalArt
GenericName=Fractal Art
Comment=Generate Wallpapers
Exec=FractalArt
Terminal=false
Type=Application
Categories=Graphics

This will execute the command FractalArt after login.

To set your wallpaper path run:

gsettings set org.gnome.desktop.background picture-uri file://$HOME/.fractalart/wallpaper.bmp

Example images

Image0

Image1

fractalart's People

Contributors

codebje avatar theblazehen avatar tomsmeets avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

fractalart's Issues

Compilation on macOS broken?

I've tried to get FractalArt to compile on darwin with nix using the following override:

  FractalArt = overrideCabal super.FractalArt (drv: {
    executableSystemDepends = [
      darwin.libobjc
    ] ++ (drv.librarySystemDepends or []);
    executableFrameworkDepends = [
      darwin.apple_sdk.frameworks.AppKit
    ] ++ (drv.executableFrameworkDepends or []);
  });

Which results in the following build log:

setupCompilerEnvironmentPhase
Build with /nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4.
unpacking sources
unpacking source archive /nix/store/hhvy3bx21bgiymw44c7jaxgmwqd7sw8p-FractalArt-0.2.0.3.tar.gz
source root is FractalArt-0.2.0.3
setting SOURCE_DATE_EPOCH to timestamp 1462540030 of file FractalArt-0.2.0.3/FractalArt.cabal
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/private/tmp/nix-build-FractalArt-0.2.0.3.drv-0/setup-package.conf.d -j1 -threaded -rtsopts
[1 of 1] Compiling Main             ( Setup.hs, /private/tmp/nix-build-FractalArt-0.2.0.3.drv-0/Main.o )
Linking Setup ...
configuring
configureFlags: --verbose --prefix=/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3 --libdir=$prefix/lib/$compiler --libsubdir=$abi/$libname --docdir=/nix/store/88i0j3l35cqc7970lvp8kynsbsbqbpim-FractalArt-0.2.0.3-doc/share/doc/FractalArt-0.2.0.3 --with-gcc=clang --package-db=/private/tmp/nix-build-FractalArt-0.2.0.3.drv-0/package.conf.d --ghc-options=-j1 --disable-split-objs --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --extra-include-dirs=/nix/store/mw8cdz4nbq523xa33zyamsylci73cd63-libcxx-7.1.0-dev/include --extra-lib-dirs=/nix/store/64d69jqbz4s8ziqbpam41sd70w338ars-libcxx-7.1.0/lib --extra-include-dirs=/nix/store/i8mm0yixkl8c10a4kmwz68zp99cb3nrs-libcxxabi-7.1.0-dev/include --extra-lib-dirs=/nix/store/6q1rhqvyzxb3j5pb1h4qxsa0hh1i45wv-libcxxabi-7.1.0/lib --extra-include-dirs=/nix/store/xcix5ygyy05z2q9v6901xlm4ljw2yvs8-compiler-rt-libc-7.1.0-dev/include --extra-lib-dirs=/nix/store/pdd276ydvg3zvky684wp78q8zfjkc6d4-compiler-rt-libc-7.1.0/lib --extra-lib-dirs=/nix/store/kdydav4gqzd91qlpprnjascbs5hs8qmg-ncurses-6.2/lib --extra-lib-dirs=/nix/store/680v3dy36ghk5szlz07r2s54b8r119pi-libffi-3.3/lib --extra-lib-dirs=/nix/store/ka12q1srbmcrc5fm7kn5slgwnajppppc-gmp-6.2.1/lib --extra-include-dirs=/nix/store/pgnb12anscja205zycd2l994028vas2b-libiconv-50/include --extra-lib-dirs=/nix/store/pgnb12anscja205zycd2l994028vas2b-libiconv-50/lib --extra-include-dirs=/nix/store/08iavk27gxjf5kwpzisj9fqhbfqxg0r1-objc4-709.1/include --extra-lib-dirs=/nix/store/08iavk27gxjf5kwpzisj9fqhbfqxg0r1-objc4-709.1/lib --extra-framework-dirs=/nix/store/39y8lss2p8dlhqq0il46z2dpgmag17h4-apple-framework-AppKit/Library/Frameworks --extra-framework-dirs=/nix/store/w7nyyfn0n0nxn5pbr65sakcrckl1jv8k-apple-framework-ApplicationServices/Library/Frameworks --extra-framework-dirs=/nix/store/r2f98pgsb6vk53ha9cipq5yl64qcg5i2-apple-framework-CoreGraphics/Library/Frameworks --extra-framework-dirs=/nix/store/5a8mq3rrryr8c3zii078qg7p7rp41xdg-apple-framework-Accelerate/Library/Frameworks --extra-framework-dirs=/nix/store/cghxll8lpzg7x0x7nhzyrqdk4q8xhiwz-apple-framework-CoreWLAN/Library/Frameworks --extra-framework-dirs=/nix/store/dn63dxzz06k8g39lnvankk5schq8b97v-apple-framework-SecurityFoundation/Library/Frameworks --extra-framework-dirs=/nix/store/dvs74mhgp5kgk5v2is05sizgwr9p3bb7-apple-framework-IOBluetooth/Library/Frameworks --extra-framework-dirs=/nix/store/8pwz6jq4zpqlzsz0q0xwz69hlsypyyvq-apple-framework-CoreBluetooth/Library/Frameworks --extra-framework-dirs=/nix/store/yy952p18g4hvkgwd3hh8c4rql8ic5bwk-apple-framework-IOKit/Library/Frameworks --extra-framework-dirs=/nix/store/yy952p18g4hvkgwd3hh8c4rql8ic5bwk-apple-framework-IOKit/Library/Frameworks --extra-framework-dirs=/nix/store/hjx5rb2n7l730b2qxwbh3bn875qqj1x7-apple-framework-IOSurface/Library/Frameworks --extra-include-dirs=/nix/store/q7awcbl6bkn34glqalr02gkid537ky0f-apple-lib-xpc/include --extra-framework-dirs=/nix/store/1cl9r959bj5pz9y4d6dzszch5yadq3vg-apple-framework-SystemConfiguration/Library/Frameworks --extra-framework-dirs=/nix/store/293i28pj9jswm0bgx7qdnbpkckz72kwb-apple-framework-Security/Library/Frameworks --extra-framework-dirs=/nix/store/9sfxgkvasbzsl6ny0i9m12ipq0qccxl9-apple-framework-CoreServices/Library/Frameworks --extra-framework-dirs=/nix/store/svnhbzykd9wfglyc8jzkc7683pyhx8ka-apple-framework-CFNetwork/Library/Frameworks --extra-framework-dirs=/nix/store/m17pjjxfq8gx9anyqbyw3v72zzaajqqr-apple-framework-CoreAudio/Library/Frameworks --extra-framework-dirs=/nix/store/hbk6lpggwx5v1am7r0nwj14w8rr6xki0-apple-framework-CoreData/Library/Frameworks --extra-framework-dirs=/nix/store/f9cchxc5hkk9p4n6y45cw4f3nf3w3va1-apple-framework-CoreFoundation/Library/Frameworks --extra-framework-dirs=/nix/store/s7166g2g4ay8zij3ih08xw25hwmhw13f-apple-framework-DiskArbitration/Library/Frameworks --extra-framework-dirs=/nix/store/wkxjczcm6h9gppa6mc097jm1rza4a0fz-apple-framework-NetFS/Library/Frameworks --extra-framework-dirs=/nix/store/nr0zr4wdd1a5w4rqy2908kgn9j1vlcm8-apple-framework-OpenDirectory/Library/Frameworks --extra-framework-dirs=/nix/store/6wjm2ml2sq0fwsw954mj8q5h7yrhhxb6-apple-framework-ServiceManagement/Library/Frameworks --extra-framework-dirs=/nix/store/57hx4c6dv3vd0g2gjf9gqzld1fr4ncm2-apple-framework-CoreText/Library/Frameworks --extra-framework-dirs=/nix/store/bgq90w547d89zy496kyisckyx3y42cly-apple-framework-ImageIO/Library/Frameworks --extra-framework-dirs=/nix/store/pfj4xw40bgfjxr014ab4sj50615n2jw1-apple-framework-AudioToolbox/Library/Frameworks --extra-framework-dirs=/nix/store/zwha875pf1mah7lb52qxly4nf5d1gpmk-apple-framework-CoreMIDI/Library/Frameworks --extra-framework-dirs=/nix/store/xpzbd9lkkl3152xs8pgp72w07nvsjaa1-apple-framework-AudioUnit/Library/Frameworks --extra-framework-dirs=/nix/store/4k7hfca13xys2gckrsf96y8v4ln5w04c-apple-framework-Carbon/Library/Frameworks --extra-framework-dirs=/nix/store/b73xlnighh544ah15qgpn2id95ibskfc-apple-framework-Foundation/Library/Frameworks --extra-include-dirs=/nix/store/08iavk27gxjf5kwpzisj9fqhbfqxg0r1-objc4-709.1/include --extra-lib-dirs=/nix/store/08iavk27gxjf5kwpzisj9fqhbfqxg0r1-objc4-709.1/lib --extra-framework-dirs=/nix/store/fpga8if76brxvgn30z06c8haa60rnmlb-apple-framework-QuartzCore/Library/Frameworks --extra-framework-dirs=/nix/store/y7bmnccssmbxqz559rqqnb9ippd4p5rw-apple-framework-CoreImage/Library/Frameworks --extra-framework-dirs=/nix/store/sfvln72zl1wk9d8lz9l29addvzdgi4a7-apple-framework-CoreVideo/Library/Frameworks --extra-framework-dirs=/nix/store/48b91qzw4wwm851il6b0mqvc6c04xp65-apple-framework-OpenGL/Library/Frameworks --extra-framework-dirs=/nix/store/7fq6iy6xzygy0m94krccdgi29iz3dpv1-apple-framework-Metal/Library/Frameworks --extra-framework-dirs=/nix/store/pa4zkrwmswyiz71q9a8mhf6i9kpwawdi-apple-framework-OpenCL/Library/Frameworks --extra-framework-dirs=/nix/store/mlj2ij9gqrk1h7y9ixsfn4b1b5dqvlap-apple-framework-UIFoundation/Library/Frameworks --extra-include-dirs=/nix/store/3qzl4kq8yi6vwcrsff2s27v67j8ysnp6-libX11-1.7.0-dev/include --extra-lib-dirs=/nix/store/3qzl4kq8yi6vwcrsff2s27v67j8ysnp6-libX11-1.7.0-dev/lib --extra-include-dirs=/nix/store/gyz5pnynjsh1gj13ib6qrfwvjii3prw1-xorgproto-2021.3/include --extra-include-dirs=/nix/store/spb7wn7kd6j3a5mnv6b8b02xzf10cim2-libxcb-1.14-dev/include --extra-lib-dirs=/nix/store/spb7wn7kd6j3a5mnv6b8b02xzf10cim2-libxcb-1.14-dev/lib --extra-lib-dirs=/nix/store/mb6xzkbwamq51lbc9swxwbv7zdgnvzp8-libxcb-1.14/lib --extra-lib-dirs=/nix/store/77dwv9vvxxy2nksb3gy6wb0kq6z3v97x-libX11-1.7.0/lib --extra-framework-dirs=/nix/store/f7f3gz636cqxkav7cy1nlldkwv2b22n1-swift-corefoundation/Library/Frameworks
Using Parsec parser
Configuring FractalArt-0.2.0.3...
Dependency JuicyPixels -any: using JuicyPixels-3.3.5
Dependency base >4 && <5: using base-4.14.1.0
Dependency directory -any: using directory-1.3.6.0
Dependency filepath -any: using filepath-1.4.2.1
Dependency mwc-random -any: using mwc-random-0.14.0.0
Dependency primitive -any: using primitive-0.7.1.0
Dependency random -any: using random-1.2.0
Dependency vector -any: using vector-0.12.3.0
Source component graph: component exe:FractalArt
Configured component graph:
    component FractalArt-0.2.0.3-5FQHmKvRZTs9LKdFPKk9aZ-FractalArt
        include JuicyPixels-3.3.5-LgFab8Qpa6TC01PG99Wtwj
        include base-4.14.1.0
        include directory-1.3.6.0
        include filepath-1.4.2.1
        include mwc-random-0.14.0.0-9StmDrCPrGJExSaB8A4gFD
        include primitive-0.7.1.0-Jxsyd70oUttYiCXCa0HqV
        include random-1.2.0-6zIdUIrmHInBiqbyqpDYsu
        include vector-0.12.3.0-GzQsO3hyEsQ1m59KXdGHEQ
Linked component graph:
    unit FractalArt-0.2.0.3-5FQHmKvRZTs9LKdFPKk9aZ-FractalArt
        include JuicyPixels-3.3.5-LgFab8Qpa6TC01PG99Wtwj
        include base-4.14.1.0
        include directory-1.3.6.0
        include filepath-1.4.2.1
        include mwc-random-0.14.0.0-9StmDrCPrGJExSaB8A4gFD
        include primitive-0.7.1.0-Jxsyd70oUttYiCXCa0HqV
        include random-1.2.0-6zIdUIrmHInBiqbyqpDYsu
        include vector-0.12.3.0-GzQsO3hyEsQ1m59KXdGHEQ
Ready component graph:
    definite FractalArt-0.2.0.3-5FQHmKvRZTs9LKdFPKk9aZ-FractalArt
        depends JuicyPixels-3.3.5-LgFab8Qpa6TC01PG99Wtwj
        depends base-4.14.1.0
        depends directory-1.3.6.0
        depends filepath-1.4.2.1
        depends mwc-random-0.14.0.0-9StmDrCPrGJExSaB8A4gFD
        depends primitive-0.7.1.0-Jxsyd70oUttYiCXCa0HqV
        depends random-1.2.0-6zIdUIrmHInBiqbyqpDYsu
        depends vector-0.12.3.0-GzQsO3hyEsQ1m59KXdGHEQ
Using Cabal-3.2.1.0 compiled by ghc-8.10
Using compiler: ghc-8.10.4
Using install prefix:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3
Executables installed in:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3/bin
Libraries installed in:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3/lib/ghc-8.10.4/x86_64-osx-ghc-8.10.4/FractalArt-0.2.0.3
Dynamic Libraries installed in:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3/lib/ghc-8.10.4/x86_64-osx-ghc-8.10.4
Private executables installed in:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3/libexec/x86_64-osx-ghc-8.10.4/FractalArt-0.2.0.3
Data files installed in:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3/share/x86_64-osx-ghc-8.10.4/FractalArt-0.2.0.3
Documentation installed in:
/nix/store/88i0j3l35cqc7970lvp8kynsbsbqbpim-FractalArt-0.2.0.3-doc/share/doc/FractalArt-0.2.0.3
Configuration files installed in:
/nix/store/wxxxrv18ygsh821ml2kb5ym8vzkxny8g-FractalArt-0.2.0.3/etc
No alex found
Using ar found on system at:
/nix/store/9xawf09c90761xkxv8r1b55ja46x4wr3-cctools-binutils-darwin-949.0.1/bin/ar
No c2hs found
No cpphs found
No doctest found
Using gcc version 4.2.1 given by user at:
/nix/store/d4p8v32sivk3zj3jklx3irswbwwigxcd-clang-wrapper-7.1.0/bin/clang
Using ghc version 8.10.4 found on system at:
/nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4/bin/ghc
Using ghc-pkg version 8.10.4 found on system at:
/nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4/bin/ghc-pkg
No ghcjs found
No ghcjs-pkg found
No greencard found
Using haddock version 2.24.0 found on system at:
/nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4/bin/haddock
No happy found
Using haskell-suite found on system at: haskell-suite-dummy-location
Using haskell-suite-pkg found on system at: haskell-suite-pkg-dummy-location
No hmake found
Using hpc version 0.68 found on system at:
/nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4/bin/hpc
Using hsc2hs version 0.68.7 found on system at:
/nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4/bin/hsc2hs
No hscolour found
No jhc found
Using ld found on system at:
/nix/store/7qk9mqi411ip2jh10d1bbj7x7mgrfksg-cctools-binutils-darwin-wrapper-949.0.1/bin/ld
No pkg-config found
Using runghc version 8.10.4 found on system at:
/nix/store/66sk6q7j0gd3v83ixraisd25mzhi3l0c-ghc-8.10.4/bin/runghc
Using strip found on system at:
/nix/store/9xawf09c90761xkxv8r1b55ja46x4wr3-cctools-binutils-darwin-949.0.1/bin/strip
Using tar found on system at:
/nix/store/y215y67kv3z408mdja2fy3xkk0maqhx3-gnutar-1.34/bin/tar
No uhc found
building
Preprocessing executable 'FractalArt' for FractalArt-0.2.0.3..
Building executable 'FractalArt' for FractalArt-0.2.0.3..
[1 of 3] Compiling FractalArt.ForeignFunctions ( src/FractalArt/ForeignFunctions.hs, dist/build/FractalArt/FractalArt-tmp/FractalArt/ForeignFunctions.o )
ld: warning: /nix/store/pgnb12anscja205zycd2l994028vas2b-libiconv-50/lib/libiconv.dylib, ignoring unexpected dylib file
ld: warning: /nix/store/f9cchxc5hkk9p4n6y45cw4f3nf3w3va1-apple-framework-CoreFoundation/Library/Frameworks/CoreFoundation.framework/CoreFoundation.tbd, ignoring unexpected dylib text stub file
[2 of 3] Compiling FractalArt.SimpleCommandParser ( src/FractalArt/SimpleCommandParser.hs, dist/build/FractalArt/FractalArt-tmp/FractalArt/SimpleCommandParser.o )
[3 of 3] Compiling Main             ( src/Main.hs, dist/build/FractalArt/FractalArt-tmp/Main.o )

cbits/wallpaper.m:3:9: error:
     fatal error: module 'AppKit' not found
  |
3 | @import AppKit;
  |         ^
@import AppKit;
 ~~~~~~~^~~~~~
1 error generated.
`cc' failed in phase `C Compiler'. (Exit code: 1)
builder for '/nix/store/mm01r7j2hx1pr085jwjnxn1dqz5w0q40-FractalArt-0.2.0.3.drv' failed with exit code 1

adjusting "color temperature" of generated images

hi! I've used FractalArt to make some desktop background images and love them during the daytime. at nighttime, though, I find them quite bright and usually switch to a different image.

can you imagine an easy way to programmatically alter the temperature of the image? perhaps another command line option which is fed down to the pixel generator (not sure how all that works).

I would be up for PR'ing such a change if you could point me in the right direction (and provided it wouldn't require too much reworking of things!).

thanks ๐Ÿ™‚

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.