Code Monkey home page Code Monkey logo

devassistant-assistants-fedora's Introduction

devassistant-assistants-fedora's People

Contributors

bkabrda avatar hroncok avatar jwakely avatar msrb avatar phracek avatar tradej avatar xsuchy avatar

Watchers

 avatar  avatar  avatar  avatar

devassistant-assistants-fedora's Issues

JBOSS assistants

From the discussion with Vaclav Tunka it would be good to introduce
assistant which prepares the JBOSS environment on Fedora.

Vaclav Tunka should provide more details what steps are needed for
proper functionality

We would discuss about this.

prep/devassistant doesn't have a py3 option

Currently, running da prep devassistant installs dependencies only for Python 2 development. Python 3 flag (or Include also Python3 dependencies flag) should be included as well.

eclipse-rpm-editor dependency

The assistants/crt/c.yaml and assistants/crt/cpp.yaml files list eclipse-rpm-editor in dependencies_build

This means attempting to build an RPM using da will try to install the entire eclipse-cdt suite, openjdk, ant, hamcrest and dozens of other packages I don't want or need.

Is that really necessary just to build an RPM from a spec file for a project that is pure C or C++?

prep/custom should have better error handling

Most GitHub errors (bad publickey etc.) are not caught because the handling in this assistant is not present, and only the cd $dirname command on line 48 fails. This shouldn't be the case, and all errors from git should immediately be caught.

crt/php/lamp ignores the selected directory to install to

While the user is presented with the option to create the project in any directory they want (as usual with other assistants), the result is always put into ~/public_html/$basename.

Fixing this issue comprises of fixing both php/lamp.yaml, but also the apache_config.sh script it uses.

Duplication in man pages

manpages/da.1 and manpages/devassistant.1 are almost identical, but as far as I can tell edits have to be made to both and kept in sync.

The devassistant.1 file should be auto-generated from the other one.

.spec files should be modified to use user's name and current date

The files/crt/c/cdevelopmenttool.spec file and the C++ equivalent have this changelog:

* Fri Mar 15 2013 UserName
- first Version

When the project is created the date and name should be replaced with more meaningful values. On POSIX platforms the user's name can be obtained with pwd.getpwuid(posix.getuid()).pw_gecos

Allow user to review attached .devassistant file when cloning with prep/custom

Simply executing an attached assistant could be a security risk. I think the user should be required to explicitly affirm their willingness to execute the .devassistant script attached to the upstream project before the actual execution, possibly with the option to review the sources. Alternatively, we could perform some sanity checks.

DNF assistant

DevAssistant needs a YUM-equivalent DNF assistant to be able to run meaningfully under Python 3.

Create modify assistant for C language

This assistant has aim to include some libraries into C/C++ source codes without and user interaction.
Just enter library which you would like to add into project.

C/C++ assistant should not depend on vim

Vim is not needed to develop in C/C++. That's a fact. When I run da crt cpp foo it fetches vim. I consider it annoying as I wont use it.

  • Why is there a dependency on vim-enhanced and vim-X11?
  • Could you remove it?

Thanks

Reveal.js assistant

Hi. We could use a Reveal.js assistant as it is simple enough to make, and would be of a great benefit. Additionally, it could deploy to OpenShift's Reveal.js cartridge (requiring addition of OS helpers in the core, presumably).

C++ assistant creates bulk annoying content

Assistant should help me, not introduce more stuff to annoy me. C++ assistant creates some classes I won't use and README content to delete.

While this would be a good "How to code in C++" assistant, it is absolutely useless for new C++ projects. Filtering garbage form useful content is more time consuming than creating the project from scratch without DA.

  • Remove all example garbage
  • Keep the assistant useful and ready to use

I think that all this also covers the C assistant.

mod/github/create assistant should not fallback to ~

I think that when da-gui is run from the .desktop file, the assistant in %subj% should not fall back to ~ as the default path. The reason is that the use case:

Open DevAssistant from menu > create GitHub repo for a project stored in your ~

simply makes no sense at all. I believe the assistant should not launch unless a path is specified, much like it is the case with creator assistants' names.

However, I am not sure how much programming effort would go into this, so I am marking this as enhancement rather than a bug.

Project name allows illegal characters in Python

%subj, namely the dash. When you create a project with a dash in its name, it gets created properly. However, since manage.py imports from the directory whose name is the same, it fails due to dash being in the imported name.

I suggest DA either fail when illegal character is entered in the project name, or convert these characters to legal ones where necessary.

PHP/lamp fails when installed with pip

Since pip doesn't honour filesystem permissions when installing from tar (Issue pypa/pip#1146, fix not present e. g. in Fedora), the assistant in %subj% fails with Permission denied on the apache_config.sh source file.

python/gtk3 assistent does not work

On first run, it succeded, but the project directory is empty.
On second run, it fails with:

Creating GTK+ 3 project test3 in /tmp ...
cp -r /home/msuchy/projects/devassistant-assistants-fedora/files/crt/python/gtk3/. "test3"
On branch master
nothing to commit, working directory clean

C and C++ projects do not enable compiler warnings

Most of the fixes in issue #29 would have been found much sooner if the example makefiles enabled compiler warnings. It is very bad to give examples to beginners that don't turn on warnings.

The configure.ac files include this:

AM_INIT_AUTOMAKE([-Wall -Werror])

but it doesn't get into the final makefiles.

da-gui shows weird character when creating ruby project

da-gui shows weird character when creating ruby project
See the output:

    Resolving RPM dependencies ...
Creating Ruby on Rails project ruby in /tmp ...
rails new "ruby" --skip-bundle
�[1m�[32m      create�[0m
�[1m�[32m      create�[0m  README.rdoc
�[1m�[32m      create�[0m  Rakefile
�[1m�[32m      create�[0m  config.ru
�[1m�[32m      create�[0m  .gitignore
�[1m�[32m      create�[0m  Gemfile
�[1m�[32m      create�[0m  app
�[1m�[32m      create�[0m  app/assets/javascripts/application.js
�[1m�[32m      create�[0m  app/assets/stylesheets/application.css
�[1m�[32m      create�[0m  app/controllers/application_controller.rb
�[1m�[32m      create�[0m  app/helpers/application_helper.rb
�[1m�[32m      create�[0m  app/views/layouts/application.html.erb
�[1m�[32m      create�[0m  app/assets/images/.keep
�[1m�[32m      create�[0m  app/mailers/.keep
�[1m�[32m      create�[0m  app/models/.keep
�[1m�[32m      create�[0m  app/controllers/concerns/.keep
�[1m�[32m      create�[0m  app/models/concerns/.keep
�[1m�[32m      create�[0m  bin
�[1m�[32m      create�[0m  bin/bundle
�[1m�[32m      create�[0m  bin/rails
�[1m�[32m      create�[0m  bin/rake
�[1m�[32m      create�[0m  config
�[1m�[32m      create�[0m  config/routes.rb
�[1m�[32m      create�[0m  config/application.rb
�[1m�[32m      create�[0m  config/environment.rb
�[1m�[32m      create�[0m  config/environments
�[1m�[32m      create�[0m  config/environments/development.rb
�[1m�[32m      create�[0m  config/environments/production.rb
�[1m�[32m      create�[0m  config/environments/test.rb
�[1m�[32m      create�[0m  config/initializers
�[1m�[32m      create�[0m  config/initializers/backtrace_silencers.rb
�[1m�[32m      create�[0m  config/initializers/filter_parameter_logging.rb
�[1m�[32m      create�[0m  config/initializers/inflections.rb
�[1m�[32m      create�[0m  config/initializers/mime_types.rb
�[1m�[32m      create�[0m  config/initializers/secret_token.rb
�[1m�[32m      create�[0m  config/initializers/session_store.rb
�[1m�[32m      create�[0m  config/initializers/wrap_parameters.rb
�[1m�[32m      create�[0m  config/locales
�[1m�[32m      create�[0m  config/locales/en.yml
�[1m�[32m      create�[0m  config/boot.rb
�[1m�[32m      create�[0m  config/database.yml
�[1m�[32m      create�[0m  db
�[1m�[32m      create�[0m  db/seeds.rb
�[1m�[32m      create�[0m  lib
�[1m�[32m      create�[0m  lib/tasks
�[1m�[32m      create�[0m  lib/tasks/.keep
�[1m�[32m      create�[0m  lib/assets
�[1m�[32m      create�[0m  lib/assets/.keep
�[1m�[32m      create�[0m  log
�[1m�[32m      create�[0m  log/.keep
�[1m�[32m      create�[0m  public
�[1m�[32m      create�[0m  public/404.html
�[1m�[32m      create�[0m  public/422.html
�[1m�[32m      create�[0m  public/500.html
�[1m�[32m      create�[0m  public/favicon.ico
�[1m�[32m      create�[0m  public/robots.txt
�[1m�[32m      create�[0m  test/fixtures
�[1m�[32m      create�[0m  test/fixtures/.keep
�[1m�[32m      create�[0m  test/controllers
�[1m�[32m      create�[0m  test/controllers/.keep
�[1m�[32m      create�[0m  test/mailers
�[1m�[32m      create�[0m  test/mailers/.keep
�[1m�[32m      create�[0m  test/models
�[1m�[32m      create�[0m  test/models/.keep
�[1m�[32m      create�[0m  test/helpers
�[1m�[32m      create�[0m  test/helpers/.keep
�[1m�[32m      create�[0m  test/integration
�[1m�[32m      create�[0m  test/integration/.keep
�[1m�[32m      create�[0m  test/test_helper.rb
�[1m�[32m      create�[0m  tmp/cache
�[1m�[32m      create�[0m  tmp/cache/assets
�[1m�[32m      create�[0m  vendor/assets/javascripts
�[1m�[32m      create�[0m  vendor/assets/javascripts/.keep
�[1m�[32m      create�[0m  vendor/assets/stylesheets
�[1m�[32m      create�[0m  vendor/assets/stylesheets/.keep
Ruby on Rails project ruby in /tmp has been created.
To run the application use: rails s
For more information about Ruby on Rails project visit <u>http://rubyonrails.org</u>

root password needed to build RPMs from C and C++ projects

When using -b to build an RPM cpp.yaml unconditionally runs yum-buildep as root.

If all the BuildRequires packages are already installed this is unnecessary, but the user has to enter the root passwd or the build fails.

The user might not know the root password, and it isn't needed to run rpmbuild, so it should only be requested when there are missing packages. The BuildRequires can be queried with:

rpmspec -q --buildrequires foobar.spec

and each package can be checked for.

Incorrect check for dependencies in python/django assistant

Reproducer:

  1. Make sure python-django14 is installed and python-django is not installed.
  2. run python/django assitent

It fails with:

/bin/sh: django-admin: command not found

That is because python-django14 provides python-django, but does not provide /usr/bin/django-admin and instead provides /usr/bin/django14-admin

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.