├── .gitignore ├── 4shared └── content │ ├── contents │ ├── code │ │ ├── 4shared-icon.png │ │ └── 4shared.js │ └── images │ │ └── icon.png │ └── metadata.json ├── 8tracks └── content │ ├── contents │ ├── code │ │ ├── 8tracks-icon.png │ │ └── 8tracks.js │ └── images │ │ └── icon.png │ └── metadata.json ├── HACKING.md ├── README.md ├── admin ├── json2desktop.rb ├── makeaxe.rb └── spotify-synchrotron │ ├── linux │ └── create_synchrotron.rb │ ├── mac │ └── create_synchrotron.rb │ └── win │ └── create_synchrotron.rb ├── amazon └── content │ ├── contents │ ├── code │ │ ├── amazon.js │ │ └── config.ui │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── ampache └── content │ ├── contents │ ├── code │ │ ├── ampache-icon.png │ │ ├── ampache.js │ │ ├── ampache.png │ │ ├── config.ui │ │ ├── owncloud-icon.png │ │ └── owncloud.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── archive ├── README ├── dilandau │ └── content │ │ ├── contents │ │ ├── code │ │ │ ├── dilandau-icon.png │ │ │ └── dilandau.js │ │ └── images │ │ │ └── icon.png │ │ └── metadata.json ├── exfm │ └── content │ │ ├── contents │ │ ├── code │ │ │ ├── exfm-icon.png │ │ │ └── exfm.js │ │ └── images │ │ │ └── icon.png │ │ └── metadata.json ├── grooveshark │ └── content │ │ ├── contents │ │ ├── code │ │ │ ├── config.ui │ │ │ ├── grooveshark-icon.png │ │ │ ├── grooveshark.js │ │ │ ├── grooveshark.png │ │ │ └── grooveshark.svg │ │ └── images │ │ │ ├── icon.png │ │ │ ├── iconBackground.png │ │ │ └── iconWhite.png │ │ └── metadata.json ├── rdio-metadata │ └── content │ │ ├── contents │ │ ├── code │ │ │ ├── rdio-metadata.js │ │ │ └── rdio-metadata.png │ │ └── images │ │ │ ├── icon.png │ │ │ ├── iconBackground.png │ │ │ └── iconWhite.png │ │ └── metadata.json ├── rdio │ └── content │ │ ├── contents │ │ ├── code │ │ │ ├── rdio.js │ │ │ └── rdio.png │ │ └── images │ │ │ ├── icon.png │ │ │ ├── iconBackground.png │ │ │ └── iconWhite.png │ │ └── metadata.json └── spotify │ ├── BreakPad.cpp │ ├── BreakPad.h │ ├── CMakeLists.txt │ ├── PlaylistClosure.cpp │ ├── PlaylistClosure.h │ ├── appkey.h │ ├── audiohttpserver.cpp │ ├── audiohttpserver.h │ ├── breakpad │ ├── CMakeLists.txt │ ├── client │ │ ├── apple │ │ │ └── Framework │ │ │ │ └── BreakpadDefines.h │ │ ├── linux │ │ │ ├── android_link.h │ │ │ ├── android_ucontext.h │ │ │ ├── crash_generation │ │ │ │ ├── client_info.h │ │ │ │ ├── crash_generation_client.cc │ │ │ │ ├── crash_generation_client.h │ │ │ │ ├── crash_generation_server.cc │ │ │ │ └── crash_generation_server.h │ │ │ ├── data │ │ │ │ ├── linux-gate-amd.sym │ │ │ │ └── linux-gate-intel.sym │ │ │ ├── handler │ │ │ │ ├── exception_handler.cc │ │ │ │ ├── exception_handler.h │ │ │ │ └── exception_handler_unittest.cc │ │ │ ├── log │ │ │ │ ├── log.cc │ │ │ │ └── log.h │ │ │ ├── minidump_writer │ │ │ │ ├── directory_reader.h │ │ │ │ ├── directory_reader_unittest.cc │ │ │ │ ├── line_reader.h │ │ │ │ ├── line_reader_unittest.cc │ │ │ │ ├── linux_core_dumper.cc │ │ │ │ ├── linux_core_dumper.h │ │ │ │ ├── linux_core_dumper_unittest.cc │ │ │ │ ├── linux_dumper.cc │ │ │ │ ├── linux_dumper.h │ │ │ │ ├── linux_dumper_unittest_helper.cc │ │ │ │ ├── linux_ptrace_dumper.cc │ │ │ │ ├── linux_ptrace_dumper.h │ │ │ │ ├── linux_ptrace_dumper_unittest.cc │ │ │ │ ├── minidump_extension_linux.h │ │ │ │ ├── minidump_writer.cc │ │ │ │ ├── minidump_writer.h │ │ │ │ └── minidump_writer_unittest.cc │ │ │ └── sender │ │ │ │ └── google_crash_report_sender.cc │ │ ├── mac │ │ │ ├── Breakpad.xcodeproj │ │ │ │ └── project.pbxproj │ │ │ ├── Framework │ │ │ │ ├── Breakpad.h │ │ │ │ ├── Breakpad.mm │ │ │ │ ├── Breakpad_Prefix.pch │ │ │ │ ├── Info.plist │ │ │ │ ├── OnDemandServer.h │ │ │ │ └── OnDemandServer.mm │ │ │ ├── UnitTests-Info.plist │ │ │ ├── crash_generation │ │ │ │ ├── ConfigFile.h │ │ │ │ ├── ConfigFile.mm │ │ │ │ ├── Inspector.h │ │ │ │ ├── Inspector.mm │ │ │ │ ├── InspectorMain.mm │ │ │ │ ├── client_info.h │ │ │ │ ├── crash_generation_client.cc │ │ │ │ ├── crash_generation_client.h │ │ │ │ ├── crash_generation_server.cc │ │ │ │ └── crash_generation_server.h │ │ │ ├── handler │ │ │ │ ├── breakpad_nlist_64.cc │ │ │ │ ├── breakpad_nlist_64.h │ │ │ │ ├── dynamic_images.cc │ │ │ │ ├── dynamic_images.h │ │ │ │ ├── exception_handler.cc │ │ │ │ ├── exception_handler.h │ │ │ │ ├── mach_vm_compat.h │ │ │ │ ├── minidump_generator.cc │ │ │ │ ├── minidump_generator.h │ │ │ │ ├── minidump_test.xcodeproj │ │ │ │ │ └── project.pbxproj │ │ │ │ ├── minidump_tests32-Info.plist │ │ │ │ ├── minidump_tests64-Info.plist │ │ │ │ ├── obj-cTestCases-Info.plist │ │ │ │ ├── protected_memory_allocator.cc │ │ │ │ ├── protected_memory_allocator.h │ │ │ │ └── testcases │ │ │ │ │ ├── DynamicImagesTests.cc │ │ │ │ │ ├── DynamicImagesTests.h │ │ │ │ │ ├── breakpad_nlist_test.cc │ │ │ │ │ ├── breakpad_nlist_test.h │ │ │ │ │ ├── dwarftests.h │ │ │ │ │ ├── dwarftests.mm │ │ │ │ │ └── testdata │ │ │ │ │ ├── dump_syms_dwarf_data │ │ │ │ │ └── dump_syms_i386_breakpad.sym │ │ │ ├── sender │ │ │ │ ├── Breakpad.xib │ │ │ │ ├── English.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── ReporterIcon.graffle │ │ │ │ ├── crash_report_sender-Info.plist │ │ │ │ ├── crash_report_sender.h │ │ │ │ ├── crash_report_sender.icns │ │ │ │ ├── crash_report_sender.m │ │ │ │ ├── da.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── de.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── es.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── fr.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── goArrow.png │ │ │ │ ├── it.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── ja.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── nl.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── no.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── sl.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── sv.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── tr.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── Localizable.strings │ │ │ │ ├── uploader.h │ │ │ │ └── uploader.mm │ │ │ ├── testapp │ │ │ │ ├── Controller.h │ │ │ │ ├── Controller.m │ │ │ │ ├── English.lproj │ │ │ │ │ ├── InfoPlist.strings │ │ │ │ │ └── MainMenu.xib │ │ │ │ ├── Info.plist │ │ │ │ ├── TestClass.h │ │ │ │ ├── TestClass.mm │ │ │ │ ├── bomb.icns │ │ │ │ ├── crashInMain │ │ │ │ ├── crashduringload │ │ │ │ └── main.m │ │ │ └── tests │ │ │ │ ├── BreakpadFramework_Test.mm │ │ │ │ ├── SimpleStringDictionaryTest.h │ │ │ │ ├── SimpleStringDictionaryTest.mm │ │ │ │ ├── crash_generation_server_test.cc │ │ │ │ ├── exception_handler_test.cc │ │ │ │ ├── minidump_generator_test.cc │ │ │ │ ├── minidump_generator_test_helper.cc │ │ │ │ ├── spawn_child_process.h │ │ │ │ └── testlogging.h │ │ ├── minidump_file_writer-inl.h │ │ ├── minidump_file_writer.cc │ │ ├── minidump_file_writer.h │ │ ├── minidump_file_writer_unittest.cc │ │ ├── solaris │ │ │ └── handler │ │ │ │ ├── exception_handler.cc │ │ │ │ ├── exception_handler.h │ │ │ │ ├── exception_handler_test.cc │ │ │ │ ├── minidump_generator.cc │ │ │ │ ├── minidump_generator.h │ │ │ │ ├── minidump_test.cc │ │ │ │ ├── solaris_lwp.cc │ │ │ │ └── solaris_lwp.h │ │ └── windows │ │ │ ├── breakpad_client.gyp │ │ │ ├── build │ │ │ ├── common.gypi │ │ │ ├── external_code.gypi │ │ │ ├── internal │ │ │ │ ├── release_defaults.gypi │ │ │ │ ├── release_impl.gypi │ │ │ │ └── release_impl_official.gypi │ │ │ └── release.gypi │ │ │ ├── common │ │ │ ├── auto_critical_section.h │ │ │ └── ipc_protocol.h │ │ │ ├── crash_generation │ │ │ ├── ReadMe.txt │ │ │ ├── client_info.cc │ │ │ ├── client_info.h │ │ │ ├── crash_generation.gyp │ │ │ ├── crash_generation_client.cc │ │ │ ├── crash_generation_client.h │ │ │ ├── crash_generation_server.cc │ │ │ ├── crash_generation_server.h │ │ │ ├── minidump_generator.cc │ │ │ └── minidump_generator.h │ │ │ ├── handler │ │ │ ├── exception_handler.cc │ │ │ ├── exception_handler.gyp │ │ │ └── exception_handler.h │ │ │ ├── sender │ │ │ ├── crash_report_sender.cc │ │ │ ├── crash_report_sender.gyp │ │ │ └── crash_report_sender.h │ │ │ ├── tests │ │ │ └── crash_generation_app │ │ │ │ ├── abstract_class.cc │ │ │ │ ├── abstract_class.h │ │ │ │ ├── crash_generation_app.cc │ │ │ │ ├── crash_generation_app.gyp │ │ │ │ ├── crash_generation_app.h │ │ │ │ ├── crash_generation_app.ico │ │ │ │ ├── crash_generation_app.rc │ │ │ │ ├── resource.h │ │ │ │ └── small.ico │ │ │ └── unittests │ │ │ ├── client_tests.gyp │ │ │ ├── crash_generation_server_test.cc │ │ │ ├── dump_analysis.cc │ │ │ ├── dump_analysis.h │ │ │ ├── exception_handler_death_test.cc │ │ │ ├── exception_handler_test.cc │ │ │ ├── minidump_test.cc │ │ │ └── testing.gyp │ ├── common │ │ ├── basictypes.h │ │ ├── byte_cursor.h │ │ ├── byte_cursor_unittest.cc │ │ ├── convert_UTF.c │ │ ├── convert_UTF.h │ │ ├── dwarf │ │ │ ├── bytereader-inl.h │ │ │ ├── bytereader.cc │ │ │ ├── bytereader.h │ │ │ ├── bytereader_unittest.cc │ │ │ ├── cfi_assembler.cc │ │ │ ├── cfi_assembler.h │ │ │ ├── dwarf2diehandler.cc │ │ │ ├── dwarf2diehandler.h │ │ │ ├── dwarf2diehandler_unittest.cc │ │ │ ├── dwarf2enums.h │ │ │ ├── dwarf2reader.cc │ │ │ ├── dwarf2reader.h │ │ │ ├── dwarf2reader_cfi_unittest.cc │ │ │ ├── dwarf2reader_die_unittest.cc │ │ │ ├── dwarf2reader_test_common.h │ │ │ ├── functioninfo.cc │ │ │ ├── functioninfo.h │ │ │ ├── line_state_machine.h │ │ │ └── types.h │ │ ├── dwarf_cfi_to_module.cc │ │ ├── dwarf_cfi_to_module.h │ │ ├── dwarf_cfi_to_module_unittest.cc │ │ ├── dwarf_cu_to_module.cc │ │ ├── dwarf_cu_to_module.h │ │ ├── dwarf_cu_to_module_unittest.cc │ │ ├── dwarf_line_to_module.cc │ │ ├── dwarf_line_to_module.h │ │ ├── dwarf_line_to_module_unittest.cc │ │ ├── language.cc │ │ ├── language.h │ │ ├── linux │ │ │ ├── dump_symbols.cc │ │ │ ├── dump_symbols.h │ │ │ ├── dump_symbols_unittest.cc │ │ │ ├── eintr_wrapper.h │ │ │ ├── elf_core_dump.cc │ │ │ ├── elf_core_dump.h │ │ │ ├── elf_core_dump_unittest.cc │ │ │ ├── elf_symbols_to_module.cc │ │ │ ├── elf_symbols_to_module.h │ │ │ ├── elf_symbols_to_module_unittest.cc │ │ │ ├── file_id.cc │ │ │ ├── file_id.h │ │ │ ├── file_id_unittest.cc │ │ │ ├── google_crashdump_uploader.cc │ │ │ ├── google_crashdump_uploader.h │ │ │ ├── google_crashdump_uploader_test.cc │ │ │ ├── guid_creator.cc │ │ │ ├── guid_creator.h │ │ │ ├── http_upload.cc │ │ │ ├── http_upload.h │ │ │ ├── libcurl_wrapper.cc │ │ │ ├── libcurl_wrapper.h │ │ │ ├── linux_libc_support.h │ │ │ ├── linux_libc_support_unittest.cc │ │ │ ├── memory_mapped_file.cc │ │ │ ├── memory_mapped_file.h │ │ │ ├── memory_mapped_file_unittest.cc │ │ │ ├── safe_readlink.cc │ │ │ ├── safe_readlink.h │ │ │ ├── safe_readlink_unittest.cc │ │ │ ├── synth_elf.cc │ │ │ ├── synth_elf.h │ │ │ ├── synth_elf_unittest.cc │ │ │ └── tests │ │ │ │ ├── crash_generator.cc │ │ │ │ └── crash_generator.h │ │ ├── mac │ │ │ ├── Breakpad.xcconfig │ │ │ ├── BreakpadDebug.xcconfig │ │ │ ├── BreakpadRelease.xcconfig │ │ │ ├── GTMDefines.h │ │ │ ├── GTMGarbageCollection.h │ │ │ ├── GTMLogger.h │ │ │ ├── GTMLogger.m │ │ │ ├── HTTPMultipartUpload.h │ │ │ ├── HTTPMultipartUpload.m │ │ │ ├── MachIPC.h │ │ │ ├── MachIPC.mm │ │ │ ├── SimpleStringDictionary.h │ │ │ ├── SimpleStringDictionary.mm │ │ │ ├── bootstrap_compat.cc │ │ │ ├── bootstrap_compat.h │ │ │ ├── byteswap.h │ │ │ ├── dump_syms.h │ │ │ ├── dump_syms.mm │ │ │ ├── file_id.cc │ │ │ ├── file_id.h │ │ │ ├── macho_id.cc │ │ │ ├── macho_id.h │ │ │ ├── macho_reader.cc │ │ │ ├── macho_reader.h │ │ │ ├── macho_reader_unittest.cc │ │ │ ├── macho_utilities.cc │ │ │ ├── macho_utilities.h │ │ │ ├── macho_walker.cc │ │ │ ├── macho_walker.h │ │ │ ├── scoped_task_suspend-inl.h │ │ │ ├── string_utilities.cc │ │ │ ├── string_utilities.h │ │ │ └── testing │ │ │ │ ├── GTMSenTestCase.h │ │ │ │ └── GTMSenTestCase.m │ │ ├── md5.cc │ │ ├── md5.h │ │ ├── memory.h │ │ ├── memory_range.h │ │ ├── memory_range_unittest.cc │ │ ├── memory_unittest.cc │ │ ├── module.cc │ │ ├── module.h │ │ ├── module_unittest.cc │ │ ├── solaris │ │ │ ├── dump_symbols.cc │ │ │ ├── dump_symbols.h │ │ │ ├── file_id.cc │ │ │ ├── file_id.h │ │ │ ├── guid_creator.cc │ │ │ ├── guid_creator.h │ │ │ └── message_output.h │ │ ├── stabs_reader.cc │ │ ├── stabs_reader.h │ │ ├── stabs_reader_unittest.cc │ │ ├── stabs_to_module.cc │ │ ├── stabs_to_module.h │ │ ├── stabs_to_module_unittest.cc │ │ ├── string_conversion.cc │ │ ├── string_conversion.h │ │ ├── test_assembler.cc │ │ ├── test_assembler.h │ │ ├── test_assembler_unittest.cc │ │ ├── testdata │ │ │ └── func-line-pairing.h │ │ └── windows │ │ │ ├── guid_string.cc │ │ │ ├── guid_string.h │ │ │ ├── http_upload.cc │ │ │ ├── http_upload.h │ │ │ ├── pdb_source_line_writer.cc │ │ │ ├── pdb_source_line_writer.h │ │ │ ├── string_utils-inl.h │ │ │ └── string_utils.cc │ ├── config.h.in │ ├── google_breakpad │ │ ├── common │ │ │ ├── breakpad_types.h │ │ │ ├── minidump_cpu_amd64.h │ │ │ ├── minidump_cpu_arm.h │ │ │ ├── minidump_cpu_ppc.h │ │ │ ├── minidump_cpu_ppc64.h │ │ │ ├── minidump_cpu_sparc.h │ │ │ ├── minidump_cpu_x86.h │ │ │ ├── minidump_exception_linux.h │ │ │ ├── minidump_exception_mac.h │ │ │ ├── minidump_exception_solaris.h │ │ │ ├── minidump_exception_win32.h │ │ │ ├── minidump_format.h │ │ │ └── minidump_size.h │ │ └── processor │ │ │ ├── basic_source_line_resolver.h │ │ │ ├── call_stack.h │ │ │ ├── code_module.h │ │ │ ├── code_modules.h │ │ │ ├── exploitability.h │ │ │ ├── fast_source_line_resolver.h │ │ │ ├── memory_region.h │ │ │ ├── minidump.h │ │ │ ├── minidump_processor.h │ │ │ ├── process_state.h │ │ │ ├── source_line_resolver_base.h │ │ │ ├── source_line_resolver_interface.h │ │ │ ├── stack_frame.h │ │ │ ├── stack_frame_cpu.h │ │ │ ├── stackwalker.h │ │ │ ├── symbol_supplier.h │ │ │ └── system_info.h │ ├── processor │ │ ├── address_map-inl.h │ │ ├── address_map.h │ │ ├── address_map_unittest.cc │ │ ├── basic_code_module.h │ │ ├── basic_code_modules.cc │ │ ├── basic_code_modules.h │ │ ├── basic_source_line_resolver.cc │ │ ├── basic_source_line_resolver_types.h │ │ ├── basic_source_line_resolver_unittest.cc │ │ ├── binarystream.cc │ │ ├── binarystream.h │ │ ├── binarystream_unittest.cc │ │ ├── call_stack.cc │ │ ├── cfi_frame_info-inl.h │ │ ├── cfi_frame_info.cc │ │ ├── cfi_frame_info.h │ │ ├── cfi_frame_info_unittest.cc │ │ ├── contained_range_map-inl.h │ │ ├── contained_range_map.h │ │ ├── contained_range_map_unittest.cc │ │ ├── disassembler_x86.cc │ │ ├── disassembler_x86.h │ │ ├── disassembler_x86_unittest.cc │ │ ├── exploitability.cc │ │ ├── exploitability_unittest.cc │ │ ├── exploitability_win.cc │ │ ├── exploitability_win.h │ │ ├── fast_source_line_resolver.cc │ │ ├── fast_source_line_resolver_types.h │ │ ├── fast_source_line_resolver_unittest.cc │ │ ├── linked_ptr.h │ │ ├── logging.cc │ │ ├── logging.h │ │ ├── map_serializers-inl.h │ │ ├── map_serializers.h │ │ ├── map_serializers_unittest.cc │ │ ├── minidump.cc │ │ ├── minidump_dump.cc │ │ ├── minidump_dump_test │ │ ├── minidump_processor.cc │ │ ├── minidump_processor_unittest.cc │ │ ├── minidump_stackwalk.cc │ │ ├── minidump_stackwalk_machine_readable_test │ │ ├── minidump_stackwalk_test │ │ ├── minidump_unittest.cc │ │ ├── module_comparer.cc │ │ ├── module_comparer.h │ │ ├── module_factory.h │ │ ├── module_serializer.cc │ │ ├── module_serializer.h │ │ ├── pathname_stripper.cc │ │ ├── pathname_stripper.h │ │ ├── pathname_stripper_unittest.cc │ │ ├── postfix_evaluator-inl.h │ │ ├── postfix_evaluator.h │ │ ├── postfix_evaluator_unittest.cc │ │ ├── process_state.cc │ │ ├── proto │ │ │ ├── README │ │ │ └── process_state.proto │ │ ├── range_map-inl.h │ │ ├── range_map.h │ │ ├── range_map_unittest.cc │ │ ├── scoped_ptr.h │ │ ├── simple_serializer-inl.h │ │ ├── simple_serializer.h │ │ ├── simple_symbol_supplier.cc │ │ ├── simple_symbol_supplier.h │ │ ├── source_line_resolver_base.cc │ │ ├── source_line_resolver_base_types.h │ │ ├── stackwalker.cc │ │ ├── stackwalker_amd64.cc │ │ ├── stackwalker_amd64.h │ │ ├── stackwalker_amd64_unittest.cc │ │ ├── stackwalker_arm.cc │ │ ├── stackwalker_arm.h │ │ ├── stackwalker_arm_unittest.cc │ │ ├── stackwalker_ppc.cc │ │ ├── stackwalker_ppc.h │ │ ├── stackwalker_selftest.cc │ │ ├── stackwalker_selftest_sol.s │ │ ├── stackwalker_sparc.cc │ │ ├── stackwalker_sparc.h │ │ ├── stackwalker_unittest_utils.h │ │ ├── stackwalker_x86.cc │ │ ├── stackwalker_x86.h │ │ ├── stackwalker_x86_unittest.cc │ │ ├── static_address_map-inl.h │ │ ├── static_address_map.h │ │ ├── static_address_map_unittest.cc │ │ ├── static_contained_range_map-inl.h │ │ ├── static_contained_range_map.h │ │ ├── static_contained_range_map_unittest.cc │ │ ├── static_map-inl.h │ │ ├── static_map.h │ │ ├── static_map_iterator-inl.h │ │ ├── static_map_iterator.h │ │ ├── static_map_unittest.cc │ │ ├── static_range_map-inl.h │ │ ├── static_range_map.h │ │ ├── static_range_map_unittest.cc │ │ ├── synth_minidump.cc │ │ ├── synth_minidump.h │ │ ├── synth_minidump_unittest.cc │ │ ├── synth_minidump_unittest_data.h │ │ ├── testdata │ │ │ ├── ascii_read_av.dmp │ │ │ ├── ascii_read_av_block_write.dmp │ │ │ ├── ascii_read_av_clobber_write.dmp │ │ │ ├── ascii_read_av_conditional.dmp │ │ │ ├── ascii_read_av_then_jmp.dmp │ │ │ ├── ascii_read_av_xchg_write.dmp │ │ │ ├── ascii_write_av.dmp │ │ │ ├── ascii_write_av_arg_to_call.dmp │ │ │ ├── exec_av_on_stack.dmp │ │ │ ├── linux_test_app.cc │ │ │ ├── minidump2.dmp │ │ │ ├── minidump2.dump.out │ │ │ ├── minidump2.stackwalk.machine_readable.out │ │ │ ├── minidump2.stackwalk.out │ │ │ ├── module0.out │ │ │ ├── module1.out │ │ │ ├── module2.out │ │ │ ├── module3_bad.out │ │ │ ├── module4_bad.out │ │ │ ├── null_read_av.dmp │ │ │ ├── null_write_av.dmp │ │ │ ├── read_av_clobber_write.dmp │ │ │ ├── read_av_conditional.dmp │ │ │ ├── read_av_non_null.dmp │ │ │ ├── stack_exhaustion.dmp │ │ │ ├── symbols │ │ │ │ ├── kernel32.pdb │ │ │ │ │ └── BCE8785C57B44245A669896B6A19B9542 │ │ │ │ │ │ └── kernel32.sym │ │ │ │ └── test_app.pdb │ │ │ │ │ └── 5A9832E5287241C1838ED98914E9B7FF1 │ │ │ │ │ └── test_app.sym │ │ │ ├── test_app.cc │ │ │ └── write_av_non_null.dmp │ │ ├── tokenize.cc │ │ ├── tokenize.h │ │ └── windows_frame_info.h │ └── third_party │ │ ├── curl │ │ ├── COPYING │ │ ├── curl.h │ │ ├── curlbuild.h │ │ ├── curlrules.h │ │ ├── curlver.h │ │ ├── easy.h │ │ ├── mprintf.h │ │ ├── multi.h │ │ ├── stdcheaders.h │ │ ├── typecheck-gcc.h │ │ └── types.h │ │ ├── glog │ │ ├── AUTHORS │ │ ├── COPYING │ │ ├── ChangeLog │ │ ├── INSTALL │ │ ├── NEWS │ │ ├── README │ │ ├── README.windows │ │ ├── aclocal.m4 │ │ ├── compile │ │ ├── config.guess │ │ ├── config.sub │ │ ├── configure │ │ ├── configure.ac │ │ ├── depcomp │ │ ├── doc │ │ │ ├── designstyle.css │ │ │ └── glog.html │ │ ├── google-glog.sln │ │ ├── install-sh │ │ ├── libglog.pc.in │ │ ├── ltmain.sh │ │ ├── m4 │ │ │ ├── ac_have_attribute.m4 │ │ │ ├── ac_have_builtin_expect.m4 │ │ │ ├── ac_have_sync_val_compare_and_swap.m4 │ │ │ ├── ac_rwlock.m4 │ │ │ ├── acx_pthread.m4 │ │ │ ├── google_namespace.m4 │ │ │ ├── libtool.m4 │ │ │ ├── ltoptions.m4 │ │ │ ├── ltsugar.m4 │ │ │ ├── ltversion.m4 │ │ │ ├── lt~obsolete.m4 │ │ │ ├── namespaces.m4 │ │ │ ├── pc_from_ucontext.m4 │ │ │ ├── stl_namespace.m4 │ │ │ └── using_operator.m4 │ │ ├── missing │ │ ├── mkinstalldirs │ │ ├── packages │ │ │ ├── deb.sh │ │ │ ├── deb │ │ │ │ ├── README │ │ │ │ ├── changelog │ │ │ │ ├── compat │ │ │ │ ├── control │ │ │ │ ├── copyright │ │ │ │ ├── docs │ │ │ │ ├── libgoogle-glog-dev.dirs │ │ │ │ ├── libgoogle-glog-dev.install │ │ │ │ ├── libgoogle-glog0.dirs │ │ │ │ ├── libgoogle-glog0.install │ │ │ │ └── rules │ │ │ ├── rpm.sh │ │ │ └── rpm │ │ │ │ └── rpm.spec │ │ ├── src │ │ │ ├── base │ │ │ │ ├── commandlineflags.h │ │ │ │ ├── googleinit.h │ │ │ │ └── mutex.h │ │ │ ├── config.h.in │ │ │ ├── config_for_unittests.h │ │ │ ├── demangle.cc │ │ │ ├── demangle.h │ │ │ ├── demangle_unittest.cc │ │ │ ├── demangle_unittest.sh │ │ │ ├── demangle_unittest.txt │ │ │ ├── glog │ │ │ │ ├── log_severity.h │ │ │ │ ├── logging.h.in │ │ │ │ ├── raw_logging.h.in │ │ │ │ ├── stl_logging.h.in │ │ │ │ └── vlog_is_on.h.in │ │ │ ├── googletest.h │ │ │ ├── logging.cc │ │ │ ├── logging_striplog_test.sh │ │ │ ├── logging_striptest10.cc │ │ │ ├── logging_striptest2.cc │ │ │ ├── logging_striptest_main.cc │ │ │ ├── logging_unittest.cc │ │ │ ├── logging_unittest.err │ │ │ ├── mock-log.h │ │ │ ├── mock-log_test.cc │ │ │ ├── raw_logging.cc │ │ │ ├── signalhandler.cc │ │ │ ├── signalhandler_unittest.cc │ │ │ ├── signalhandler_unittest.sh │ │ │ ├── stacktrace.h │ │ │ ├── stacktrace_generic-inl.h │ │ │ ├── stacktrace_libunwind-inl.h │ │ │ ├── stacktrace_powerpc-inl.h │ │ │ ├── stacktrace_unittest.cc │ │ │ ├── stacktrace_x86-inl.h │ │ │ ├── stacktrace_x86_64-inl.h │ │ │ ├── stl_logging_unittest.cc │ │ │ ├── symbolize.cc │ │ │ ├── symbolize.h │ │ │ ├── symbolize_unittest.cc │ │ │ ├── utilities.cc │ │ │ ├── utilities.h │ │ │ ├── utilities_unittest.cc │ │ │ ├── vlog_is_on.cc │ │ │ └── windows │ │ │ │ ├── config.h │ │ │ │ ├── glog │ │ │ │ ├── log_severity.h │ │ │ │ ├── logging.h │ │ │ │ ├── raw_logging.h │ │ │ │ ├── stl_logging.h │ │ │ │ └── vlog_is_on.h │ │ │ │ ├── port.cc │ │ │ │ ├── port.h │ │ │ │ └── preprocess.sh │ │ └── vsprojects │ │ │ ├── libglog │ │ │ └── libglog.vcproj │ │ │ ├── libglog_static │ │ │ └── libglog_static.vcproj │ │ │ ├── logging_unittest │ │ │ └── logging_unittest.vcproj │ │ │ └── logging_unittest_static │ │ │ └── logging_unittest_static.vcproj │ │ ├── libdisasm │ │ ├── TODO │ │ ├── ia32_implicit.c │ │ ├── ia32_implicit.h │ │ ├── ia32_insn.c │ │ ├── ia32_insn.h │ │ ├── ia32_invariant.c │ │ ├── ia32_invariant.h │ │ ├── ia32_modrm.c │ │ ├── ia32_modrm.h │ │ ├── ia32_opcode_tables.c │ │ ├── ia32_opcode_tables.h │ │ ├── ia32_operand.c │ │ ├── ia32_operand.h │ │ ├── ia32_reg.c │ │ ├── ia32_reg.h │ │ ├── ia32_settings.c │ │ ├── ia32_settings.h │ │ ├── libdis.h │ │ ├── qword.h │ │ ├── swig │ │ │ ├── README │ │ │ ├── libdisasm.i │ │ │ ├── libdisasm_oop.i │ │ │ └── ruby │ │ │ │ └── extconf.rb │ │ ├── x86_disasm.c │ │ ├── x86_format.c │ │ ├── x86_imm.c │ │ ├── x86_imm.h │ │ ├── x86_insn.c │ │ ├── x86_misc.c │ │ ├── x86_operand_list.c │ │ └── x86_operand_list.h │ │ ├── linux │ │ └── include │ │ │ └── gflags │ │ │ ├── gflags.h │ │ │ └── gflags_completions.h │ │ ├── lss │ │ └── linux_syscall_support.h │ │ └── protobuf │ │ └── protobuf │ │ ├── CHANGES.txt │ │ ├── CONTRIBUTORS.txt │ │ ├── COPYING.txt │ │ ├── INSTALL.txt │ │ ├── README.txt │ │ ├── autogen.sh │ │ ├── benchmarks │ │ ├── ProtoBench.java │ │ ├── google_message1.dat │ │ ├── google_message2.dat │ │ ├── google_size.proto │ │ ├── google_speed.proto │ │ └── readme.txt │ │ ├── configure.ac │ │ ├── editors │ │ ├── README.txt │ │ ├── proto.vim │ │ └── protobuf-mode.el │ │ ├── examples │ │ ├── AddPerson.java │ │ ├── ListPeople.java │ │ ├── README.txt │ │ ├── add_person.cc │ │ ├── add_person.py │ │ ├── addressbook.proto │ │ ├── list_people.cc │ │ └── list_people.py │ │ ├── generate_descriptor_proto.sh │ │ ├── gtest │ │ ├── CHANGES │ │ ├── CMakeLists.txt │ │ ├── CONTRIBUTORS │ │ ├── COPYING │ │ ├── README │ │ ├── build-aux │ │ │ └── .keep │ │ ├── codegear │ │ │ ├── gtest.cbproj │ │ │ ├── gtest.groupproj │ │ │ ├── gtest_all.cc │ │ │ ├── gtest_link.cc │ │ │ ├── gtest_main.cbproj │ │ │ └── gtest_unittest.cbproj │ │ ├── configure.ac │ │ ├── include │ │ │ └── gtest │ │ │ │ ├── gtest-death-test.h │ │ │ │ ├── gtest-message.h │ │ │ │ ├── gtest-param-test.h │ │ │ │ ├── gtest-param-test.h.pump │ │ │ │ ├── gtest-spi.h │ │ │ │ ├── gtest-test-part.h │ │ │ │ ├── gtest-typed-test.h │ │ │ │ ├── gtest.h │ │ │ │ ├── gtest_pred_impl.h │ │ │ │ ├── gtest_prod.h │ │ │ │ └── internal │ │ │ │ ├── gtest-death-test-internal.h │ │ │ │ ├── gtest-filepath.h │ │ │ │ ├── gtest-internal.h │ │ │ │ ├── gtest-linked_ptr.h │ │ │ │ ├── gtest-param-util-generated.h │ │ │ │ ├── gtest-param-util-generated.h.pump │ │ │ │ ├── gtest-param-util.h │ │ │ │ ├── gtest-port.h │ │ │ │ ├── gtest-string.h │ │ │ │ ├── gtest-tuple.h │ │ │ │ ├── gtest-tuple.h.pump │ │ │ │ ├── gtest-type-util.h │ │ │ │ └── gtest-type-util.h.pump │ │ ├── m4 │ │ │ ├── acx_pthread.m4 │ │ │ └── gtest.m4 │ │ ├── msvc │ │ │ ├── gtest-md.sln │ │ │ ├── gtest-md.vcproj │ │ │ ├── gtest.sln │ │ │ ├── gtest.vcproj │ │ │ ├── gtest_main-md.vcproj │ │ │ ├── gtest_main.vcproj │ │ │ ├── gtest_prod_test-md.vcproj │ │ │ ├── gtest_prod_test.vcproj │ │ │ ├── gtest_unittest-md.vcproj │ │ │ └── gtest_unittest.vcproj │ │ ├── run_tests.py │ │ ├── samples │ │ │ ├── prime_tables.h │ │ │ ├── sample1.cc │ │ │ ├── sample1.h │ │ │ ├── sample10_unittest.cc │ │ │ ├── sample1_unittest.cc │ │ │ ├── sample2.cc │ │ │ ├── sample2.h │ │ │ ├── sample2_unittest.cc │ │ │ ├── sample3-inl.h │ │ │ ├── sample3_unittest.cc │ │ │ ├── sample4.cc │ │ │ ├── sample4.h │ │ │ ├── sample4_unittest.cc │ │ │ ├── sample5_unittest.cc │ │ │ ├── sample6_unittest.cc │ │ │ ├── sample7_unittest.cc │ │ │ ├── sample8_unittest.cc │ │ │ └── sample9_unittest.cc │ │ ├── scripts │ │ │ ├── fuse_gtest_files.py │ │ │ ├── gen_gtest_pred_impl.py │ │ │ ├── gtest-config.in │ │ │ ├── pump.py │ │ │ ├── upload.py │ │ │ └── upload_gtest.py │ │ ├── src │ │ │ ├── gtest-all.cc │ │ │ ├── gtest-death-test.cc │ │ │ ├── gtest-filepath.cc │ │ │ ├── gtest-internal-inl.h │ │ │ ├── gtest-port.cc │ │ │ ├── gtest-test-part.cc │ │ │ ├── gtest-typed-test.cc │ │ │ ├── gtest.cc │ │ │ └── gtest_main.cc │ │ ├── test │ │ │ ├── gtest-death-test_test.cc │ │ │ ├── gtest-filepath_test.cc │ │ │ ├── gtest-linked_ptr_test.cc │ │ │ ├── gtest-listener_test.cc │ │ │ ├── gtest-message_test.cc │ │ │ ├── gtest-options_test.cc │ │ │ ├── gtest-param-test2_test.cc │ │ │ ├── gtest-param-test_test.cc │ │ │ ├── gtest-param-test_test.h │ │ │ ├── gtest-port_test.cc │ │ │ ├── gtest-test-part_test.cc │ │ │ ├── gtest-tuple_test.cc │ │ │ ├── gtest-typed-test2_test.cc │ │ │ ├── gtest-typed-test_test.cc │ │ │ ├── gtest-typed-test_test.h │ │ │ ├── gtest-unittest-api_test.cc │ │ │ ├── gtest_all_test.cc │ │ │ ├── gtest_break_on_failure_unittest.py │ │ │ ├── gtest_break_on_failure_unittest_.cc │ │ │ ├── gtest_color_test.py │ │ │ ├── gtest_color_test_.cc │ │ │ ├── gtest_env_var_test.py │ │ │ ├── gtest_env_var_test_.cc │ │ │ ├── gtest_environment_test.cc │ │ │ ├── gtest_filter_unittest.py │ │ │ ├── gtest_filter_unittest_.cc │ │ │ ├── gtest_help_test.py │ │ │ ├── gtest_help_test_.cc │ │ │ ├── gtest_list_tests_unittest.py │ │ │ ├── gtest_list_tests_unittest_.cc │ │ │ ├── gtest_main_unittest.cc │ │ │ ├── gtest_nc.cc │ │ │ ├── gtest_nc_test.py │ │ │ ├── gtest_no_test_unittest.cc │ │ │ ├── gtest_output_test.py │ │ │ ├── gtest_output_test_.cc │ │ │ ├── gtest_output_test_golden_lin.txt │ │ │ ├── gtest_output_test_golden_win.txt │ │ │ ├── gtest_pred_impl_unittest.cc │ │ │ ├── gtest_prod_test.cc │ │ │ ├── gtest_repeat_test.cc │ │ │ ├── gtest_shuffle_test.py │ │ │ ├── gtest_shuffle_test_.cc │ │ │ ├── gtest_sole_header_test.cc │ │ │ ├── gtest_stress_test.cc │ │ │ ├── gtest_test_utils.py │ │ │ ├── gtest_throw_on_failure_ex_test.cc │ │ │ ├── gtest_throw_on_failure_test.py │ │ │ ├── gtest_throw_on_failure_test_.cc │ │ │ ├── gtest_uninitialized_test.py │ │ │ ├── gtest_uninitialized_test_.cc │ │ │ ├── gtest_unittest.cc │ │ │ ├── gtest_xml_outfile1_test_.cc │ │ │ ├── gtest_xml_outfile2_test_.cc │ │ │ ├── gtest_xml_outfiles_test.py │ │ │ ├── gtest_xml_output_unittest.py │ │ │ ├── gtest_xml_output_unittest_.cc │ │ │ ├── gtest_xml_test_utils.py │ │ │ ├── production.cc │ │ │ ├── production.h │ │ │ ├── run_tests_util.py │ │ │ └── run_tests_util_test.py │ │ └── xcode │ │ │ ├── Config │ │ │ ├── DebugProject.xcconfig │ │ │ ├── FrameworkTarget.xcconfig │ │ │ ├── General.xcconfig │ │ │ ├── ReleaseProject.xcconfig │ │ │ ├── StaticLibraryTarget.xcconfig │ │ │ └── TestTarget.xcconfig │ │ │ ├── Resources │ │ │ └── Info.plist │ │ │ ├── Samples │ │ │ └── FrameworkSample │ │ │ │ ├── Info.plist │ │ │ │ ├── WidgetFramework.xcodeproj │ │ │ │ └── project.pbxproj │ │ │ │ ├── runtests.sh │ │ │ │ ├── widget.cc │ │ │ │ ├── widget.h │ │ │ │ └── widget_test.cc │ │ │ ├── Scripts │ │ │ ├── runtests.sh │ │ │ └── versiongenerate.py │ │ │ └── gtest.xcodeproj │ │ │ └── project.pbxproj │ │ ├── java │ │ ├── README.txt │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── google │ │ │ │ └── protobuf │ │ │ │ ├── AbstractMessage.java │ │ │ │ ├── AbstractMessageLite.java │ │ │ │ ├── BlockingRpcChannel.java │ │ │ │ ├── BlockingService.java │ │ │ │ ├── ByteString.java │ │ │ │ ├── CodedInputStream.java │ │ │ │ ├── CodedOutputStream.java │ │ │ │ ├── Descriptors.java │ │ │ │ ├── DynamicMessage.java │ │ │ │ ├── ExtensionRegistry.java │ │ │ │ ├── ExtensionRegistryLite.java │ │ │ │ ├── FieldSet.java │ │ │ │ ├── GeneratedMessage.java │ │ │ │ ├── GeneratedMessageLite.java │ │ │ │ ├── Internal.java │ │ │ │ ├── InvalidProtocolBufferException.java │ │ │ │ ├── LazyStringArrayList.java │ │ │ │ ├── LazyStringList.java │ │ │ │ ├── Message.java │ │ │ │ ├── MessageLite.java │ │ │ │ ├── MessageLiteOrBuilder.java │ │ │ │ ├── MessageOrBuilder.java │ │ │ │ ├── ProtocolMessageEnum.java │ │ │ │ ├── RepeatedFieldBuilder.java │ │ │ │ ├── RpcCallback.java │ │ │ │ ├── RpcChannel.java │ │ │ │ ├── RpcController.java │ │ │ │ ├── RpcUtil.java │ │ │ │ ├── Service.java │ │ │ │ ├── ServiceException.java │ │ │ │ ├── SingleFieldBuilder.java │ │ │ │ ├── SmallSortedMap.java │ │ │ │ ├── TextFormat.java │ │ │ │ ├── UninitializedMessageException.java │ │ │ │ ├── UnknownFieldSet.java │ │ │ │ ├── UnmodifiableLazyStringList.java │ │ │ │ └── WireFormat.java │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── google │ │ │ └── protobuf │ │ │ ├── AbstractMessageTest.java │ │ │ ├── CodedInputStreamTest.java │ │ │ ├── CodedOutputStreamTest.java │ │ │ ├── DeprecatedFieldTest.java │ │ │ ├── DescriptorsTest.java │ │ │ ├── DynamicMessageTest.java │ │ │ ├── ForceFieldBuildersPreRun.java │ │ │ ├── GeneratedMessageTest.java │ │ │ ├── LazyStringArrayListTest.java │ │ │ ├── LazyStringEndToEndTest.java │ │ │ ├── LiteTest.java │ │ │ ├── MessageTest.java │ │ │ ├── NestedBuildersTest.java │ │ │ ├── RepeatedFieldBuilderTest.java │ │ │ ├── ServiceTest.java │ │ │ ├── SingleFieldBuilderTest.java │ │ │ ├── SmallSortedMapTest.java │ │ │ ├── TestBadIdentifiers.java │ │ │ ├── TestUtil.java │ │ │ ├── TextFormatTest.java │ │ │ ├── UnknownFieldSetTest.java │ │ │ ├── UnmodifiableLazyStringListTest.java │ │ │ ├── WireFormatTest.java │ │ │ ├── multiple_files_test.proto │ │ │ ├── nested_builders_test.proto │ │ │ ├── nested_extension.proto │ │ │ ├── nested_extension_lite.proto │ │ │ ├── non_nested_extension.proto │ │ │ ├── non_nested_extension_lite.proto │ │ │ └── test_bad_identifiers.proto │ │ ├── m4 │ │ ├── ac_system_extensions.m4 │ │ ├── acx_check_suncc.m4 │ │ ├── acx_pthread.m4 │ │ └── stl_hash.m4 │ │ ├── post_process_dist.sh │ │ ├── protobuf-lite.pc.in │ │ ├── protobuf.pc.in │ │ ├── python │ │ ├── README.txt │ │ ├── ez_setup.py │ │ ├── google │ │ │ ├── __init__.py │ │ │ └── protobuf │ │ │ │ ├── __init__.py │ │ │ │ ├── descriptor.py │ │ │ │ ├── internal │ │ │ │ ├── __init__.py │ │ │ │ ├── api_implementation.py │ │ │ │ ├── containers.py │ │ │ │ ├── cpp_message.py │ │ │ │ ├── decoder.py │ │ │ │ ├── descriptor_test.py │ │ │ │ ├── encoder.py │ │ │ │ ├── generator_test.py │ │ │ │ ├── message_listener.py │ │ │ │ ├── message_test.py │ │ │ │ ├── more_extensions.proto │ │ │ │ ├── more_messages.proto │ │ │ │ ├── python_message.py │ │ │ │ ├── reflection_test.py │ │ │ │ ├── service_reflection_test.py │ │ │ │ ├── test_util.py │ │ │ │ ├── text_format_test.py │ │ │ │ ├── type_checkers.py │ │ │ │ ├── wire_format.py │ │ │ │ └── wire_format_test.py │ │ │ │ ├── message.py │ │ │ │ ├── pyext │ │ │ │ ├── python-proto2.cc │ │ │ │ ├── python_descriptor.cc │ │ │ │ ├── python_descriptor.h │ │ │ │ ├── python_protobuf.cc │ │ │ │ └── python_protobuf.h │ │ │ │ ├── reflection.py │ │ │ │ ├── service.py │ │ │ │ ├── service_reflection.py │ │ │ │ └── text_format.py │ │ ├── mox.py │ │ ├── setup.py │ │ └── stubout.py │ │ ├── src │ │ ├── google │ │ │ └── protobuf │ │ │ │ ├── SEBS │ │ │ │ ├── compiler │ │ │ │ ├── code_generator.cc │ │ │ │ ├── code_generator.h │ │ │ │ ├── command_line_interface.cc │ │ │ │ ├── command_line_interface.h │ │ │ │ ├── command_line_interface_unittest.cc │ │ │ │ ├── cpp │ │ │ │ │ ├── cpp_bootstrap_unittest.cc │ │ │ │ │ ├── cpp_enum.cc │ │ │ │ │ ├── cpp_enum.h │ │ │ │ │ ├── cpp_enum_field.cc │ │ │ │ │ ├── cpp_enum_field.h │ │ │ │ │ ├── cpp_extension.cc │ │ │ │ │ ├── cpp_extension.h │ │ │ │ │ ├── cpp_field.cc │ │ │ │ │ ├── cpp_field.h │ │ │ │ │ ├── cpp_file.cc │ │ │ │ │ ├── cpp_file.h │ │ │ │ │ ├── cpp_generator.cc │ │ │ │ │ ├── cpp_generator.h │ │ │ │ │ ├── cpp_helpers.cc │ │ │ │ │ ├── cpp_helpers.h │ │ │ │ │ ├── cpp_message.cc │ │ │ │ │ ├── cpp_message.h │ │ │ │ │ ├── cpp_message_field.cc │ │ │ │ │ ├── cpp_message_field.h │ │ │ │ │ ├── cpp_plugin_unittest.cc │ │ │ │ │ ├── cpp_primitive_field.cc │ │ │ │ │ ├── cpp_primitive_field.h │ │ │ │ │ ├── cpp_service.cc │ │ │ │ │ ├── cpp_service.h │ │ │ │ │ ├── cpp_string_field.cc │ │ │ │ │ ├── cpp_string_field.h │ │ │ │ │ ├── cpp_test_bad_identifiers.proto │ │ │ │ │ └── cpp_unittest.cc │ │ │ │ ├── importer.cc │ │ │ │ ├── importer.h │ │ │ │ ├── importer_unittest.cc │ │ │ │ ├── java │ │ │ │ │ ├── java_enum.cc │ │ │ │ │ ├── java_enum.h │ │ │ │ │ ├── java_enum_field.cc │ │ │ │ │ ├── java_enum_field.h │ │ │ │ │ ├── java_extension.cc │ │ │ │ │ ├── java_extension.h │ │ │ │ │ ├── java_field.cc │ │ │ │ │ ├── java_field.h │ │ │ │ │ ├── java_file.cc │ │ │ │ │ ├── java_file.h │ │ │ │ │ ├── java_generator.cc │ │ │ │ │ ├── java_generator.h │ │ │ │ │ ├── java_helpers.cc │ │ │ │ │ ├── java_helpers.h │ │ │ │ │ ├── java_message.cc │ │ │ │ │ ├── java_message.h │ │ │ │ │ ├── java_message_field.cc │ │ │ │ │ ├── java_message_field.h │ │ │ │ │ ├── java_plugin_unittest.cc │ │ │ │ │ ├── java_primitive_field.cc │ │ │ │ │ ├── java_primitive_field.h │ │ │ │ │ ├── java_service.cc │ │ │ │ │ ├── java_service.h │ │ │ │ │ ├── java_string_field.cc │ │ │ │ │ └── java_string_field.h │ │ │ │ ├── main.cc │ │ │ │ ├── mock_code_generator.cc │ │ │ │ ├── mock_code_generator.h │ │ │ │ ├── package_info.h │ │ │ │ ├── parser.cc │ │ │ │ ├── parser.h │ │ │ │ ├── parser_unittest.cc │ │ │ │ ├── plugin.cc │ │ │ │ ├── plugin.h │ │ │ │ ├── plugin.pb.cc │ │ │ │ ├── plugin.pb.h │ │ │ │ ├── plugin.proto │ │ │ │ ├── python │ │ │ │ │ ├── python_generator.cc │ │ │ │ │ ├── python_generator.h │ │ │ │ │ └── python_plugin_unittest.cc │ │ │ │ ├── subprocess.cc │ │ │ │ ├── subprocess.h │ │ │ │ ├── test_plugin.cc │ │ │ │ ├── zip_output_unittest.sh │ │ │ │ ├── zip_writer.cc │ │ │ │ └── zip_writer.h │ │ │ │ ├── descriptor.cc │ │ │ │ ├── descriptor.h │ │ │ │ ├── descriptor.pb.cc │ │ │ │ ├── descriptor.pb.h │ │ │ │ ├── descriptor.proto │ │ │ │ ├── descriptor_database.cc │ │ │ │ ├── descriptor_database.h │ │ │ │ ├── descriptor_database_unittest.cc │ │ │ │ ├── descriptor_unittest.cc │ │ │ │ ├── dynamic_message.cc │ │ │ │ ├── dynamic_message.h │ │ │ │ ├── dynamic_message_unittest.cc │ │ │ │ ├── extension_set.cc │ │ │ │ ├── extension_set.h │ │ │ │ ├── extension_set_heavy.cc │ │ │ │ ├── extension_set_unittest.cc │ │ │ │ ├── generated_message_reflection.cc │ │ │ │ ├── generated_message_reflection.h │ │ │ │ ├── generated_message_reflection_unittest.cc │ │ │ │ ├── generated_message_util.cc │ │ │ │ ├── generated_message_util.h │ │ │ │ ├── io │ │ │ │ ├── coded_stream.cc │ │ │ │ ├── coded_stream.h │ │ │ │ ├── coded_stream_inl.h │ │ │ │ ├── coded_stream_unittest.cc │ │ │ │ ├── gzip_stream.cc │ │ │ │ ├── gzip_stream.h │ │ │ │ ├── gzip_stream_unittest.sh │ │ │ │ ├── package_info.h │ │ │ │ ├── printer.cc │ │ │ │ ├── printer.h │ │ │ │ ├── printer_unittest.cc │ │ │ │ ├── tokenizer.cc │ │ │ │ ├── tokenizer.h │ │ │ │ ├── tokenizer_unittest.cc │ │ │ │ ├── zero_copy_stream.cc │ │ │ │ ├── zero_copy_stream.h │ │ │ │ ├── zero_copy_stream_impl.cc │ │ │ │ ├── zero_copy_stream_impl.h │ │ │ │ ├── zero_copy_stream_impl_lite.cc │ │ │ │ ├── zero_copy_stream_impl_lite.h │ │ │ │ └── zero_copy_stream_unittest.cc │ │ │ │ ├── lite_unittest.cc │ │ │ │ ├── message.cc │ │ │ │ ├── message.h │ │ │ │ ├── message_lite.cc │ │ │ │ ├── message_lite.h │ │ │ │ ├── message_unittest.cc │ │ │ │ ├── package_info.h │ │ │ │ ├── reflection_ops.cc │ │ │ │ ├── reflection_ops.h │ │ │ │ ├── reflection_ops_unittest.cc │ │ │ │ ├── repeated_field.cc │ │ │ │ ├── repeated_field.h │ │ │ │ ├── repeated_field_unittest.cc │ │ │ │ ├── service.cc │ │ │ │ ├── service.h │ │ │ │ ├── stubs │ │ │ │ ├── common.cc │ │ │ │ ├── common.h │ │ │ │ ├── common_unittest.cc │ │ │ │ ├── hash.h │ │ │ │ ├── map-util.h │ │ │ │ ├── once.cc │ │ │ │ ├── once.h │ │ │ │ ├── once_unittest.cc │ │ │ │ ├── stl_util-inl.h │ │ │ │ ├── structurally_valid.cc │ │ │ │ ├── structurally_valid_unittest.cc │ │ │ │ ├── strutil.cc │ │ │ │ ├── strutil.h │ │ │ │ ├── strutil_unittest.cc │ │ │ │ ├── substitute.cc │ │ │ │ └── substitute.h │ │ │ │ ├── test_util.cc │ │ │ │ ├── test_util.h │ │ │ │ ├── test_util_lite.cc │ │ │ │ ├── test_util_lite.h │ │ │ │ ├── testdata │ │ │ │ ├── golden_message │ │ │ │ ├── golden_packed_fields_message │ │ │ │ ├── text_format_unittest_data.txt │ │ │ │ └── text_format_unittest_extensions_data.txt │ │ │ │ ├── testing │ │ │ │ ├── file.cc │ │ │ │ ├── file.h │ │ │ │ ├── googletest.cc │ │ │ │ ├── googletest.h │ │ │ │ ├── zcgunzip.cc │ │ │ │ └── zcgzip.cc │ │ │ │ ├── text_format.cc │ │ │ │ ├── text_format.h │ │ │ │ ├── text_format_unittest.cc │ │ │ │ ├── unittest.proto │ │ │ │ ├── unittest_custom_options.proto │ │ │ │ ├── unittest_embed_optimize_for.proto │ │ │ │ ├── unittest_empty.proto │ │ │ │ ├── unittest_enormous_descriptor.proto │ │ │ │ ├── unittest_import.proto │ │ │ │ ├── unittest_import_lite.proto │ │ │ │ ├── unittest_lite.proto │ │ │ │ ├── unittest_lite_imports_nonlite.proto │ │ │ │ ├── unittest_mset.proto │ │ │ │ ├── unittest_no_generic_services.proto │ │ │ │ ├── unittest_optimize_for.proto │ │ │ │ ├── unknown_field_set.cc │ │ │ │ ├── unknown_field_set.h │ │ │ │ ├── unknown_field_set_unittest.cc │ │ │ │ ├── wire_format.cc │ │ │ │ ├── wire_format.h │ │ │ │ ├── wire_format_lite.cc │ │ │ │ ├── wire_format_lite.h │ │ │ │ ├── wire_format_lite_inl.h │ │ │ │ └── wire_format_unittest.cc │ │ └── solaris │ │ │ └── libstdc++.la │ │ └── vsprojects │ │ ├── config.h │ │ ├── convert2008to2005.sh │ │ ├── extract_includes.bat │ │ ├── libprotobuf-lite.vcproj │ │ ├── libprotobuf.vcproj │ │ ├── libprotoc.vcproj │ │ ├── lite-test.vcproj │ │ ├── protobuf.sln │ │ ├── protoc.vcproj │ │ ├── readme.txt │ │ ├── test_plugin.vcproj │ │ └── tests.vcproj │ ├── callbacks.h │ ├── cmake │ ├── FindQJSON.cmake │ └── Findlibspotify.cmake │ ├── consolewatcher.cpp │ ├── consolewatcher.h │ ├── kdsingleapplicationguard │ ├── kdlockedsharedmemorypointer.cpp │ ├── kdlockedsharedmemorypointer.h │ ├── kdsharedmemorylocker.cpp │ ├── kdsharedmemorylocker.h │ ├── kdsingleapplicationguard.cpp │ ├── kdsingleapplicationguard.h │ ├── kdtoolsglobal.cpp │ ├── kdtoolsglobal.h │ ├── license-gpl │ ├── pimpl_ptr.cpp │ └── pimpl_ptr.h │ ├── logger.cpp │ ├── logger.h │ ├── main.cpp │ ├── main.h │ ├── qxtweb-standalone │ ├── CMakeLists.txt │ ├── README.txt │ └── qxtweb │ │ ├── QxtAbstractHttpConnector │ │ ├── QxtAbstractWebService │ │ ├── QxtAbstractWebSessionManager │ │ ├── QxtHtmlTemplate │ │ ├── QxtHttpServerConnector │ │ ├── QxtHttpSessionManager │ │ ├── QxtMail │ │ ├── QxtScgiServerConnector │ │ ├── QxtSendmail │ │ ├── QxtWeb │ │ ├── QxtWebCgiService │ │ ├── QxtWebContent │ │ ├── QxtWebErrorEvent │ │ ├── QxtWebEvent │ │ ├── QxtWebFileUploadEvent │ │ ├── QxtWebPageEvent │ │ ├── QxtWebRedirectEvent │ │ ├── QxtWebRemoveCookieEvent │ │ ├── QxtWebRequestEvent │ │ ├── QxtWebServiceDirectory │ │ ├── QxtWebSlotService │ │ ├── QxtWebStoreCookieEvent │ │ ├── qxtabstracthttpconnector.cpp │ │ ├── qxtabstracthttpconnector.h │ │ ├── qxtabstractwebservice.cpp │ │ ├── qxtabstractwebservice.h │ │ ├── qxtabstractwebsessionmanager.cpp │ │ ├── qxtabstractwebsessionmanager.h │ │ ├── qxtabstractwebsessionmanager_p.h │ │ ├── qxtboundcfunction.h │ │ ├── qxtboundfunction.h │ │ ├── qxtboundfunctionbase.h │ │ ├── qxtglobal.cpp │ │ ├── qxtglobal.h │ │ ├── qxthtmltemplate.cpp │ │ ├── qxthtmltemplate.h │ │ ├── qxthttpserverconnector.cpp │ │ ├── qxthttpsessionmanager.cpp │ │ ├── qxthttpsessionmanager.h │ │ ├── qxtmetaobject.cpp │ │ ├── qxtmetaobject.h │ │ ├── qxtmetatype.h │ │ ├── qxtnull.cpp │ │ ├── qxtnull.h │ │ ├── qxtnullable.h │ │ ├── qxtscgiserverconnector.cpp │ │ ├── qxtweb.h │ │ ├── qxtwebcgiservice.cpp │ │ ├── qxtwebcgiservice.h │ │ ├── qxtwebcgiservice_p.h │ │ ├── qxtwebcontent.cpp │ │ ├── qxtwebcontent.h │ │ ├── qxtwebevent.cpp │ │ ├── qxtwebevent.h │ │ ├── qxtwebservicedirectory.cpp │ │ ├── qxtwebservicedirectory.h │ │ ├── qxtwebservicedirectory_p.h │ │ ├── qxtwebslotservice.cpp │ │ └── qxtwebslotservice.h │ ├── spotify-sourceicon.png │ ├── spotify.desktop │ ├── spotify_key.h │ ├── spotifyiodevice.cpp │ ├── spotifyiodevice.h │ ├── spotifyloghandler.cpp │ ├── spotifyloghandler.h │ ├── spotifyplayback.cpp │ ├── spotifyplayback.h │ ├── spotifyplaylists.cpp │ ├── spotifyplaylists.h │ ├── spotifyresolver.cpp │ ├── spotifyresolver.h │ ├── spotifysearch.cpp │ ├── spotifysearch.h │ ├── spotifysession.cpp │ ├── spotifysession.h │ └── tomahawkspotify.kdev4 ├── authproxy ├── app.yaml ├── authproxy.go └── index.html ├── bandcamp ├── README.md └── content │ ├── contents │ ├── code │ │ ├── bandcamp-icon.png │ │ └── bandcamp.js │ └── images │ │ └── icon.png │ └── metadata.json ├── bandcampmobile └── content │ ├── contents │ ├── code │ │ └── bandcampm.js │ └── images │ │ └── icon.png │ └── metadata.json ├── beatsmusic ├── LICENSE ├── content │ ├── contents │ │ ├── code │ │ │ ├── async.js │ │ │ ├── beatsmusic-wide.png │ │ │ ├── beatsmusic.js │ │ │ ├── beatsmusic.png │ │ │ ├── config.ui │ │ │ └── test.js │ │ └── images │ │ │ ├── icon-16x16.png │ │ │ ├── icon.png │ │ │ ├── iconBackground.png │ │ │ └── iconWhite.png │ └── metadata.json └── helpers │ └── resolve.js ├── beets └── content │ ├── contents │ ├── code │ │ ├── beets-icon.png │ │ ├── beets.js │ │ └── config.ui │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── bower.json ├── deezer-metadata └── content │ ├── contents │ ├── code │ │ ├── deezer-metadata.js │ │ └── deezer-metadata.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── deezer └── content │ ├── contents │ ├── code │ │ ├── deezer.js │ │ └── deezer.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── docs ├── .gitignore ├── docs │ ├── basic.md │ ├── index.md │ ├── searchresolve.md │ └── urllookup.md └── mkdocs.yml ├── examples ├── javascript │ └── content │ │ ├── contents │ │ ├── code │ │ │ ├── config.ui │ │ │ └── example.js │ │ └── images │ │ │ ├── icon.png │ │ │ ├── iconBackground.png │ │ │ └── iconWhite.png │ │ └── metadata.json ├── php │ └── php-resolver.php └── streamtest │ └── content │ ├── contents │ └── code │ │ ├── config.ui │ │ └── streamtest.js │ └── metadata.json ├── gmusic ├── .gitignore ├── COPYING.txt ├── README.md └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ ├── gmusic.js │ │ └── play-logo.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── hatchet-metadata └── content │ ├── contents │ ├── code │ │ ├── hatchet-metadata.js │ │ └── hatchet-metadata.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── itunes └── content │ ├── contents │ ├── code │ │ └── itunes.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── jamendo └── content │ ├── contents │ ├── code │ │ ├── jamendo-icon.png │ │ └── jamendo.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── jazz-on-line ├── jazz-on-line-resolver.py ├── jol_search.py └── listing.txt ├── kibergrad └── content │ ├── contents │ ├── code │ │ └── kibergrad.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── lastfm └── content │ ├── contents │ ├── code │ │ ├── lastfm-icon.png │ │ └── lastfm.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── muzebra └── muzebra.js ├── myzuka └── content │ ├── contents │ ├── code │ │ └── myzuka.js │ └── images │ │ └── icon.png │ └── metadata.json ├── netease └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ └── netease.js │ └── images │ │ └── logo.png │ └── metadata.json ├── officialfm └── content │ ├── contents │ ├── code │ │ ├── officialfm-icon.png │ │ └── officialfm.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── omnify-metadata └── content │ ├── contents │ ├── code │ │ ├── icon.png │ │ └── omnify-metadata.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── package.json ├── prostopleer └── content │ ├── contents │ ├── code │ │ └── pleer.js │ └── images │ │ └── icon.png │ └── metadata.json ├── qobuz └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ ├── qobuz.js │ │ └── qobuz.png │ └── images │ │ └── icon.png │ └── metadata.json ├── rhapsody └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ └── rhapsody.js │ └── images │ │ └── logo.png │ └── metadata.json ├── soundcloud └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ ├── soundcloud-icon.png │ │ ├── soundcloud.js │ │ ├── soundcloud.png │ │ └── test.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── spotify-metadata └── content │ ├── contents │ ├── code │ │ ├── spotify-metadata.js │ │ └── spotify-metadata.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── spotify ├── LICENSE ├── content │ ├── contents │ │ ├── code │ │ │ ├── config.ui │ │ │ ├── spotify.js │ │ │ └── spotify.png │ │ └── images │ │ │ ├── icon.png │ │ │ ├── iconBackground.png │ │ │ └── iconWhite.png │ └── metadata.json └── native │ ├── CMakeLists.txt │ ├── CMakeModules │ ├── FindMicrohttpd.cmake │ └── FindSpotify.cmake │ └── main.cpp ├── subsonic └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ ├── subsonic.js │ │ └── subsonic.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── synology-audiostation └── content │ ├── contents │ ├── code │ │ ├── audiostation-icon.png │ │ ├── config.ui │ │ └── synology-audiostation.js │ └── images │ │ └── icon.png │ └── metadata.json ├── test ├── buster.js └── utils.js ├── tidal └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ └── tidal.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── tomahawk-metadata └── content │ ├── contents │ ├── code │ │ ├── tomahawk-metadata.js │ │ └── tomahawk-metadata.png │ └── images │ │ └── icon.png │ └── metadata.json ├── tomahk-metadata └── content │ ├── contents │ ├── code │ │ ├── tomahk-metadata.js │ │ └── tomahk-metadata.png │ └── images │ │ └── icon.png │ └── metadata.json ├── tools ├── getstreamurl.js ├── resolve.js ├── search.js └── urllookup.js ├── vibe3 └── content │ ├── contents │ ├── code │ │ └── vibe3.js │ └── images │ │ └── icon.png │ └── metadata.json ├── vkontakte └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ └── vkontakte.js │ └── images │ │ └── icon.png │ └── metadata.json ├── youtube-metadata └── content │ ├── contents │ ├── code │ │ ├── youtube-icon.png │ │ └── youtube-metadata.js │ └── images │ │ └── icon.png │ └── metadata.json ├── youtube └── content │ ├── contents │ ├── code │ │ ├── config.ui │ │ ├── youtube-icon.png │ │ ├── youtube.js │ │ └── youtube.png │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json ├── zaycevnet └── content │ ├── contents │ ├── code │ │ ├── strstr.js │ │ └── zaycev.js │ └── images │ │ ├── icon.png │ │ ├── iconBackground.png │ │ └── iconWhite.png │ └── metadata.json └── zv.fm └── content ├── contents ├── code │ └── zv.js └── images │ └── icon.png └── metadata.json /.gitignore: -------------------------------------------------------------------------------- 1 | .directory 2 | *.a 3 | *.o 4 | ._* 5 | *.user 6 | Makefile* 7 | moc_* 8 | *~ 9 | .DS_Store 10 | build 11 | *.axe 12 | *.md5 13 | node_modules/ 14 | metadata.desktop 15 | 16 | ###IntelliJ### 17 | 18 | *.iml 19 | *.ipr 20 | *.iws 21 | .idea/ -------------------------------------------------------------------------------- /4shared/content/contents/code/4shared-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/4shared/content/contents/code/4shared-icon.png -------------------------------------------------------------------------------- /4shared/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/4shared/content/contents/images/icon.png -------------------------------------------------------------------------------- /4shared/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "4Shared", 3 | "pluginName": "4shared", 4 | "author": "lasconic", 5 | "email": "lasconic@gmail.com", 6 | "version": "0.1.6", 7 | "website": "http://gettomahawk.com", 8 | "description": "Looks for tracks to play from www.4shared.com.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/4shared.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [ 15 | "contents/code/4shared-icon.png" 16 | ] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /8tracks/content/contents/code/8tracks-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/8tracks/content/contents/code/8tracks-icon.png -------------------------------------------------------------------------------- /8tracks/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/8tracks/content/contents/images/icon.png -------------------------------------------------------------------------------- /8tracks/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "8tracks", 3 | "pluginName": "8tracks", 4 | "author": "Janez and Leo", 5 | "email": "lfranchi@kde.org", 6 | "version": "0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Looks for tracks to play from 8tracks.com.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/8tracks.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [ 15 | "contents/code/8tracks-icon.png" 16 | ] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /amazon/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/amazon/content/contents/images/icon.png -------------------------------------------------------------------------------- /amazon/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/amazon/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /amazon/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/amazon/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /amazon/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Amazon Music", 3 | "pluginName": "amazon", 4 | "author": "Creepy Guy In The Corner", 5 | "email": "", 6 | "version": "0.0.13", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from Amazon Music", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/amazon.js", 12 | "icon": "contents/images/icon.png", 13 | "iconWhite": "contents/images/iconWhite.png", 14 | "iconBackground": "contents/images/iconBackground.png", 15 | "scripts": [], 16 | "resources": [ 17 | "contents/code/config.ui" 18 | ] 19 | }, 20 | "staticCapabilities": [ 21 | "configTestable" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /ampache/content/contents/code/ampache-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/code/ampache-icon.png -------------------------------------------------------------------------------- /ampache/content/contents/code/ampache.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/code/ampache.png -------------------------------------------------------------------------------- /ampache/content/contents/code/owncloud-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/code/owncloud-icon.png -------------------------------------------------------------------------------- /ampache/content/contents/code/owncloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/code/owncloud.png -------------------------------------------------------------------------------- /ampache/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/images/icon.png -------------------------------------------------------------------------------- /ampache/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /ampache/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/ampache/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /ampache/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ampache", 3 | "pluginName": "ampache", 4 | "author": "Dominik, Leo, Teo and Enno", 5 | "email": "teo@kde.org", 6 | "version": "0.4.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "Connects to an Ampache or ownCloud server and resolves tracks.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/ampache.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/config.ui", 18 | "contents/code/ampache-icon.png", 19 | "contents/code/ampache.png", 20 | "contents/code/owncloud-icon.png", 21 | "contents/code/owncloud.png" 22 | ] 23 | }, 24 | "staticCapabilities": [ 25 | "configTestable" 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /archive/README: -------------------------------------------------------------------------------- 1 | Resolvers in this directory are not functional anymore because the used API 2 | is not available anymore. The resolver may still be helpful as a basis for 3 | developing new resolvers. 4 | -------------------------------------------------------------------------------- /archive/dilandau/content/contents/code/dilandau-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/dilandau/content/contents/code/dilandau-icon.png -------------------------------------------------------------------------------- /archive/dilandau/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/dilandau/content/contents/images/icon.png -------------------------------------------------------------------------------- /archive/dilandau/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Dilandau", 3 | "pluginName": "dilandau", 4 | "author": "lasconic", 5 | "email": "lasconic@gmail.com", 6 | "version": "0.4.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Uses mp3 search engine http://www.dilandau.eu/ to find tracks.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/dilandau.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [ 15 | "contents/code/dilandau-icon.png" 16 | ] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /archive/exfm/content/contents/code/exfm-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/exfm/content/contents/code/exfm-icon.png -------------------------------------------------------------------------------- /archive/exfm/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/exfm/content/contents/images/icon.png -------------------------------------------------------------------------------- /archive/exfm/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ex.fm", 3 | "pluginName": "ex.fm", 4 | "author": "Nicolas and Uwe", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.3.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "Resolves tracks via the ex.fm API", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/exfm.js", 12 | "scripts": [ 13 | ], 14 | "icon": "contents/images/icon.png", 15 | "resources": [ 16 | "contents/code/exfm-icon.png" 17 | ] 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /archive/grooveshark/content/contents/code/grooveshark-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/grooveshark/content/contents/code/grooveshark-icon.png -------------------------------------------------------------------------------- /archive/grooveshark/content/contents/code/grooveshark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/grooveshark/content/contents/code/grooveshark.png -------------------------------------------------------------------------------- /archive/grooveshark/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/grooveshark/content/contents/images/icon.png -------------------------------------------------------------------------------- /archive/grooveshark/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/grooveshark/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /archive/grooveshark/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/grooveshark/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /archive/grooveshark/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Grooveshark", 3 | "pluginName": "grooveshark", 4 | "author": "Leo Franchi and Enno", 5 | "email": "lfranchi@kde.org", 6 | "version": "0.8.0", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches Grooveshark for playable tracks. Requires a VIP account.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/grooveshark.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/config.ui", 18 | "contents/code/grooveshark.png", 19 | "contents/code/grooveshark.svg", 20 | "contents/code/grooveshark-icon.png" 21 | ] 22 | }, 23 | "staticCapabilities": [ 24 | "configTestable" 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /archive/rdio-metadata/content/contents/code/rdio-metadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio-metadata/content/contents/code/rdio-metadata.png -------------------------------------------------------------------------------- /archive/rdio-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /archive/rdio-metadata/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio-metadata/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /archive/rdio-metadata/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio-metadata/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /archive/rdio-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Rdio Metadata", 3 | "pluginName": "rdio-metadata", 4 | "author": "Uwe L. Korn", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.1.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "(0.8+) Supports loading and drag and drop of Rdio URLs.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/rdio-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/rdio-metadata.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /archive/rdio/content/contents/code/rdio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio/content/contents/code/rdio.png -------------------------------------------------------------------------------- /archive/rdio/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio/content/contents/images/icon.png -------------------------------------------------------------------------------- /archive/rdio/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /archive/rdio/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/rdio/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /archive/rdio/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Rdio", 3 | "pluginName": "rdio", 4 | "author": "Uwe and Enno", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.3.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Stream music with Rdio. Premium Rdio account required.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/rdio.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/rdio.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /archive/spotify/appkey.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/appkey.h -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/linux/data/linux-gate-amd.sym: -------------------------------------------------------------------------------- 1 | MODULE Linux x86 B8CFDE93002D54DA1900A40AA1BD67690 linux-gate.so 2 | PUBLIC 400 0 __kernel_vsyscall 3 | STACK WIN 4 400 100 1 1 0 0 0 0 0 1 4 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/linux/data/linux-gate-intel.sym: -------------------------------------------------------------------------------- 1 | MODULE Linux x86 4FBDA58B5A1DF5A379E3CF19A235EA090 linux-gate.so 2 | PUBLIC 400 0 __kernel_vsyscall 3 | STACK WIN 4 400 200 3 3 0 0 0 0 0 1 -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/Framework/Breakpad_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Breakpad' target in the 3 | // 'Breakpad' project. 4 | // 5 | 6 | #ifdef __OBJC__ 7 | #import 8 | #endif 9 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/Framework/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleName 10 | ${PRODUCT_NAME} 11 | CFBundleIconFile 12 | 13 | CFBundleIdentifier 14 | com.googlecode.google-breakpad 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1.0 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/UnitTests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.yourcompany.${PRODUCT_NAME:identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/handler/minidump_tests32-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.google.breakpad.minidump_tests32 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/handler/minidump_tests64-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.google.breakpad.minidump_tests64 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | CSResourcesFileMapped 20 | yes 21 | 22 | 23 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/handler/obj-cTestCases-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | com.yourcompany.${PRODUCT_NAME:identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/handler/testcases/testdata/dump_syms_dwarf_data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/handler/testcases/testdata/dump_syms_dwarf_data -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/English.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/English.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/crash_report_sender-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleDisplayName 8 | ${EXECUTABLE_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIconFile 12 | crash_report_sender 13 | CFBundleIdentifier 14 | com.Breakpad.${PRODUCT_NAME:identifier} 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundleName 18 | ${EXECUTABLE_NAME} 19 | CFBundlePackageType 20 | APPL 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSHasLocalizedDisplayName 26 | 27 | NSMainNibFile 28 | MainMenu 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/crash_report_sender.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/crash_report_sender.icns -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/da.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/da.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/da.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/da.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/de.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/de.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/de.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/de.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/es.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/es.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/es.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/es.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/fr.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/fr.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/fr.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/fr.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/goArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/goArrow.png -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/it.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/it.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/it.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/it.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/ja.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/ja.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/ja.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/ja.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/nl.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/nl.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/nl.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/nl.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/no.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/no.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/no.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/no.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/sl.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/sl.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/sl.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/sl.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/sv.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/sv.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/sv.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/sv.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/tr.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/tr.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/sender/tr.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/sender/tr.lproj/Localizable.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/testapp/English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/testapp/English.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/testapp/bomb.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/testapp/bomb.icns -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/testapp/crashInMain: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/testapp/crashInMain -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/testapp/crashduringload: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/mac/testapp/crashduringload -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/mac/tests/testlogging.h: -------------------------------------------------------------------------------- 1 | // This file exists to override the processor logging for unit tests, 2 | // since it confuses XCode into thinking unit tests have failed. 3 | #include 4 | 5 | namespace google_breakpad { 6 | extern std::ostringstream info_log; 7 | } 8 | 9 | #define BPLOG_INFO_STREAM google_breakpad::info_log 10 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/windows/build/internal/release_defaults.gypi: -------------------------------------------------------------------------------- 1 | { 2 | 'msvs_settings': { 3 | 'VCCLCompilerTool': { 4 | 'Optimization': '2', 5 | 'StringPooling': 'true', 6 | 'OmitFramePointers': 'true', 7 | }, 8 | 'VCLinkerTool': { 9 | 'LinkIncremental': '1', 10 | 'OptimizeReferences': '2', 11 | 'EnableCOMDATFolding': '2', 12 | 'OptimizeForWindows98': '1', 13 | }, 14 | }, 15 | } 16 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/windows/build/internal/release_impl.gypi: -------------------------------------------------------------------------------- 1 | { 2 | 'includes': ['release_defaults.gypi'], 3 | } 4 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/windows/build/internal/release_impl_official.gypi: -------------------------------------------------------------------------------- 1 | { 2 | 'includes': ['release_defaults.gypi'], 3 | 'defines': ['OFFICIAL_BUILD'], 4 | 'msvs_settings': { 5 | 'VCCLCompilerTool': { 6 | 'Optimization': '3', 7 | 'InlineFunctionExpansion': '2', 8 | 'EnableIntrinsicFunctions': 'true', 9 | 'FavorSizeOrSpeed': '2', 10 | 'OmitFramePointers': 'true', 11 | 'EnableFiberSafeOptimizations': 'true', 12 | 'WholeProgramOptimization': 'true', 13 | }, 14 | 'VCLibrarianTool': { 15 | 'AdditionalOptions': ['/ltcg', '/expectedoutputsize:120000000'], 16 | }, 17 | 'VCLinkerTool': { 18 | 'LinkTimeCodeGeneration': '1', 19 | }, 20 | }, 21 | } 22 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/windows/build/release.gypi: -------------------------------------------------------------------------------- 1 | { 2 | 'conditions': [ 3 | # Handle build types. 4 | ['buildtype=="Dev"', { 5 | 'includes': ['internal/release_impl.gypi'], 6 | }], 7 | ['buildtype=="Official"', { 8 | 'includes': ['internal/release_impl_official.gypi'], 9 | }], 10 | # TODO(bradnelson): may also need: 11 | # checksenabled 12 | # coverage 13 | # dom_stats 14 | # pgo_instrument 15 | # pgo_optimize 16 | # purify 17 | ], 18 | } 19 | 20 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/windows/tests/crash_generation_app/crash_generation_app.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/windows/tests/crash_generation_app/crash_generation_app.ico -------------------------------------------------------------------------------- /archive/spotify/breakpad/client/windows/tests/crash_generation_app/small.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/client/windows/tests/crash_generation_app/small.ico -------------------------------------------------------------------------------- /archive/spotify/breakpad/common/mac/BreakpadDebug.xcconfig: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2010, Google Inc. 2 | // All rights reserved. 3 | // 4 | // Redistribution and use in source and binary forms, with or without 5 | // modification, are permitted provided that the following conditions are 6 | // met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above 11 | // copyright notice, this list of conditions and the following disclaimer 12 | // in the documentation and/or other materials provided with the 13 | // distribution. 14 | // * Neither the name of Google Inc. nor the names of its 15 | // contributors may be used to endorse or promote products derived from 16 | // this software without specific prior written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #include "Breakpad.xcconfig" 31 | 32 | GCC_OPTIMIZATION_LEVEL = 0 33 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/common/md5.h: -------------------------------------------------------------------------------- 1 | // Copyright 2007 Google Inc. All Rights Reserved. 2 | // Author: liuli@google.com (Liu Li) 3 | #ifndef COMMON_MD5_H__ 4 | #define COMMON_MD5_H__ 5 | 6 | #include 7 | 8 | namespace google_breakpad { 9 | 10 | typedef uint32_t u32; 11 | typedef uint8_t u8; 12 | 13 | struct MD5Context { 14 | u32 buf[4]; 15 | u32 bits[2]; 16 | u8 in[64]; 17 | }; 18 | 19 | void MD5Init(struct MD5Context *ctx); 20 | 21 | void MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len); 22 | 23 | void MD5Final(unsigned char digest[16], struct MD5Context *ctx); 24 | 25 | } // namespace google_breakpad 26 | 27 | #endif // COMMON_MD5_H__ 28 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/proto/README: -------------------------------------------------------------------------------- 1 | If you wish to use these protobufs, you must generate their source files 2 | using protoc from the protobuf project (http://code.google.com/p/protobuf/). 3 | 4 | ----- 5 | Troubleshooting for Protobuf: 6 | 7 | Install: 8 | If you are getting permission errors install, make sure you are not trying to 9 | install from an NFS. 10 | 11 | 12 | Running protoc: 13 | protoc: error while loading shared libraries: libprotobuf.so.0: cannot open 14 | shared object file: No such file or directory 15 | 16 | The issue is that Ubuntu 8.04 doesn't include /usr/local/lib in 17 | library paths. 18 | 19 | To fix it for your current terminal session, just type in 20 | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib 21 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_read_av.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_read_av.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_read_av_block_write.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_read_av_block_write.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_read_av_clobber_write.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_read_av_clobber_write.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_read_av_conditional.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_read_av_conditional.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_read_av_then_jmp.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_read_av_then_jmp.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_read_av_xchg_write.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_read_av_xchg_write.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_write_av.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_write_av.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/ascii_write_av_arg_to_call.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/ascii_write_av_arg_to_call.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/exec_av_on_stack.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/exec_av_on_stack.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/minidump2.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/minidump2.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/module1.out: -------------------------------------------------------------------------------- 1 | MODULE windows x86 111111111111111111111111111111111 module1.pdb 2 | INFO CODE_ID FFFFFFFF module1.exe 3 | FILE 1 file1_1.cc 4 | FILE 2 file1_2.cc 5 | FILE 3 file1_3.cc 6 | FUNC 1000 c 0 Function1_1 7 | 1000 4 44 1 8 | 1004 4 45 1 9 | 1008 4 46 1 10 | FUNC 1100 8 4 Function1_2 11 | 1100 4 65 2 12 | 1104 4 66 2 13 | FUNC 1200 100 8 Function1_3 14 | FUNC 1300 100 c Function1_4 15 | FUNC 2000 0 0 Test_Zero_Size_Function_Is_Ignored 16 | 2000 4 88 2 17 | PUBLIC 2800 0 PublicSymbol 18 | FUNC 3000 7000 42 LargeFunction 19 | 3000 7000 4098359 3 20 | STACK WIN 4 1000 c 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ = 21 | STACK WIN 4 1100 8 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ = 22 | STACK WIN 4 1100 100 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ = 23 | STACK WIN 4 1300 100 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ = 24 | STACK CFI INIT 3d40 af .cfa: $esp 4 + .ra: .cfa 4 - ^ 25 | STACK CFI 3d41 .cfa: $esp 8 + 26 | STACK CFI 3d43 .cfa: $ebp 8 + $ebp: .cfa 8 - ^ 27 | STACK CFI 3d54 $ebx: .cfa 20 - ^ 28 | STACK CFI 3d5a $esi: .cfa 16 - ^ 29 | STACK CFI 3d84 $edi: .cfa 12 - ^ 30 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/module2.out: -------------------------------------------------------------------------------- 1 | MODULE windows x86 222222222 module2.pdb 2 | FILE 1 file2_1.cc 3 | FILE 2 file2_2.cc 4 | FILE 3 file2_3.cc 5 | FUNC 2000 c 4 Function2_1 6 | 1000 4 54 1 7 | 1004 4 55 1 8 | 1008 4 56 1 9 | PUBLIC 2160 0 Public2_1 10 | FUNC 2170 14 4 Function2_2 11 | 2170 6 10 2 12 | 2176 4 12 2 13 | 217a 6 13 2 14 | 2180 4 21 2 15 | PUBLIC 21a0 0 Public2_2 16 | STACK WIN 4 2000 c 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ = 17 | STACK WIN 4 2170 14 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ = 18 | STACK CFI INIT 3df0 af .cfa: $esp 4 + .ra: .cfa 4 - ^ 19 | STACK CFI 3df1 .cfa: $esp 8 + 20 | STACK CFI 3df3 .cfa: $ebp 8 + $ebp: .cfa 8 - ^ 21 | STACK CFI 3e04 $ebx: .cfa 20 - ^ 22 | STACK CFI 3e0a $esi: .cfa 16 - ^ 23 | STACK CFI 3e34 $edi: .cfa 12 - ^ 24 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/module3_bad.out: -------------------------------------------------------------------------------- 1 | MODULE windows x86 333333333333333333333333333333333 module3.pdb 2 | FILE 1 file1.cc 3 | FUNC 1000 4 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/module4_bad.out: -------------------------------------------------------------------------------- 1 | MODULE windows x86 444444444444444444444444444444444 module4.pdb 2 | FILE 1 file4_1.cc 3 | FILE 2 file4_2.cc 4 | 1000 4 44 1 5 | 1004 4 45 1 6 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/null_read_av.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/null_read_av.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/null_write_av.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/null_write_av.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/read_av_clobber_write.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/read_av_clobber_write.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/read_av_conditional.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/read_av_conditional.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/read_av_non_null.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/read_av_non_null.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/stack_exhaustion.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/stack_exhaustion.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/processor/testdata/write_av_non_null.dmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/processor/testdata/write_av_non_null.dmp -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/curl/COPYING: -------------------------------------------------------------------------------- 1 | COPYRIGHT AND PERMISSION NOTICE 2 | 3 | Copyright (c) 1996 - 2011, Daniel Stenberg, . 4 | 5 | All rights reserved. 6 | 7 | Permission to use, copy, modify, and distribute this software for any purpose 8 | with or without fee is hereby granted, provided that the above copyright 9 | notice and this permission notice appear in all copies. 10 | 11 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 12 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 13 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN 14 | NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 15 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 16 | OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE 17 | OR OTHER DEALINGS IN THE SOFTWARE. 18 | 19 | Except as contained in this notice, the name of a copyright holder shall not 20 | be used in advertising or otherwise to promote the sale, use or other dealings 21 | in this Software without prior written authorization of the copyright holder. 22 | 23 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/curl/stdcheaders.h: -------------------------------------------------------------------------------- 1 | #ifndef __STDC_HEADERS_H 2 | #define __STDC_HEADERS_H 3 | /*************************************************************************** 4 | * _ _ ____ _ 5 | * Project ___| | | | _ \| | 6 | * / __| | | | |_) | | 7 | * | (__| |_| | _ <| |___ 8 | * \___|\___/|_| \_\_____| 9 | * 10 | * Copyright (C) 1998 - 2009, Daniel Stenberg, , et al. 11 | * 12 | * This software is licensed as described in the file COPYING, which 13 | * you should have received as part of this distribution. The terms 14 | * are also available at http://curl.haxx.se/docs/copyright.html. 15 | * 16 | * You may opt to use, copy, modify, merge, publish, distribute and/or sell 17 | * copies of the Software, and permit persons to whom the Software is 18 | * furnished to do so, under the terms of the COPYING file. 19 | * 20 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 21 | * KIND, either express or implied. 22 | * 23 | * $Id: stdcheaders.h,v 1.9 2009-05-18 12:25:45 yangtse Exp $ 24 | ***************************************************************************/ 25 | 26 | #include 27 | 28 | size_t fread (void *, size_t, size_t, FILE *); 29 | size_t fwrite (const void *, size_t, size_t, FILE *); 30 | 31 | int strcasecmp(const char *, const char *); 32 | int strncasecmp(const char *, const char *, size_t); 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/curl/types.h: -------------------------------------------------------------------------------- 1 | /* not used */ 2 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/AUTHORS: -------------------------------------------------------------------------------- 1 | opensource@google.com 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/NEWS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/glog/NEWS -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/README: -------------------------------------------------------------------------------- 1 | This repository contains a C++ implementation of the Google logging 2 | module. Documentation for the implementation is in doc/. 3 | 4 | See INSTALL for (generic) installation instructions for C++: basically 5 | ./configure && make && make install 6 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/README.windows: -------------------------------------------------------------------------------- 1 | This project has begun being ported to Windows. A working solution 2 | file exists in this directory: 3 | google-glog.sln 4 | 5 | You can load this solution file into VC++ 9.0 (Visual Studio 6 | 2008). You may also be able to use this solution file with older 7 | Visual Studios by converting the solution file. 8 | 9 | Note that stack tracing and some unittests are not ported 10 | yet. 11 | 12 | You can also link glog code in statically -- see the example project 13 | libglog_static and logging_unittest_static, which does this. For this 14 | to work, you'll need to add "/D GOOGLE_GLOG_DLL_DECL=" to the compile 15 | line of every glog's .cc file. 16 | 17 | I have little experience with Windows programming, so there may be 18 | better ways to set this up than I've done! If you run across any 19 | problems, please post to the google-glog Google Group, or report 20 | them on the google-glog Google Code site: 21 | http://groups.google.com/group/google-glog 22 | http://code.google.com/p/google-glog/issues/list 23 | 24 | -- Shinichiro Hamaji 25 | 26 | Last modified: 23 January 2009 27 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/libglog.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libglog 7 | Description: Google Log (glog) C++ logging framework 8 | Version: @VERSION@ 9 | Libs: -L${libdir} -lglog 10 | Cflags: -I${includedir} 11 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/ac_have_attribute.m4: -------------------------------------------------------------------------------- 1 | AC_DEFUN([AX_C___ATTRIBUTE__], [ 2 | AC_MSG_CHECKING(for __attribute__) 3 | AC_CACHE_VAL(ac_cv___attribute__, [ 4 | AC_TRY_COMPILE( 5 | [#include 6 | static void foo(void) __attribute__ ((unused)); 7 | void foo(void) { exit(1); }], 8 | [], 9 | ac_cv___attribute__=yes, 10 | ac_cv___attribute__=no 11 | )]) 12 | if test "$ac_cv___attribute__" = "yes"; then 13 | AC_DEFINE(HAVE___ATTRIBUTE__, 1, [define if your compiler has __attribute__]) 14 | fi 15 | AC_MSG_RESULT($ac_cv___attribute__) 16 | ]) 17 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/ac_have_builtin_expect.m4: -------------------------------------------------------------------------------- 1 | AC_DEFUN([AX_C___BUILTIN_EXPECT], [ 2 | AC_MSG_CHECKING(for __builtin_expect) 3 | AC_CACHE_VAL(ac_cv___builtin_expect, [ 4 | AC_TRY_COMPILE( 5 | [int foo(void) { if (__builtin_expect(0, 0)) return 1; return 0; }], 6 | [], 7 | ac_cv___builtin_expect=yes, 8 | ac_cv___builtin_expect=no 9 | )]) 10 | if test "$ac_cv___builtin_expect" = "yes"; then 11 | AC_DEFINE(HAVE___BUILTIN_EXPECT, 1, [define if your compiler has __builtin_expect]) 12 | fi 13 | AC_MSG_RESULT($ac_cv___builtin_expect) 14 | ]) 15 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/ac_have_sync_val_compare_and_swap.m4: -------------------------------------------------------------------------------- 1 | AC_DEFUN([AX_C___SYNC_VAL_COMPARE_AND_SWAP], [ 2 | AC_MSG_CHECKING(for __sync_val_compare_and_swap) 3 | AC_CACHE_VAL(ac_cv___sync_val_compare_and_swap, [ 4 | AC_TRY_LINK( 5 | [int main() { int a; if (__sync_val_compare_and_swap(&a, 0, 1)) return 1; return 0; }], 6 | [], 7 | ac_cv___sync_val_compare_and_swap=yes, 8 | ac_cv___sync_val_compare_and_swap=no 9 | )]) 10 | if test "$ac_cv___sync_val_compare_and_swap" = "yes"; then 11 | AC_DEFINE(HAVE___SYNC_VAL_COMPARE_AND_SWAP, 1, [define if your compiler has __sync_val_compare_and_swap]) 12 | fi 13 | AC_MSG_RESULT($ac_cv___sync_val_compare_and_swap) 14 | ]) 15 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/ac_rwlock.m4: -------------------------------------------------------------------------------- 1 | # TODO(csilvers): it would be better to actually try to link against 2 | # -pthreads, to make sure it defines these methods, but that may be 3 | # too hard, since pthread support is really tricky. 4 | 5 | # Check for support for pthread_rwlock_init() etc. 6 | # These aren't posix, but are widely supported. To get them on linux, 7 | # you need to define _XOPEN_SOURCE first, so this check assumes your 8 | # application does that. 9 | # 10 | # Note: OS X (as of 6/1/06) seems to support pthread_rwlock, but 11 | # doesn't define PTHREAD_RWLOCK_INITIALIZER. Therefore, we don't test 12 | # that particularly macro. It's probably best if you don't use that 13 | # macro in your code either. 14 | 15 | AC_DEFUN([AC_RWLOCK], 16 | [AC_CACHE_CHECK(support for pthread_rwlock_* functions, 17 | ac_cv_rwlock, 18 | [AC_LANG_SAVE 19 | AC_LANG_C 20 | AC_TRY_COMPILE([#define _XOPEN_SOURCE 500 21 | #include ], 22 | [pthread_rwlock_t l; pthread_rwlock_init(&l, NULL); 23 | pthread_rwlock_rdlock(&l); 24 | return 0;], 25 | ac_cv_rwlock=yes, ac_cv_rwlock=no) 26 | AC_LANG_RESTORE 27 | ]) 28 | if test "$ac_cv_rwlock" = yes; then 29 | AC_DEFINE(HAVE_RWLOCK,1,[define if the compiler implements pthread_rwlock_*]) 30 | fi 31 | ]) 32 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/ltversion.m4: -------------------------------------------------------------------------------- 1 | # ltversion.m4 -- version numbers -*- Autoconf -*- 2 | # 3 | # Copyright (C) 2004 Free Software Foundation, Inc. 4 | # Written by Scott James Remnant, 2004 5 | # 6 | # This file is free software; the Free Software Foundation gives 7 | # unlimited permission to copy and/or distribute it, with or without 8 | # modifications, as long as this notice is preserved. 9 | 10 | # Generated from ltversion.in. 11 | 12 | # serial 3017 ltversion.m4 13 | # This file is part of GNU Libtool 14 | 15 | m4_define([LT_PACKAGE_VERSION], [2.2.6b]) 16 | m4_define([LT_PACKAGE_REVISION], [1.3017]) 17 | 18 | AC_DEFUN([LTVERSION_VERSION], 19 | [macro_version='2.2.6b' 20 | macro_revision='1.3017' 21 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) 22 | _LT_DECL(, macro_revision, 0) 23 | ]) 24 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/namespaces.m4: -------------------------------------------------------------------------------- 1 | # Checks whether the compiler implements namespaces 2 | AC_DEFUN([AC_CXX_NAMESPACES], 3 | [AC_CACHE_CHECK(whether the compiler implements namespaces, 4 | ac_cv_cxx_namespaces, 5 | [AC_LANG_SAVE 6 | AC_LANG_CPLUSPLUS 7 | AC_TRY_COMPILE([namespace Outer { 8 | namespace Inner { int i = 0; }}], 9 | [using namespace Outer::Inner; return i;], 10 | ac_cv_cxx_namespaces=yes, 11 | ac_cv_cxx_namespaces=no) 12 | AC_LANG_RESTORE]) 13 | if test "$ac_cv_cxx_namespaces" = yes; then 14 | AC_DEFINE(HAVE_NAMESPACES, 1, [define if the compiler implements namespaces]) 15 | fi]) 16 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/stl_namespace.m4: -------------------------------------------------------------------------------- 1 | # We check what namespace stl code like vector expects to be executed in 2 | 3 | AC_DEFUN([AC_CXX_STL_NAMESPACE], 4 | [AC_CACHE_CHECK( 5 | what namespace STL code is in, 6 | ac_cv_cxx_stl_namespace, 7 | [AC_REQUIRE([AC_CXX_NAMESPACES]) 8 | AC_LANG_SAVE 9 | AC_LANG_CPLUSPLUS 10 | AC_TRY_COMPILE([#include ], 11 | [vector t; return 0;], 12 | ac_cv_cxx_stl_namespace=none) 13 | AC_TRY_COMPILE([#include ], 14 | [std::vector t; return 0;], 15 | ac_cv_cxx_stl_namespace=std) 16 | AC_LANG_RESTORE]) 17 | if test "$ac_cv_cxx_stl_namespace" = none; then 18 | AC_DEFINE(STL_NAMESPACE,, 19 | [the namespace where STL code like vector<> is defined]) 20 | fi 21 | if test "$ac_cv_cxx_stl_namespace" = std; then 22 | AC_DEFINE(STL_NAMESPACE,std, 23 | [the namespace where STL code like vector<> is defined]) 24 | fi 25 | ]) 26 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/m4/using_operator.m4: -------------------------------------------------------------------------------- 1 | AC_DEFUN([AC_CXX_USING_OPERATOR], 2 | [AC_CACHE_CHECK( 3 | whether compiler supports using ::operator<<, 4 | ac_cv_cxx_using_operator, 5 | [AC_LANG_SAVE 6 | AC_LANG_CPLUSPLUS 7 | AC_TRY_COMPILE([#include 8 | std::ostream& operator<<(std::ostream&, struct s);], 9 | [using ::operator<<; return 0;], 10 | ac_cv_cxx_using_operator=1, 11 | ac_cv_cxx_using_operator=0) 12 | AC_LANG_RESTORE]) 13 | if test "$ac_cv_cxx_using_operator" = 1; then 14 | AC_DEFINE(HAVE_USING_OPERATOR, 1, [define if the compiler supports using expression for operator]) 15 | fi]) 16 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/README: -------------------------------------------------------------------------------- 1 | The list of files here isn't complete. For a step-by-step guide on 2 | how to set this package up correctly, check out 3 | http://www.debian.org/doc/maint-guide/ 4 | 5 | Most of the files that are in this directory are boilerplate. 6 | However, you may need to change the list of binary-arch dependencies 7 | in 'rules'. 8 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/changelog: -------------------------------------------------------------------------------- 1 | google-glog (0.3.1-1) unstable; urgency=low 2 | 3 | * New upstream release. 4 | 5 | -- Google Inc. Tue, 15 Jun 2010 13:50:47 +0900 6 | 7 | google-glog (0.3-1) unstable; urgency=low 8 | 9 | * New upstream release. 10 | 11 | -- Google Inc. Thu, 30 Jul 2009 21:31:35 +0900 12 | 13 | google-glog (0.2.1-1) unstable; urgency=low 14 | 15 | * New upstream release. 16 | 17 | -- Google Inc. Fri, 10 Apr 2009 15:24:17 +0900 18 | 19 | google-glog (0.2-1) unstable; urgency=low 20 | 21 | * New upstream release. 22 | 23 | -- Google Inc. Fri, 23 Jan 2009 03:14:29 +0900 24 | 25 | google-glog (0.1.2-1) unstable; urgency=low 26 | 27 | * New upstream release. 28 | 29 | -- Google Inc. Tue, 18 Nov 2008 20:37:00 +0900 30 | 31 | google-glog (0.1.1-1) unstable; urgency=low 32 | 33 | * New upstream release. 34 | 35 | -- Google Inc. Wed, 15 Oct 2008 20:38:19 +0900 36 | 37 | google-glog (0.1-1) unstable; urgency=low 38 | 39 | * Initial release. 40 | 41 | -- Google Inc. Sat, 10 May 2008 12:31:10 +0900 42 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/compat: -------------------------------------------------------------------------------- 1 | 4 2 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/control: -------------------------------------------------------------------------------- 1 | Source: google-glog 2 | Priority: optional 3 | Maintainer: Google Inc. 4 | Build-Depends: debhelper (>= 4.0.0), binutils 5 | Standards-Version: 3.6.1 6 | 7 | Package: libgoogle-glog-dev 8 | Section: libdevel 9 | Architecture: any 10 | Depends: libgoogle-glog0 (= ${Source-Version}) 11 | Description: a library that implements application-level logging. 12 | This library provides logging APIs based on C++-style streams and 13 | various helper macros. The devel package contains static and debug 14 | libraries and header files for developing applications that use the 15 | google-glog package. 16 | 17 | Package: libgoogle-glog0 18 | Section: libs 19 | Architecture: any 20 | Depends: ${shlibs:Depends} 21 | Description: a library that implements application-level logging. 22 | This library provides logging APIs based on C++-style streams and 23 | various helper macros. 24 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/docs: -------------------------------------------------------------------------------- 1 | AUTHORS 2 | COPYING 3 | ChangeLog 4 | INSTALL 5 | NEWS 6 | README 7 | doc/designstyle.css 8 | doc/glog.html 9 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/libgoogle-glog-dev.dirs: -------------------------------------------------------------------------------- 1 | usr/lib 2 | usr/lib/pkgconfig 3 | usr/include 4 | usr/include/glog 5 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/libgoogle-glog-dev.install: -------------------------------------------------------------------------------- 1 | usr/include/glog/* 2 | usr/lib/lib*.so 3 | usr/lib/lib*.a 4 | usr/lib/*.la 5 | usr/lib/pkgconfig/* 6 | debian/tmp/usr/include/glog/* 7 | debian/tmp/usr/lib/lib*.so 8 | debian/tmp/usr/lib/lib*.a 9 | debian/tmp/usr/lib/*.la 10 | debian/tmp/usr/lib/pkgconfig/* 11 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/libgoogle-glog0.dirs: -------------------------------------------------------------------------------- 1 | usr/lib 2 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/glog/packages/deb/libgoogle-glog0.install: -------------------------------------------------------------------------------- 1 | usr/lib/lib*.so.* 2 | debian/tmp/usr/lib/lib*.so.* 3 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/TODO: -------------------------------------------------------------------------------- 1 | x86_format.c 2 | ------------ 3 | intel: jmpf -> jmp, callf -> call 4 | att: jmpf -> ljmp, callf -> lcall 5 | 6 | opcode table 7 | ------------ 8 | finish typing instructions 9 | fix flag clear/set/toggle types 10 | 11 | ix64 stuff 12 | ---------- 13 | document output file formats in web page 14 | features doc: register aliases, implicit operands, stack mods, 15 | ring0 flags, eflags, cpu model/isa 16 | 17 | ia32_handle_* implementation 18 | 19 | fix operand 0F C2 20 | CMPPS 21 | 22 | * sysenter, sysexit as CALL types -- preceded by MSR writes 23 | * SYSENTER/SYSEXIT stack : overwrites SS, ESP 24 | * stos, cmps, scas, movs, ins, outs, lods -> OP_PTR 25 | * OP_SIZE in implicit operands 26 | * use OP_SIZE to choose reg sizes! 27 | 28 | DONE?? : 29 | implicit operands: provide action ? 30 | e.g. add/inc for stach, write, etc 31 | replace table numbers in opcodes.dat with 32 | #defines for table names 33 | 34 | replace 0 with INSN_INVALID [or maybe FF for imnvalid and 00 for Not Applicable */ 35 | no wait that is only for prefix tables -- n/p 36 | 37 | if ( prefx) only use if insn != invalid 38 | 39 | these should cover all the wacky disasm exceptions 40 | 41 | for the rep one we can chet, match only a 0x90 42 | 43 | todo: privilege | ring 44 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_implicit.h: -------------------------------------------------------------------------------- 1 | #ifndef IA32_IMPLICIT_H 2 | #define IA32_IMPLICIT_H 3 | 4 | #include "libdis.h" 5 | 6 | /* OK, this is a hack to deal with prefixes having implicit operands... 7 | * thought I had removed all the old hackishness ;( */ 8 | 9 | #define IDX_IMPLICIT_REP 41 /* change this if the table changes! */ 10 | 11 | unsigned int ia32_insn_implicit_ops( x86_insn_t *insn, unsigned int impl_idx ); 12 | 13 | #endif 14 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_invariant.h: -------------------------------------------------------------------------------- 1 | #ifndef IA32_INVARIANT_H 2 | #define IA32_INVARIANT_H 3 | 4 | #include "libdis.h" 5 | 6 | size_t ia32_disasm_invariant( unsigned char *buf, size_t buf_len, 7 | x86_invariant_t *inv); 8 | 9 | size_t ia32_disasm_size( unsigned char *buf, size_t buf_len ); 10 | 11 | #endif 12 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_modrm.h: -------------------------------------------------------------------------------- 1 | #ifndef IA32_MODRM_H 2 | #define IA32_MODRM_H 3 | 4 | #include "libdis.h" 5 | #include "ia32_insn.h" 6 | 7 | size_t ia32_modrm_decode( unsigned char *buf, unsigned int buf_len, 8 | x86_op_t *op, x86_insn_t *insn, 9 | size_t gen_regs ); 10 | 11 | void ia32_reg_decode( unsigned char byte, x86_op_t *op, size_t gen_regs ); 12 | 13 | #endif 14 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_opcode_tables.h: -------------------------------------------------------------------------------- 1 | #define idx_Main 0 2 | #define idx_66 1 3 | #define idx_F2 2 4 | #define idx_F3 3 5 | #define idx_0F 4 6 | #define idx_660F 5 7 | #define idx_F20F 6 8 | #define idx_F30F 7 9 | #define idx_0F00 8 10 | #define idx_0F01 9 11 | #define idx_0F0111 10 12 | #define idx_0F12 11 13 | #define idx_0F16 12 14 | #define idx_0F18 13 15 | #define idx_0F71 14 16 | #define idx_660F71 15 17 | #define idx_0F72 16 18 | #define idx_660F72 17 19 | #define idx_0F73 18 20 | #define idx_660F73 19 21 | #define idx_0FAE 20 22 | #define idx_0FBA 21 23 | #define idx_0FC7 22 24 | #define idx_0FB9 23 25 | #define idx_C6 24 26 | #define idx_C7 25 27 | #define idx_80 26 28 | #define idx_81 27 29 | #define idx_82 28 30 | #define idx_83 29 31 | #define idx_C0 30 32 | #define idx_C1 31 33 | #define idx_D0 32 34 | #define idx_D1 33 35 | #define idx_D2 34 36 | #define idx_D3 35 37 | #define idx_F6 36 38 | #define idx_F7 37 39 | #define idx_FE 38 40 | #define idx_FF 39 41 | #define idx_D8 40 42 | #define idx_D8C0 41 43 | #define idx_D9 42 44 | #define idx_D9C0 43 45 | #define idx_DA 44 46 | #define idx_DAC0 45 47 | #define idx_DB 46 48 | #define idx_DBC0 47 49 | #define idx_DC 48 50 | #define idx_DCC0 49 51 | #define idx_DD 50 52 | #define idx_DDC0 51 53 | #define idx_DE 52 54 | #define idx_DEC0 53 55 | #define idx_DF 54 56 | #define idx_DFC0 55 57 | #define idx_0F0F 56 58 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_operand.h: -------------------------------------------------------------------------------- 1 | #ifndef IA32_OPERAND_H 2 | #define IA32_OPERAND_H 3 | 4 | #include "libdis.h" 5 | #include "ia32_insn.h" 6 | 7 | size_t ia32_decode_operand( unsigned char *buf, size_t buf_len, 8 | x86_insn_t *insn, unsigned int raw_op, 9 | unsigned int raw_flags, unsigned int prefixes, 10 | unsigned char modrm ); 11 | #endif 12 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_settings.c: -------------------------------------------------------------------------------- 1 | #include "libdis.h" 2 | #include "ia32_settings.h" 3 | #include "ia32_reg.h" 4 | #include "ia32_insn.h" 5 | 6 | ia32_settings_t ia32_settings = { 7 | 1, 0xF4, 8 | MAX_INSTRUCTION_SIZE, 9 | 4, 4, 8, 4, 8, 10 | REG_ESP_INDEX, REG_EBP_INDEX, REG_EIP_INDEX, REG_FLAGS_INDEX, 11 | REG_DWORD_OFFSET, REG_SEG_OFFSET, REG_FPU_OFFSET, 12 | opt_none 13 | }; 14 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/ia32_settings.h: -------------------------------------------------------------------------------- 1 | #ifndef IA32_SETTINGS_H 2 | #define IA32_SETTINGS_H 3 | 4 | #include "libdis.h" 5 | 6 | typedef struct { 7 | /* options */ 8 | unsigned char endian, /* 0 = big, 1 = little */ 9 | wc_byte, /* wildcard byte */ 10 | max_insn, /* max insn size */ 11 | sz_addr, /* default address size */ 12 | sz_oper, /* default operand size */ 13 | sz_byte, /* # bits in byte */ 14 | sz_word, /* # bytes in machine word */ 15 | sz_dword; /* # bytes in machine dword */ 16 | unsigned int id_sp_reg, /* id of stack pointer */ 17 | id_fp_reg, /* id of frame pointer */ 18 | id_ip_reg, /* id of instruction pointer */ 19 | id_flag_reg, /* id of flags register */ 20 | offset_gen_regs, /* start of general regs */ 21 | offset_seg_regs, /* start of segment regs */ 22 | offset_fpu_regs; /* start of floating point regs */ 23 | /* user-controlled settings */ 24 | enum x86_options options; 25 | } ia32_settings_t; 26 | 27 | #endif 28 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/qword.h: -------------------------------------------------------------------------------- 1 | #ifndef LIBDISASM_QWORD_H 2 | #define LIBDISASM_QWORD_H 3 | 4 | #include 5 | 6 | /* platform independent data types */ 7 | 8 | #ifdef _MSC_VER 9 | typedef __int64 qword_t; 10 | #else 11 | typedef int64_t qword_t; 12 | #endif 13 | 14 | #endif 15 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/swig/ruby/extconf.rb: -------------------------------------------------------------------------------- 1 | require 'mkmf' 2 | find_library('disasm', 'x86_init', "/usr/local/lib", "../..") 3 | create_makefile('x86disasm') 4 | 5 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/x86_imm.h: -------------------------------------------------------------------------------- 1 | #ifndef x86_IMM_H 2 | #define x86_IMM_H 3 | 4 | #include "./qword.h" 5 | #include 6 | 7 | #ifdef WIN32 8 | #include 9 | #endif 10 | 11 | /* these are in the global x86 namespace but are not a part of the 12 | * official API */ 13 | unsigned int x86_imm_sized( unsigned char *buf, size_t buf_len, void *dest, 14 | unsigned int size ); 15 | 16 | unsigned int x86_imm_signsized( unsigned char *buf, size_t buf_len, void *dest, 17 | unsigned int size ); 18 | #endif 19 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/libdisasm/x86_operand_list.h: -------------------------------------------------------------------------------- 1 | #ifndef X86_OPERAND_LIST_H 2 | #define X86_OPERAND_LIST_H 3 | #include "libdis.h" 4 | 5 | 6 | x86_op_t * x86_operand_new( x86_insn_t *insn ); 7 | 8 | #endif 9 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/CONTRIBUTORS.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/CONTRIBUTORS.txt -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Run this script to generate the configure script and other files that will 4 | # be included in the distribution. These files are not checked in because they 5 | # are automatically generated. 6 | 7 | set -e 8 | 9 | # Check that we're being run from the right directory. 10 | if test ! -f src/google/protobuf/stubs/common.h; then 11 | cat >&2 << __EOF__ 12 | Could not find source code. Make sure you are running this script from the 13 | root of the distribution tree. 14 | __EOF__ 15 | exit 1 16 | fi 17 | 18 | # Check that gtest is present. Usually it is already there since the 19 | # directory is set up as an SVN external. 20 | if test ! -e gtest; then 21 | echo "Google Test not present. Fetching gtest-1.5.0 from the web..." 22 | curl http://googletest.googlecode.com/files/gtest-1.5.0.tar.bz2 | tar jx 23 | mv gtest-1.5.0 gtest 24 | fi 25 | 26 | set -ex 27 | 28 | # Temporary hack: Must change C runtime library to "multi-threaded DLL", 29 | # otherwise it will be set to "multi-threaded static" when MSVC upgrades 30 | # the project file to MSVC 2005/2008. vladl of Google Test says gtest will 31 | # probably change their default to match, then this will be unnecessary. 32 | # One of these mappings converts the debug configuration and the other 33 | # converts the release configuration. I don't know which is which. 34 | sed -i -e 's/RuntimeLibrary="5"/RuntimeLibrary="3"/g; 35 | s/RuntimeLibrary="4"/RuntimeLibrary="2"/g;' gtest/msvc/*.vcproj 36 | 37 | # TODO(kenton): Remove the ",no-obsolete" part and fix the resulting warnings. 38 | autoreconf -f -i -Wall,no-obsolete 39 | 40 | rm -rf autom4te.cache config.h.in~ 41 | exit 0 42 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/benchmarks/google_message1.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/benchmarks/google_message1.dat -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/benchmarks/google_message2.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/benchmarks/google_message2.dat -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/editors/README.txt: -------------------------------------------------------------------------------- 1 | This directory contains syntax highlighting and configuration files for editors 2 | to properly display Protocol Buffer files. 3 | 4 | See each file's header comment for directions on how to use it with the 5 | appropriate editor. 6 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/examples/README.txt: -------------------------------------------------------------------------------- 1 | This directory contains example code that uses Protocol Buffers to manage an 2 | address book. Two programs are provided, each with three different 3 | implementations, one written in each of C++, Java, and Python. The add_person 4 | example adds a new person to an address book, prompting the user to input 5 | the person's information. The list_people example lists people already in the 6 | address book. The examples use the exact same format in all three languages, 7 | so you can, for example, use add_person_java to create an address book and then 8 | use list_people_python to read it. 9 | 10 | You must install the protobuf package before you can build these. 11 | 12 | To build all the examples (on a unix-like system), simply run "make". This 13 | creates the following executable files in the current directory: 14 | add_person_cpp list_people_cpp 15 | add_person_java list_people_java 16 | add_person_python list_people_python 17 | 18 | If you only want to compile examples in one language, use "make cpp"*, 19 | "make java", or "make python". 20 | 21 | All of these programs simply take an address book file as their parameter. 22 | The add_person programs will create the file if it doesn't already exist. 23 | 24 | These examples are part of the Protocol Buffers tutorial, located at: 25 | http://code.google.com/apis/protocolbuffers/docs/tutorials.html 26 | 27 | * Note that on some platforms you may have to edit the Makefile and remove 28 | "-lpthread" from the linker commands (perhaps replacing it with something else). 29 | We didn't do this automatically because we wanted to keep the example simple. 30 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/examples/addressbook.proto: -------------------------------------------------------------------------------- 1 | // See README.txt for information and build instructions. 2 | 3 | package tutorial; 4 | 5 | option java_package = "com.example.tutorial"; 6 | option java_outer_classname = "AddressBookProtos"; 7 | 8 | message Person { 9 | required string name = 1; 10 | required int32 id = 2; // Unique ID number for this person. 11 | optional string email = 3; 12 | 13 | enum PhoneType { 14 | MOBILE = 0; 15 | HOME = 1; 16 | WORK = 2; 17 | } 18 | 19 | message PhoneNumber { 20 | required string number = 1; 21 | optional PhoneType type = 2 [default = HOME]; 22 | } 23 | 24 | repeated PhoneNumber phone = 4; 25 | } 26 | 27 | // Our address book file is just one of these. 28 | message AddressBook { 29 | repeated Person person = 1; 30 | } 31 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/examples/list_people.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python 2 | 3 | # See README.txt for information and build instructions. 4 | 5 | import addressbook_pb2 6 | import sys 7 | 8 | # Iterates though all people in the AddressBook and prints info about them. 9 | def ListPeople(address_book): 10 | for person in address_book.person: 11 | print "Person ID:", person.id 12 | print " Name:", person.name 13 | if person.HasField('email'): 14 | print " E-mail address:", person.email 15 | 16 | for phone_number in person.phone: 17 | if phone_number.type == addressbook_pb2.Person.MOBILE: 18 | print " Mobile phone #:", 19 | elif phone_number.type == addressbook_pb2.Person.HOME: 20 | print " Home phone #:", 21 | elif phone_number.type == addressbook_pb2.Person.WORK: 22 | print " Work phone #:", 23 | print phone_number.number 24 | 25 | # Main procedure: Reads the entire address book from a file and prints all 26 | # the information inside. 27 | if len(sys.argv) != 2: 28 | print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE" 29 | sys.exit(-1) 30 | 31 | address_book = addressbook_pb2.AddressBook() 32 | 33 | # Read the existing address book. 34 | f = open(sys.argv[1], "rb") 35 | address_book.ParseFromString(f.read()) 36 | f.close() 37 | 38 | ListPeople(address_book) 39 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/generate_descriptor_proto.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Run this script to regenerate descriptor.pb.{h,cc} after the protocol 4 | # compiler changes. Since these files are compiled into the protocol compiler 5 | # itself, they cannot be generated automatically by a make rule. "make check" 6 | # will fail if these files do not match what the protocol compiler would 7 | # generate. 8 | # 9 | # HINT: Flags passed to generate_descriptor_proto.sh will be passed directly 10 | # to make when building protoc. This is particularly useful for passing 11 | # -j4 to run 4 jobs simultaneously. 12 | 13 | if test ! -e src/google/protobuf/stubs/common.h; then 14 | cat >&2 << __EOF__ 15 | Could not find source code. Make sure you are running this script from the 16 | root of the distribution tree. 17 | __EOF__ 18 | exit 1 19 | fi 20 | 21 | if test ! -e src/Makefile; then 22 | cat >&2 << __EOF__ 23 | Could not find src/Makefile. You must run ./configure (and perhaps 24 | ./autogen.sh) first. 25 | __EOF__ 26 | exit 1 27 | fi 28 | 29 | cd src 30 | make $@ protoc && 31 | ./protoc --cpp_out=dllexport_decl=LIBPROTOBUF_EXPORT:. google/protobuf/descriptor.proto && \ 32 | ./protoc --cpp_out=dllexport_decl=LIBPROTOC_EXPORT:. google/protobuf/compiler/plugin.proto 33 | cd .. 34 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This file contains a list of people who've made non-trivial 2 | # contribution to the Google C++ Testing Framework project. People 3 | # who commit code to the project are encouraged to add their names 4 | # here. Please keep the list sorted by first names. 5 | 6 | Ajay Joshi 7 | Balázs Dán 8 | Bharat Mediratta 9 | Chandler Carruth 10 | Chris Prince 11 | Chris Taylor 12 | Dan Egnor 13 | Eric Roman 14 | Hady Zalek 15 | Jeffrey Yasskin 16 | Jói Sigurðsson 17 | Keir Mierle 18 | Keith Ray 19 | Kenton Varda 20 | Manuel Klimek 21 | Markus Heule 22 | Mika Raento 23 | Miklós Fazekas 24 | Patrick Hanna 25 | Patrick Riley 26 | Peter Kaminski 27 | Preston Jackson 28 | Rainer Klaffenboeck 29 | Russ Cox 30 | Russ Rufer 31 | Sean Mcafee 32 | Sigurður Ásgeirsson 33 | Tracy Bialik 34 | Vadim Berman 35 | Vlad Losev 36 | Zhanyong Wan 37 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/COPYING: -------------------------------------------------------------------------------- 1 | Copyright 2008, Google Inc. 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are 6 | met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | * Redistributions in binary form must reproduce the above 11 | copyright notice, this list of conditions and the following disclaimer 12 | in the documentation and/or other materials provided with the 13 | distribution. 14 | * Neither the name of Google Inc. nor the names of its 15 | contributors may be used to endorse or promote products derived from 16 | this software without specific prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/build-aux/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/build-aux/.keep -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Config/DebugProject.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // DebugProject.xcconfig 3 | // 4 | // These are Debug Configuration project settings for the gtest framework and 5 | // examples. It is set in the "Based On:" dropdown in the "Project" info 6 | // dialog. 7 | // This file is based on the Xcode Configuration files in: 8 | // http://code.google.com/p/google-toolbox-for-mac/ 9 | // 10 | 11 | #include "General.xcconfig" 12 | 13 | // No optimization 14 | GCC_OPTIMIZATION_LEVEL = 0 15 | 16 | // Deployment postprocessing is what triggers Xcode to strip, turn it off 17 | DEPLOYMENT_POSTPROCESSING = NO 18 | 19 | // Dead code stripping off 20 | DEAD_CODE_STRIPPING = NO 21 | 22 | // Debug symbols should be on obviously 23 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES 24 | 25 | // Define the DEBUG macro in all debug builds 26 | OTHER_CFLAGS = $(OTHER_CFLAGS) -DDEBUG=1 27 | 28 | // These are turned off to avoid STL incompatibilities with client code 29 | // // Turns on special C++ STL checks to "encourage" good STL use 30 | // GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS) _GLIBCXX_DEBUG_PEDANTIC _GLIBCXX_DEBUG _GLIBCPP_CONCEPT_CHECKS 31 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Config/FrameworkTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // FrameworkTarget.xcconfig 3 | // 4 | // These are Framework target settings for the gtest framework and examples. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | // This file is based on the Xcode Configuration files in: 7 | // http://code.google.com/p/google-toolbox-for-mac/ 8 | // 9 | 10 | // Dynamic libs need to be position independent 11 | GCC_DYNAMIC_NO_PIC = NO 12 | 13 | // Dynamic libs should not have their external symbols stripped. 14 | STRIP_STYLE = non-global 15 | 16 | // Let the user install by specifying the $DSTROOT with xcodebuild 17 | SKIP_INSTALL = NO 18 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Config/General.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // General.xcconfig 3 | // 4 | // These are General configuration settings for the gtest framework and 5 | // examples. 6 | // This file is based on the Xcode Configuration files in: 7 | // http://code.google.com/p/google-toolbox-for-mac/ 8 | // 9 | 10 | // Build for PPC and Intel, 32- and 64-bit 11 | ARCHS = i386 x86_64 ppc ppc64 12 | 13 | // Zerolink prevents link warnings so turn it off 14 | ZERO_LINK = NO 15 | 16 | // Prebinding considered unhelpful in 10.3 and later 17 | PREBINDING = NO 18 | 19 | // Strictest warning policy 20 | WARNING_CFLAGS = -Wall -Werror -Wendif-labels -Wnewline-eof -Wno-sign-compare -Wshadow 21 | 22 | // Work around Xcode bugs by using external strip. See: 23 | // http://lists.apple.com/archives/Xcode-users/2006/Feb/msg00050.html 24 | SEPARATE_STRIP = YES 25 | 26 | // Force C99 dialect 27 | GCC_C_LANGUAGE_STANDARD = c99 28 | 29 | // not sure why apple defaults this on, but it's pretty risky 30 | ALWAYS_SEARCH_USER_PATHS = NO 31 | 32 | // Turn on position dependent code for most cases (overridden where appropriate) 33 | GCC_DYNAMIC_NO_PIC = YES 34 | 35 | // Default SDK and minimum OS version is 10.4 36 | SDKROOT = $(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk 37 | MACOSX_DEPLOYMENT_TARGET = 10.4 38 | GCC_VERSION = 4.0 39 | 40 | // VERSIONING BUILD SETTINGS (used in Info.plist) 41 | GTEST_VERSIONINFO_ABOUT = © 2008 Google Inc. 42 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Config/ReleaseProject.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // ReleaseProject.xcconfig 3 | // 4 | // These are Release Configuration project settings for the gtest framework 5 | // and examples. It is set in the "Based On:" dropdown in the "Project" info 6 | // dialog. 7 | // This file is based on the Xcode Configuration files in: 8 | // http://code.google.com/p/google-toolbox-for-mac/ 9 | // 10 | 11 | #include "General.xcconfig" 12 | 13 | // subconfig/Release.xcconfig 14 | 15 | // Optimize for space and size (Apple recommendation) 16 | GCC_OPTIMIZATION_LEVEL = s 17 | 18 | // Deploment postprocessing is what triggers Xcode to strip 19 | DEPLOYMENT_POSTPROCESSING = YES 20 | 21 | // No symbols 22 | GCC_GENERATE_DEBUGGING_SYMBOLS = NO 23 | 24 | // Dead code strip does not affect ObjC code but can help for C 25 | DEAD_CODE_STRIPPING = YES 26 | 27 | // NDEBUG is used by things like assert.h, so define it for general compat. 28 | // ASSERT going away in release tends to create unused vars. 29 | OTHER_CFLAGS = $(OTHER_CFLAGS) -DNDEBUG=1 -Wno-unused-variable 30 | 31 | // When we strip we want to strip all symbols in release, but save externals. 32 | STRIP_STYLE = all 33 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Config/StaticLibraryTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // StaticLibraryTarget.xcconfig 3 | // 4 | // These are static library target settings for libgtest.a. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | // This file is based on the Xcode Configuration files in: 7 | // http://code.google.com/p/google-toolbox-for-mac/ 8 | // 9 | 10 | // Static libs can be included in bundles so make them position independent 11 | GCC_DYNAMIC_NO_PIC = NO 12 | 13 | // Static libs should not have their internal globals or external symbols 14 | // stripped. 15 | STRIP_STYLE = debugging 16 | 17 | // Let the user install by specifying the $DSTROOT with xcodebuild 18 | SKIP_INSTALL = NO 19 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Config/TestTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // TestTarget.xcconfig 3 | // 4 | // These are Test target settings for the gtest framework and examples. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | 7 | PRODUCT_NAME = $(TARGET_NAME) 8 | HEADER_SEARCH_PATHS = ../include 9 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.google.${PRODUCT_NAME} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | GTEST_VERSIONINFO_LONG 21 | CFBundleShortVersionString 22 | GTEST_VERSIONINFO_SHORT 23 | CFBundleGetInfoString 24 | ${PRODUCT_NAME} GTEST_VERSIONINFO_LONG, ${GTEST_VERSIONINFO_ABOUT} 25 | NSHumanReadableCopyright 26 | ${GTEST_VERSIONINFO_ABOUT} 27 | CSResourcesFileMapped 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/gtest/xcode/Samples/FrameworkSample/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.google.gtest.${PRODUCT_NAME:identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | CSResourcesFileMapped 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/m4/ac_system_extensions.m4: -------------------------------------------------------------------------------- 1 | dnl Provide AC_USE_SYSTEM_EXTENSIONS for old autoconf machines. 2 | AC_DEFUN([ACX_USE_SYSTEM_EXTENSIONS],[ 3 | ifdef([AC_USE_SYSTEM_EXTENSIONS],[ 4 | AC_USE_SYSTEM_EXTENSIONS 5 | ],[ 6 | AC_BEFORE([$0], [AC_COMPILE_IFELSE]) 7 | AC_BEFORE([$0], [AC_RUN_IFELSE]) 8 | 9 | AC_REQUIRE([AC_GNU_SOURCE]) 10 | AC_REQUIRE([AC_AIX]) 11 | AC_REQUIRE([AC_MINIX]) 12 | 13 | AH_VERBATIM([__EXTENSIONS__], 14 | [/* Enable extensions on Solaris. */ 15 | #ifndef __EXTENSIONS__ 16 | # undef __EXTENSIONS__ 17 | #endif 18 | #ifndef _POSIX_PTHREAD_SEMANTICS 19 | # undef _POSIX_PTHREAD_SEMANTICS 20 | #endif 21 | #ifndef _TANDEM_SOURCE 22 | # undef _TANDEM_SOURCE 23 | #endif]) 24 | AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__], 25 | [ac_cv_safe_to_define___extensions__], 26 | [AC_COMPILE_IFELSE( 27 | [AC_LANG_PROGRAM([ 28 | # define __EXTENSIONS__ 1 29 | AC_INCLUDES_DEFAULT])], 30 | [ac_cv_safe_to_define___extensions__=yes], 31 | [ac_cv_safe_to_define___extensions__=no])]) 32 | test $ac_cv_safe_to_define___extensions__ = yes && 33 | AC_DEFINE([__EXTENSIONS__]) 34 | AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) 35 | AC_DEFINE([_TANDEM_SOURCE]) 36 | ]) 37 | ]) 38 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/protobuf-lite.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: Protocol Buffers 7 | Description: Google's Data Interchange Format 8 | Version: @VERSION@ 9 | Libs: -L${libdir} -lprotobuf-lite @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 10 | Cflags: -I${includedir} @PTHREAD_CFLAGS@ 11 | # Commented out because it crashes pkg-config *sigh*: 12 | # http://bugs.freedesktop.org/show_bug.cgi?id=13265 13 | # Conflicts: protobuf 14 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/protobuf.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: Protocol Buffers 7 | Description: Google's Data Interchange Format 8 | Version: @VERSION@ 9 | Libs: -L${libdir} -lprotobuf @LIBS@ @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 10 | Cflags: -I${includedir} @PTHREAD_CFLAGS@ 11 | # Commented out because it crashes pkg-config *sigh*: 12 | # http://bugs.freedesktop.org/show_bug.cgi?id=13265 13 | # Conflicts: protobuf-lite 14 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/python/google/__init__.py: -------------------------------------------------------------------------------- 1 | __import__('pkg_resources').declare_namespace(__name__) 2 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/python/google/protobuf/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/python/google/protobuf/__init__.py -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/python/google/protobuf/internal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/python/google/protobuf/internal/__init__.py -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/src/google/protobuf/stubs/structurally_valid_unittest.cc: -------------------------------------------------------------------------------- 1 | // Copyright 2008 Google Inc. All Rights Reserved. 2 | // Author: xpeng@google.com (Peter Peng) 3 | 4 | #include 5 | #include 6 | 7 | namespace google { 8 | namespace protobuf { 9 | namespace internal { 10 | namespace { 11 | 12 | TEST(StructurallyValidTest, ValidUTF8String) { 13 | // On GCC, this string can be written as: 14 | // "abcd 1234 - \u2014\u2013\u2212" 15 | // MSVC seems to interpret \u differently. 16 | string valid_str("abcd 1234 - \342\200\224\342\200\223\342\210\222 - xyz789"); 17 | EXPECT_TRUE(IsStructurallyValidUTF8(valid_str.data(), 18 | valid_str.size())); 19 | // Additional check for pointer alignment 20 | for (int i = 1; i < 8; ++i) { 21 | EXPECT_TRUE(IsStructurallyValidUTF8(valid_str.data() + i, 22 | valid_str.size() - i)); 23 | } 24 | } 25 | 26 | TEST(StructurallyValidTest, InvalidUTF8String) { 27 | const string invalid_str("abcd\xA0\xB0\xA0\xB0\xA0\xB0 - xyz789"); 28 | EXPECT_FALSE(IsStructurallyValidUTF8(invalid_str.data(), 29 | invalid_str.size())); 30 | // Additional check for pointer alignment 31 | for (int i = 1; i < 8; ++i) { 32 | EXPECT_FALSE(IsStructurallyValidUTF8(invalid_str.data() + i, 33 | invalid_str.size() - i)); 34 | } 35 | } 36 | 37 | } // namespace 38 | } // namespace internal 39 | } // namespace protobuf 40 | } // namespace google 41 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/src/google/protobuf/testdata/golden_message: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/src/google/protobuf/testdata/golden_message -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/src/google/protobuf/testdata/golden_packed_fields_message: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/breakpad/third_party/protobuf/protobuf/src/google/protobuf/testdata/golden_packed_fields_message -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/vsprojects/config.h: -------------------------------------------------------------------------------- 1 | /* protobuf config.h for MSVC. On other platforms, this is generated 2 | * automatically by autoheader / autoconf / configure. */ 3 | 4 | /* the location of */ 5 | #define HASH_MAP_H 6 | 7 | /* the namespace of hash_map/hash_set */ 8 | // Apparently Microsoft decided to move hash_map *back* to the std namespace 9 | // in MSVC 2010: 10 | // http://blogs.msdn.com/vcblog/archive/2009/05/25/stl-breaking-changes-in-visual-studio-2010-beta-1.aspx 11 | // TODO(kenton): Use unordered_map instead, which is available in MSVC 2010. 12 | #if _MSC_VER < 1310 || _MSC_VER >= 1600 13 | #define HASH_NAMESPACE std 14 | #else 15 | #define HASH_NAMESPACE stdext 16 | #endif 17 | 18 | /* the location of */ 19 | #define HASH_SET_H 20 | 21 | /* define if the compiler has hash_map */ 22 | #define HAVE_HASH_MAP 1 23 | 24 | /* define if the compiler has hash_set */ 25 | #define HAVE_HASH_SET 1 26 | 27 | /* define if you want to use zlib. See readme.txt for additional 28 | * requirements. */ 29 | // #define HAVE_ZLIB 1 30 | -------------------------------------------------------------------------------- /archive/spotify/breakpad/third_party/protobuf/protobuf/vsprojects/convert2008to2005.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh -e 2 | 3 | # This script downgrades MSVC 2008 projects to MSVC 2005 projects, allowing 4 | # people with MSVC 2005 to open them. Otherwise, MSVC 2005 simply refuses to 5 | # open projects created with 2008. We run this as part of our release process. 6 | # If you obtained the code direct from version control and you want to use 7 | # MSVC 2005, you may have to run this manually. (Hint: Use Cygwin or MSYS.) 8 | 9 | for file in *.sln; do 10 | echo "downgrading $file..." 11 | sed -i -re 's/Format Version 10.00/Format Version 9.00/g; 12 | s/Visual Studio 2008/Visual Studio 2005/g;' $file 13 | done 14 | 15 | for file in *.vcproj; do 16 | echo "downgrading $file..." 17 | sed -i -re 's/Version="9.00"/Version="8.00"/g;' $file 18 | done 19 | 20 | # Yes, really, that's it. 21 | -------------------------------------------------------------------------------- /archive/spotify/cmake/FindQJSON.cmake: -------------------------------------------------------------------------------- 1 | # Find QJSON - JSON handling library for Qt 2 | # 3 | # This module defines 4 | # QJSON_FOUND - whether the qsjon library was found 5 | # QJSON_LIBRARIES - the qjson library 6 | # QJSON_INCLUDE_DIR - the include path of the qjson library 7 | # 8 | 9 | if (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES) 10 | 11 | # Already in cache 12 | set (QJSON_FOUND TRUE) 13 | 14 | else (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES) 15 | 16 | if (NOT WIN32) 17 | # use pkg-config to get the values of QJSON_INCLUDE_DIRS 18 | # and QJSON_LIBRARY_DIRS to add as hints to the find commands. 19 | include (FindPkgConfig) 20 | pkg_check_modules (QJSON REQUIRED QJson>=0.5) 21 | endif (NOT WIN32) 22 | 23 | find_library (QJSON_LIBRARIES 24 | NAMES 25 | qjson 26 | PATHS 27 | ${QJSON_LIBRARY_DIRS} 28 | ${LIB_INSTALL_DIR} 29 | ${KDE4_LIB_DIR} 30 | ) 31 | 32 | find_path (QJSON_INCLUDE_DIR 33 | NAMES 34 | parser.h 35 | PATH_SUFFIXES 36 | qjson 37 | PATHS 38 | ${QJSON_INCLUDE_DIRS} 39 | ${INCLUDE_INSTALL_DIR} 40 | ${KDE4_INCLUDE_DIR} 41 | ) 42 | 43 | include(FindPackageHandleStandardArgs) 44 | find_package_handle_standard_args(QJSON DEFAULT_MSG QJSON_LIBRARIES QJSON_INCLUDE_DIR) 45 | 46 | if ( WIN32 OR ( UNIX AND NOT APPLE ) ) 47 | set ( QJSON_LIBRARIES "${QJSON_LIBRARIES} ${QJSON_LDFLAGS}" CACHE INTERNAL "" ) 48 | endif () 49 | 50 | endif (QJSON_INCLUDE_DIR AND QJSON_LIBRARIES) 51 | -------------------------------------------------------------------------------- /archive/spotify/kdsingleapplicationguard/kdsharedmemorylocker.cpp: -------------------------------------------------------------------------------- 1 | #include "kdsharedmemorylocker.h" 2 | 3 | #if QT_VERSION >= 0x040400 || defined( DOXYGEN_RUN ) 4 | 5 | #include 6 | 7 | using namespace kdtools; 8 | 9 | /*! 10 | \class KDSharedMemoryLocker 11 | \ingroup raii core 12 | \brief Exception-safe and convenient wrapper around QSharedMemory::lock() 13 | */ 14 | 15 | /** 16 | * Constructor. Locks the shared memory segment \a mem. 17 | * If another process has locking the segment, this constructor blocks 18 | * until the lock is released. The memory segments needs to be properly created or attached. 19 | */ 20 | KDSharedMemoryLocker::KDSharedMemoryLocker( QSharedMemory* mem ) 21 | : mem( mem ) 22 | { 23 | mem->lock(); 24 | } 25 | 26 | /** 27 | * Destructor. Unlocks the shared memory segment associated with this 28 | * KDSharedMemoryLocker. 29 | */ 30 | KDSharedMemoryLocker::~KDSharedMemoryLocker() 31 | { 32 | mem->unlock(); 33 | } 34 | 35 | #ifdef KDAB_EVAL 36 | #include KDAB_EVAL 37 | static const EvalDialogChecker evalChecker( "KD Tools", false ); 38 | #endif 39 | 40 | #endif 41 | -------------------------------------------------------------------------------- /archive/spotify/kdsingleapplicationguard/kdsharedmemorylocker.h: -------------------------------------------------------------------------------- 1 | #ifndef __KDTOOLS__CORE__KDSHAREDMEMORYLOCKER_H 2 | #define __KDTOOLS__CORE__KDSHAREDMEMORYLOCKER_H 3 | 4 | #include "kdtoolsglobal.h" 5 | 6 | #if QT_VERSION < 0x040400 && !defined( DOXYGEN_RUN ) 7 | #ifdef Q_CC_GNU 8 | #warning "Can't use KDTools KDSharedMemoryLocker with Qt versions prior to 4.4" 9 | #endif 10 | #else 11 | 12 | class QSharedMemory; 13 | 14 | #ifndef DOXYGEN_RUN 15 | namespace kdtools 16 | { 17 | #endif 18 | 19 | class KDTOOLSCORE_EXPORT KDSharedMemoryLocker 20 | { 21 | Q_DISABLE_COPY( KDSharedMemoryLocker ) 22 | public: 23 | KDSharedMemoryLocker( QSharedMemory* mem ); 24 | ~KDSharedMemoryLocker(); 25 | 26 | private: 27 | QSharedMemory* const mem; 28 | }; 29 | 30 | #ifndef DOXYGEN_RUN 31 | } 32 | #endif 33 | 34 | #endif 35 | 36 | #endif 37 | -------------------------------------------------------------------------------- /archive/spotify/kdsingleapplicationguard/kdtoolsglobal.cpp: -------------------------------------------------------------------------------- 1 | #include "kdtoolsglobal.h" 2 | 3 | #include 4 | 5 | #include 6 | 7 | namespace { 8 | struct Version { 9 | unsigned char v[3]; 10 | }; 11 | 12 | static inline bool operator<( const Version & lhs, const Version & rhs ) { 13 | return std::lexicographical_compare( lhs.v, lhs.v + 3, rhs.v, rhs.v + 3 ); 14 | } 15 | static inline bool operator==( const Version & lhs, const Version & rhs ) { 16 | return std::equal( lhs.v, lhs.v + 3, rhs.v ); 17 | } 18 | KDTOOLS_MAKE_RELATION_OPERATORS( Version, static inline ) 19 | } 20 | 21 | static Version kdParseQtVersion( const char * const version ) { 22 | if ( !version || qstrlen( version ) < 5 || version[1] != '.' || version[3] != '.' || ( version[5] != 0 && version[5] != '.' && version[5] != '-' ) ) 23 | return Version(); // parse error 24 | const Version result = { { version[0] - '0', version[2] - '0', version[4] - '0' } }; 25 | return result; 26 | } 27 | 28 | bool _kdCheckQtVersion_impl( int major, int minor, int patchlevel ) { 29 | static const Version actual = kdParseQtVersion( qVersion() ); // do this only once each run... 30 | const Version requested = { { major, minor, patchlevel } }; 31 | return actual >= requested; 32 | } 33 | -------------------------------------------------------------------------------- /archive/spotify/kdsingleapplicationguard/license-gpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/kdsingleapplicationguard/license-gpl -------------------------------------------------------------------------------- /archive/spotify/kdsingleapplicationguard/pimpl_ptr.h: -------------------------------------------------------------------------------- 1 | #ifndef __KDTOOLSCORE__PIMPL_PTR_H__ 2 | #define __KDTOOLSCORE__PIMPL_PTR_H__ 3 | 4 | #include "kdtoolsglobal.h" 5 | 6 | #ifndef DOXYGEN_RUN 7 | namespace kdtools { 8 | #endif 9 | 10 | template 11 | class pimpl_ptr { 12 | KDAB_DISABLE_COPY( pimpl_ptr ); 13 | T * d; 14 | public: 15 | pimpl_ptr() : d( new T ) {} 16 | explicit pimpl_ptr( T * t ) : d( t ) {} 17 | ~pimpl_ptr() { delete d; d = 0; } 18 | 19 | T * get() { return d; } 20 | const T * get() const { return d; } 21 | 22 | T * operator->() { return get(); } 23 | const T * operator->() const { return get(); } 24 | 25 | T & operator*() { return *get(); } 26 | const T & operator*() const { return *get(); } 27 | 28 | KDAB_IMPLEMENT_SAFE_BOOL_OPERATOR( get() ) 29 | }; 30 | 31 | // these are not implemented, so's we can catch their use at 32 | // link-time. Leaving them undeclared would open up a comparison 33 | // via operator unspecified-bool-type(). 34 | template 35 | void operator==( const pimpl_ptr &, const pimpl_ptr & ); 36 | template 37 | void operator!=( const pimpl_ptr &, const pimpl_ptr & ); 38 | 39 | #ifndef DOXYGEN_RUN 40 | } // namespace kdtools 41 | #endif 42 | 43 | #endif /* __KDTOOLSCORE__PIMPL_PTR_H__ */ 44 | 45 | -------------------------------------------------------------------------------- /archive/spotify/logger.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (c) 2011 Leo Franchi 3 | 4 | Permission is hereby granted, free of charge, to any person 5 | obtaining a copy of this software and associated documentation 6 | files (the "Software"), to deal in the Software without 7 | restriction, including without limitation the rights to use, 8 | copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the 10 | Software is furnished to do so, subject to the following 11 | conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 18 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 19 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 20 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 21 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 22 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 23 | OTHER DEALINGS IN THE SOFTWARE. 24 | */ 25 | 26 | 27 | #include "logger.h" 28 | 29 | Logger::Logger(QObject* parent) 30 | { 31 | 32 | } 33 | 34 | Logger::~QObject() 35 | { 36 | 37 | } 38 | 39 | -------------------------------------------------------------------------------- /archive/spotify/logger.h: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (c) 2011 Leo Franchi 3 | 4 | Permission is hereby granted, free of charge, to any person 5 | obtaining a copy of this software and associated documentation 6 | files (the "Software"), to deal in the Software without 7 | restriction, including without limitation the rights to use, 8 | copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the 10 | Software is furnished to do so, subject to the following 11 | conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 18 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 19 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 20 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 21 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 22 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 23 | OTHER DEALINGS IN THE SOFTWARE. 24 | */ 25 | 26 | 27 | #ifndef LOGGER_H 28 | #define LOGGER_H 29 | 30 | #include 31 | 32 | 33 | class Logger : public QObject 34 | { 35 | 36 | public: 37 | explicit Logger(QObject* parent = 0); 38 | virtual ~Logger(); 39 | }; 40 | 41 | #endif // LOGGER_H 42 | -------------------------------------------------------------------------------- /archive/spotify/main.h: -------------------------------------------------------------------------------- 1 | /** This file is part of QT SpotifyWebApi - === 2 | * 3 | * Copyright 2011-2012,Hugo Lindström 4 | * 5 | * Permission is hereby granted, free of charge, to any person obtaining a copy 6 | * of this software and associated documentation files (the "Software"), to deal 7 | * in the Software without restriction, including without limitation the rights 8 | * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | * copies of the Software, and to permit persons to whom the Software is 10 | * furnished to do so, subject to the following conditions: 11 | * 12 | * The above copyright notice and this permission notice shall be included in 13 | * all copies or substantial portions of the Software. 14 | */ 15 | 16 | #ifndef MAIN_H 17 | #define MAIN_H 18 | 19 | #include 20 | #include "appkey.h" 21 | 22 | /** EXAMPLE **/ 23 | /* 24 | QCoreApplication a(argc, argv); 25 | 26 | // Sometimes location causes errors, so if your not able 27 | // to login, change the location or rm the dirs + trace 28 | 29 | sessionConfig config; 30 | config.cache_location = "/tmp"; 31 | config.settings_location = "/tmp"; 32 | config.g_app_key = g_appkey; 33 | config.application_key_size = g_appkey_size; 34 | config.user_agent = "spotifyApi"; 35 | config.tracefile = "/tmp/trace.dat"; 36 | config.device_id = "spotifyApi"; 37 | 38 | 39 | SpotifySession *Spotify = new SpotifySession(config); 40 | Spotify->login( "", "", ""); 41 | 42 | return a.exec();*/ 43 | 44 | /** END EXAMPLE **/ 45 | 46 | #endif // MAIN_H 47 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/README.txt: -------------------------------------------------------------------------------- 1 | QxtWeb from libqxt.org project, standalone and cmakeified. For embeddable webserver 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtAbstractHttpConnector: -------------------------------------------------------------------------------- 1 | #include "qxtabstracthttpconnector.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtAbstractWebService: -------------------------------------------------------------------------------- 1 | #include "qxtabstractwebservice.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtAbstractWebSessionManager: -------------------------------------------------------------------------------- 1 | #include "qxtabstractwebsessionmanager.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtHtmlTemplate: -------------------------------------------------------------------------------- 1 | #include "qxthtmltemplate.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtHttpServerConnector: -------------------------------------------------------------------------------- 1 | #include "qxtabstracthttpconnector.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtHttpSessionManager: -------------------------------------------------------------------------------- 1 | #include "qxthttpsessionmanager.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtMail: -------------------------------------------------------------------------------- 1 | #include "qxtmail.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtScgiServerConnector: -------------------------------------------------------------------------------- 1 | #include "qxtabstracthttpconnector.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtSendmail: -------------------------------------------------------------------------------- 1 | #include "qxtsendmail.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWeb: -------------------------------------------------------------------------------- 1 | #include "qxtweb.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebCgiService: -------------------------------------------------------------------------------- 1 | #include "qxtwebcgiservice.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebContent: -------------------------------------------------------------------------------- 1 | #include "qxtwebcontent.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebErrorEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebFileUploadEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebPageEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebRedirectEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebRemoveCookieEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebRequestEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebServiceDirectory: -------------------------------------------------------------------------------- 1 | #include "qxtwebservicedirectory.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebSlotService: -------------------------------------------------------------------------------- 1 | #include "qxtwebslotservice.h" 2 | 3 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/QxtWebStoreCookieEvent: -------------------------------------------------------------------------------- 1 | #include "qxtwebevent.h" 2 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/qxtnull.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** 3 | ** Copyright (C) Qxt Foundation. Some rights reserved. 4 | ** 5 | ** This file is part of the QxtCore module of the Qxt library. 6 | ** 7 | ** This library is free software; you can redistribute it and/or modify it 8 | ** under the terms of the Common Public License, version 1.0, as published 9 | ** by IBM, and/or under the terms of the GNU Lesser General Public License, 10 | ** version 2.1, as published by the Free Software Foundation. 11 | ** 12 | ** This file is provided "AS IS", without WARRANTIES OR CONDITIONS OF ANY 13 | ** KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY 14 | ** WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR 15 | ** FITNESS FOR A PARTICULAR PURPOSE. 16 | ** 17 | ** You should have received a copy of the CPL and the LGPL along with this 18 | ** file. See the LICENSE file and the cpl1.0.txt/lgpl-2.1.txt files 19 | ** included with the source distribution for more information. 20 | ** If you did not receive a copy of the licenses, contact the Qxt Foundation. 21 | ** 22 | ** 23 | ** 24 | ****************************************************************************/ 25 | #include "qxtnull.h" 26 | 27 | // nothing here 28 | -------------------------------------------------------------------------------- /archive/spotify/qxtweb-standalone/qxtweb/qxtweb.h: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** 3 | ** Copyright (C) Qxt Foundation. Some rights reserved. 4 | ** 5 | ** This file is part of the QxtWeb module of the Qxt library. 6 | ** 7 | ** This library is free software; you can redistribute it and/or modify it 8 | ** under the terms of the Common Public License, version 1.0, as published 9 | ** by IBM, and/or under the terms of the GNU Lesser General Public License, 10 | ** version 2.1, as published by the Free Software Foundation. 11 | ** 12 | ** This file is provided "AS IS", without WARRANTIES OR CONDITIONS OF ANY 13 | ** KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY 14 | ** WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR 15 | ** FITNESS FOR A PARTICULAR PURPOSE. 16 | ** 17 | ** You should have received a copy of the CPL and the LGPL along with this 18 | ** file. See the LICENSE file and the cpl1.0.txt/lgpl-2.1.txt files 19 | ** included with the source distribution for more information. 20 | ** If you did not receive a copy of the licenses, contact the Qxt Foundation. 21 | ** 22 | ** 23 | ** 24 | ****************************************************************************/ 25 | #ifndef QXTWEB_H_INCLUDED 26 | #define QXTWEB_H_INCLUDED 27 | 28 | #include "qxtabstracthttpconnector.h" 29 | #include "qxtabstractwebservice.h" 30 | #include "qxtabstractwebsessionmanager.h" 31 | #include "qxtwebcgiservice.h" 32 | #include "qxthtmltemplate.h" 33 | #include "qxthttpsessionmanager.h" 34 | #include "qxtwebcontent.h" 35 | #include "qxtwebevent.h" 36 | #include "qxtwebservicedirectory.h" 37 | #include "qxtwebslotservice.h" 38 | 39 | #endif // QXTWEB_H_INCLUDED 40 | -------------------------------------------------------------------------------- /archive/spotify/spotify-sourceicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/archive/spotify/spotify-sourceicon.png -------------------------------------------------------------------------------- /archive/spotify/spotify.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=Spotify 3 | Comment=Stream music from Spotify. Requires a Premium account. 4 | 5 | Type=Service 6 | X-KDE-ServiceTypes=Tomahawk/BinaryResolver 7 | X-Synchrotron-Signature=_SIGNATURE_ 8 | X-Synchrotron-ContentUrl=_ZIPFILE_ 9 | X-Synchrotron-Type=_TYPE_ 10 | X-Synchrotron-MainScript=_BINARY_ 11 | X-Synchrotron-Requires-Tomahawk-Version=0.6.0 12 | 13 | X-KDE-PluginInfo-Name=spotify-_PLATFORM_ 14 | X-KDE-PluginInfo-Category=BinaryResolver 15 | X-KDE-PluginInfo-Author=Hugo and Leo 16 | X-KDE-PluginInfo-Email=lfranchi@kde.org 17 | X-KDE-PluginInfo-Version=_VERSION_ 18 | X-KDE-PluginInfo-Website=http://gettomahawk.com 19 | -------------------------------------------------------------------------------- /archive/spotify/spotify_key.h: -------------------------------------------------------------------------------- 1 | // The Spotify terms of service require that application keys are not 2 | // accessible to third parties. Therefore this application key is heavily 3 | // encrypted here in the source to prevent third parties from viewing it. 4 | // It is most definitely not base64 encoded. 5 | 6 | static const char* spotifyApiKey = 7 | "AS393ZH/DGWshTgctiPZXI6BnFyHpSbSJViBqfgVVbJ5dHcMYgeCqMUKBIfBa2sxFkARz2EL8jBi" 8 | "pr78IJ6OGDqQLP/sjRdgQ5gq2vBxVWAgxf31ZYV3hk/6NCzuOYQRReb2hZE04M1ayhY6tgoLiDB3" 9 | "WOQ9D5vJpcgvPcB9pjIQjWhoJQpeUXAPV3TcJigP7EzaoPsjscXzs+b2a+11jHU6WMYAxZZewoJl" 10 | "/siCHHVKXa1Nyv+UOXmSH9kIJlEmDs2pegNcBXNvx8RplP4lS5MWn2sOsavQba2BHJR7tXLDYZ5g" 11 | "l2XZ/rko77EjedPgI5OItDUNWUh1UUnjwFtLz8YwtiGZRVm7Wb9nN74wgYut0E+ZnZ7jNsJ2FDky" 12 | "BzKJ1bs+nvtyKfxMBnE5uPUUx/WyDRr1hIZRLDFT4ta2ssve"; 13 | -------------------------------------------------------------------------------- /archive/spotify/tomahawkspotify.kdev4: -------------------------------------------------------------------------------- 1 | [Project] 2 | Name=tomahawkspotify 3 | Manager=KDevCMakeManager 4 | VersionControl= 5 | -------------------------------------------------------------------------------- /authproxy/app.yaml: -------------------------------------------------------------------------------- 1 | application: tomahawk-beatslogin 2 | version: 1 3 | runtime: go 4 | api_version: go1 5 | 6 | handlers: 7 | - url: / 8 | static_files: index.html 9 | upload: index\.html 10 | 11 | - url: /json 12 | script: _go_app 13 | 14 | - url: /spotify 15 | script: _go_app 16 | -------------------------------------------------------------------------------- /authproxy/authproxy.go: -------------------------------------------------------------------------------- 1 | package authproxy 2 | 3 | import ( 4 | "net/http" 5 | ) 6 | 7 | func init() { 8 | http.HandleFunc("/json", jsonHandler) 9 | http.HandleFunc("/spotify", spotifyHandler) 10 | } 11 | 12 | 13 | func jsonHandler(w http.ResponseWriter, r *http.Request) { 14 | w.Header().Set("Content-Type", "application/json") 15 | w.Header().Set("Access-Control-Allow-Origin", "*") 16 | w.Write([]byte("{ \"access_token\": \"" + r.FormValue("access_token") + "\" }")) 17 | } 18 | 19 | func spotifyHandler(w http.ResponseWriter, r *http.Request) { 20 | w.Header().Set("Content-Type", "application/json") 21 | w.Header().Set("Access-Control-Allow-Origin", "*") 22 | w.Write([]byte("{ \"code\": \"" + r.FormValue("code") + "\" }")) 23 | } 24 | -------------------------------------------------------------------------------- /authproxy/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/authproxy/index.html -------------------------------------------------------------------------------- /bandcamp/README.md: -------------------------------------------------------------------------------- 1 | bandcamp-resolver 2 | =================== 3 | 4 | Tomahawk resolver for Bandcamp 5 | -------------------------------------------------------------------------------- /bandcamp/content/contents/code/bandcamp-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/bandcamp/content/contents/code/bandcamp-icon.png -------------------------------------------------------------------------------- /bandcamp/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/bandcamp/content/contents/images/icon.png -------------------------------------------------------------------------------- /bandcamp/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Bandcamp", 3 | "pluginName": "bandcamp", 4 | "author": "Thierry Göckel", 5 | "email": "thierry@strayrayday.lu", 6 | "version": "0.2.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Stream music from Bandcamp.", 9 | "platform": "any", 10 | "type": "resolver/javascript", 11 | "manifest": { 12 | "main": "contents/code/bandcamp.js", 13 | "scripts": [], 14 | "icon": "contents/images/icon.png", 15 | "resources": [ 16 | "contents/code/bandcamp-icon.png" 17 | ] 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /bandcampmobile/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/bandcampmobile/content/contents/images/icon.png -------------------------------------------------------------------------------- /bandcampmobile/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Bandcamp (Mobile API)", 3 | "pluginName": "bandcampmobile", 4 | "author": "Anton Romanov", 5 | "email": "theli.ua@gmail.com", 6 | "version": "0.0.4", 7 | "website": "http://gettomahawk.com", 8 | "description": "Resolves to free to preview 128k streams from Bandcamp.(using mobile api)", 9 | "platform": "any", 10 | "type": "resolver/javascript", 11 | "manifest": { 12 | "main": "contents/code/bandcampm.js", 13 | "scripts": [], 14 | "icon": "contents/images/icon.png", 15 | "resources": [] 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /beatsmusic/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Uwe L. Korn 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /beatsmusic/content/contents/code/beatsmusic-wide.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beatsmusic/content/contents/code/beatsmusic-wide.png -------------------------------------------------------------------------------- /beatsmusic/content/contents/code/beatsmusic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beatsmusic/content/contents/code/beatsmusic.png -------------------------------------------------------------------------------- /beatsmusic/content/contents/images/icon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beatsmusic/content/contents/images/icon-16x16.png -------------------------------------------------------------------------------- /beatsmusic/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beatsmusic/content/contents/images/icon.png -------------------------------------------------------------------------------- /beatsmusic/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beatsmusic/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /beatsmusic/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beatsmusic/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /beatsmusic/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Beats Music", 3 | "pluginName": "beatsmusic", 4 | "author": "Uwe L. Korn", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.1.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "(0.8+) Stream music from Beats Music.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/beatsmusic.js", 12 | "scripts": [ 13 | "contents/code/async.js" 14 | ], 15 | "icon": "contents/images/icon.png", 16 | "iconWhite": "contents/images/iconWhite.png", 17 | "iconBackground": "contents/images/iconBackground.png", 18 | "indicator": "contents/images/icon-16x16.png", 19 | "resources": [ 20 | "contents/code/config.ui", 21 | "contents/code/beatsmusic.png", 22 | "contents/code/beatsmusic-wide.png" 23 | ] 24 | }, 25 | "staticCapabilities": [ 26 | "configTestable" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /beets/content/contents/code/beets-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beets/content/contents/code/beets-icon.png -------------------------------------------------------------------------------- /beets/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beets/content/contents/images/icon.png -------------------------------------------------------------------------------- /beets/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beets/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /beets/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/beets/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /beets/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Beets", 3 | "pluginName": "beets", 4 | "author": "Adrian, Uwe, Enno and Dominik", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.6.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "Connects to a beets server and resolves tracks.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/beets.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/config.ui", 18 | "contents/code/beets-icon.png" 19 | ] 20 | }, 21 | "staticCapabilities": [ 22 | "configTestable" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tomahawk-resolvers", 3 | "version": "0.0.0", 4 | "authors": [ 5 | "Team Tomahawk " 6 | ], 7 | "description": "Resolvers for the Tomahawk Music Player", 8 | "license": "GPL-3", 9 | "homepage": "http://tomahawk-player.org", 10 | "private": true, 11 | "ignore": [ 12 | "**/.*", 13 | "node_modules", 14 | "bower_components", 15 | "test", 16 | "tests" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /deezer-metadata/content/contents/code/deezer-metadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer-metadata/content/contents/code/deezer-metadata.png -------------------------------------------------------------------------------- /deezer-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /deezer-metadata/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer-metadata/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /deezer-metadata/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer-metadata/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /deezer-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Deezer Metadata", 3 | "pluginName": "deezer-metadata", 4 | "author": "Uwe L. Korn", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.1.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "(0.8+) Supports loading and drag and drop of Deezer URLs.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/deezer-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/deezer-metadata.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /deezer/content/contents/code/deezer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer/content/contents/code/deezer.png -------------------------------------------------------------------------------- /deezer/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer/content/contents/images/icon.png -------------------------------------------------------------------------------- /deezer/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /deezer/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/deezer/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /deezer/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Deezer", 3 | "pluginName": "deezer", 4 | "author": "Uwe and Enno", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.2.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Stream music with Deezer. Premium Deezer account required.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/deezer.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/deezer.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | /site/ 2 | -------------------------------------------------------------------------------- /docs/docs/basic.md: -------------------------------------------------------------------------------- 1 | # Basic structure of a resolver 2 | 3 | A resolver is made up of three parts: metadata, code and styling. 4 | The styling of a resolver is mostly limited to an icon and the description of the UI for a possible login/settings screen. 5 | Metadata like the name and version of the resolver is stored in a file called `metadata.json`. 6 | The remaing (major) component is its code which will be used to connect a music service to Tomahawk's API. 7 | 8 | These components are organized in the following directory structure: 9 | 10 | ``` 11 | 12 | ↳ content 13 | ↳ metadata.json 14 | ↳ contents 15 | ↳ code 16 | ↳ resolver.js 17 | ↳ … .js 18 | ↳ images 19 | ↳ icon.png 20 | ``` 21 | 22 | ## Metadata 23 | 24 | In the metadata we describe the basic information of the resolver which needs to be accessible without invoking the resolver's code. 25 | This includes the name and the icon shown to the user in the list of available plug-ins but also the information on which files need to be loaded to execute the code. 26 | 27 | ```javascript 28 | { 29 | "name": "MusicService", 30 | "pluginName": "musicservice", 31 | "author": "Some Guy", 32 | "email": "author@example.com", 33 | "version": "9.9.9", 34 | "website": "http://gettomahawk.com", 35 | "description": "Returns example tracks for demonstation.", 36 | "type": "resolver/javascript", 37 | "manifest": { 38 | "main": "contents/code/resolver.js", 39 | "scripts": [], 40 | "icon": "contents/images/icon.png", 41 | "resources": [ 42 | "contents/images/another-icon.png" 43 | ] 44 | } 45 | } 46 | ``` 47 | 48 | ## Code 49 | -------------------------------------------------------------------------------- /docs/docs/index.md: -------------------------------------------------------------------------------- 1 | # Tomahawk Resolvers API 2 | 3 | This documentation describes the [Tomahawk](https://www.tomahawk-player.org/) Resolver API, an API for uniform access to different music sources. 4 | Although the main and initial purpose of the API was to provide source-independent streaming of music content for the desktop app, it evolved to general abstraction for music services that is used as part of *Tomahawk Desktop*, *Tomahawk Android* and are available in your [node.js/io.js environment](https://github.com/xhochy/node-tomahawkjs). 5 | 6 | ## The Idea 7 | 8 | You can think of a *resolver* as being an adapter that at one site implements the service-indenpendent Tomahawk API and translates the requests coming from there to the native API calls of a music service. 9 | Commonly the API functions in Tomahawk are a bit higher-level than those provided by the music service, thus a single call on the Tomahawk site may result in a small number of API calls to the music service (in most cases you'll end up doing only 1-2 calls). 10 | 11 | As the Resolver API is the same across different music services, you can use the API to build music-related apps that are agnostic of the underlying service. 12 | This enables you to build an app that can support different services or move from one underlying service to another without any major code changes. 13 | 14 | ## Getting Started 15 | 16 | **TODO** 17 | 18 | ## API Documentation 19 | 20 | **TODO** 21 | 22 | -------------------------------------------------------------------------------- /docs/docs/searchresolve.md: -------------------------------------------------------------------------------- 1 | # Implementing Searching and Resolving 2 | -------------------------------------------------------------------------------- /docs/docs/urllookup.md: -------------------------------------------------------------------------------- 1 | # Looking up URLs 2 | -------------------------------------------------------------------------------- /docs/mkdocs.yml: -------------------------------------------------------------------------------- 1 | site_name: Tomahawk Resolvers API 2 | site_favicon: favicon.png 3 | repo_url: https://github.com/tomahawk-player/tomahawk-resolvers 4 | pages: 5 | - [index.md, Index] 6 | - [basic.md, Basic Structure] 7 | - [searchresolve.md, Search and Resolve] 8 | - [urllookup.md, URL Lookup] 9 | theme: readthedocs 10 | -------------------------------------------------------------------------------- /examples/javascript/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/examples/javascript/content/contents/images/icon.png -------------------------------------------------------------------------------- /examples/javascript/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/examples/javascript/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /examples/javascript/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/examples/javascript/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /examples/javascript/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Example Resolver", 3 | "pluginName": "example", 4 | "author": "Enno Gottschalk", 5 | "email": "mrmaffen@gmail.com", 6 | "version": "0.1.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Just an example Resolver.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/example.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/config.ui" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /examples/streamtest/content/contents/code/config.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | Form 4 | 5 | 6 | 7 | 0 8 | 0 9 | 390 10 | 120 11 | 12 | 13 | 14 | 15 | 250 16 | 120 17 | 18 | 19 | 20 | Form 21 | 22 | 23 | 24 | 25 | 26 | QFormLayout::ExpandingFieldsGrow 27 | 28 | 29 | 30 | 31 | URL 32 | 33 | 34 | Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /examples/streamtest/content/contents/code/streamtest.js: -------------------------------------------------------------------------------- 1 | var StreamTestResolver = Tomahawk.extend( Tomahawk.Resolver.Promise, { 2 | apiVersion: 0.9, 3 | 4 | settings: { 5 | cacheTime: 300, 6 | name: 'Stream Test', 7 | icon: '../icon.png', 8 | weight: 10, 9 | timeout: 8 10 | }, 11 | 12 | getConfigUi: function() { 13 | return { 14 | "widget": Tomahawk.readBase64( "config.ui" ), 15 | fields: [{ 16 | name: "stream_url", 17 | widget: "url_edit", 18 | property: "text" 19 | }] 20 | }; 21 | }, 22 | 23 | init: function() { 24 | Tomahawk.PluginManager.registerPlugin("linkParser", this); 25 | Tomahawk.addCustomUrlHandler( 'streamtest', 'getStreamUrl', true ); 26 | }, 27 | 28 | resolve: function (artist, album, title) { 29 | return [{ 30 | artist: artist, 31 | album: album, 32 | track: title, 33 | title: title, 34 | 35 | url: 'streamtest://track/' + encodeURIComponent(title), 36 | hint: 'streamtest://track/' + encodeURIComponent(title), 37 | checked: true, 38 | bitrate: 64, 39 | type: "track", 40 | }]; 41 | }, 42 | 43 | getStreamUrl: function(qid, url) { 44 | var config = this.getUserConfig(); 45 | Tomahawk.reportStreamUrl(qid, config.stream_url); 46 | }, 47 | 48 | }); 49 | 50 | Tomahawk.resolver.instance = StreamTestResolver; 51 | -------------------------------------------------------------------------------- /examples/streamtest/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Streaming Test Plugin", 3 | "pluginName": "streamtest", 4 | "author": "Anton Romanov", 5 | "email": "", 6 | "version": "0.0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from stream specified in settings", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/streamtest.js", 12 | "icon": "contents/icon.png", 13 | "scripts": [], 14 | "resources": [ 15 | "contents/code/config.ui" 16 | ] 17 | }, 18 | "staticCapabilities": [ 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /gmusic/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | /makeaxe.rb 3 | /gmusic-* 4 | -------------------------------------------------------------------------------- /gmusic/README.md: -------------------------------------------------------------------------------- 1 | Copying 2 | ======= 3 | 4 | Written in 2013 by Sam Hanes 5 | Heavily modified in 2014 by Lalit Maganti 6 | 7 | To the extent possible under law, the author(s) have dedicated all 8 | copyright and related and neighboring rights to this software to 9 | the public domain worldwide. This software is distributed without 10 | any warranty. 11 | 12 | You should have received a copy of the CC0 Public Domain Dedication 13 | along with this software. If not, see: 14 | http://creativecommons.org/publicdomain/zero/1.0/ 15 | 16 | -------------------------------------------------------------------------------- /gmusic/content/contents/code/play-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/gmusic/content/contents/code/play-logo.png -------------------------------------------------------------------------------- /gmusic/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/gmusic/content/contents/images/icon.png -------------------------------------------------------------------------------- /gmusic/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/gmusic/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /gmusic/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/gmusic/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /gmusic/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Google Play Music", 3 | "pluginName": "gmusic", 4 | "author": "Sam Hanes, Lalit Maganti, Enno Gottschalk", 5 | "email": "sam@maltera.com, lalitmaganti@gmail.com, mrmaffen@gmail.com", 6 | "version": "0.6.8", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from your Google Play Music locker and the entire Google Music catalog for subscribers.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/gmusic.js", 12 | "scripts": [], 13 | "libs": [ 14 | "cryptojs:3.1.2" 15 | ], 16 | "icon": "contents/images/icon.png", 17 | "iconWhite": "contents/images/iconWhite.png", 18 | "iconBackground": "contents/images/iconBackground.png", 19 | "resources": [ 20 | "contents/code/config.ui", 21 | "contents/code/play-logo.png" 22 | ] 23 | }, 24 | "staticCapabilities": [ 25 | "configTestable" 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /hatchet-metadata/content/contents/code/hatchet-metadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/hatchet-metadata/content/contents/code/hatchet-metadata.png -------------------------------------------------------------------------------- /hatchet-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/hatchet-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /hatchet-metadata/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/hatchet-metadata/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /hatchet-metadata/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/hatchet-metadata/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /hatchet-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hatchet", 3 | "pluginName": "hatchet-metadata", 4 | "author": "Enno Gottschalk", 5 | "email": "mrmaffen@googlemail.com", 6 | "version": "0.2.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Supports loading/drag'n'drop of hatchet.is URLs.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/hatchet-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /itunes/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/itunes/content/contents/images/icon.png -------------------------------------------------------------------------------- /itunes/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/itunes/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /itunes/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/itunes/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /itunes/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "iTunes", 3 | "pluginName": "itunes", 4 | "author": "Enno", 5 | "email": "mrmaffen@googlemail.com", 6 | "version": "0.0.1", 7 | "website": "https://itunes.apple.com", 8 | "description": "Gets the latest and greatest iTunes Charts.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/itunes.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /jamendo/content/contents/code/jamendo-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/jamendo/content/contents/code/jamendo-icon.png -------------------------------------------------------------------------------- /jamendo/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/jamendo/content/contents/images/icon.png -------------------------------------------------------------------------------- /jamendo/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/jamendo/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /jamendo/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/jamendo/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /jamendo/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Jamendo", 3 | "pluginName": "jamendo", 4 | "author": "lasconic and Enno", 5 | "email": "lasconic@gmail.com", 6 | "version": "0.2.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches Jamendo's free music database.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/jamendo.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/jamendo-icon.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /jazz-on-line/listing.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/jazz-on-line/listing.txt -------------------------------------------------------------------------------- /kibergrad/content/contents/code/kibergrad.js: -------------------------------------------------------------------------------- 1 | /* Kibergrad,com resolver for Tomahawk. 2 | * 3 | * Written in 2015 by Anton Romanov 4 | * Licensed under the Eiffel Forum License 2. 5 | * 6 | */ 7 | 8 | var KibergradResolver = Tomahawk.extend( Tomahawk.Resolver, { 9 | apiVersion: 0.9, 10 | 11 | settings: { 12 | cacheTime: 300, 13 | name: 'Kibergrad', 14 | weight: 76, 15 | icon: '../images/icon.png', 16 | timeout: 8 17 | }, 18 | 19 | search: function (params) { 20 | var that = this; 21 | 22 | return Tomahawk.get("https://kiber.me/search?q=" + params.query, 23 | {}).then(function (response){ 24 | var results = []; 25 | var trackRe = / 2 | 3 | Form 4 | 5 | 6 | 7 | 0 8 | 0 9 | 390 10 | 120 11 | 12 | 13 | 14 | 15 | 250 16 | 120 17 | 18 | 19 | 20 | Form 21 | 22 | 23 | 24 | 25 | 26 | QFormLayout::ExpandingFieldsGrow 27 | 28 | 29 | 30 | 31 | Stream Quality 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | LOW 40 | 41 | 42 | 43 | 44 | MEDIUM 45 | 46 | 47 | 48 | 49 | HIGH 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /netease/content/contents/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/netease/content/contents/images/logo.png -------------------------------------------------------------------------------- /netease/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Netease", 3 | "pluginName": "netease", 4 | "author": "Anton Romanov", 5 | "email": "", 6 | "version": "0.0.5", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from http://music.163.com", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/netease.js", 12 | "icon": "contents/images/logo.png", 13 | "scripts": [], 14 | "resources": [ 15 | "contents/code/config.ui" 16 | ] 17 | }, 18 | "staticCapabilities": [] 19 | } 20 | -------------------------------------------------------------------------------- /officialfm/content/contents/code/officialfm-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/officialfm/content/contents/code/officialfm-icon.png -------------------------------------------------------------------------------- /officialfm/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/officialfm/content/contents/images/icon.png -------------------------------------------------------------------------------- /officialfm/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/officialfm/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /officialfm/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/officialfm/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /officialfm/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Official.fm", 3 | "pluginName": "officialfm", 4 | "author": "Leo, lasconic and Enno", 5 | "email": "lasconic@gmail.com", 6 | "version": "1.1.0", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches Official.fm for playable tracks.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/officialfm.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/officialfm-icon.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /omnify-metadata/content/contents/code/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/omnify-metadata/content/contents/code/icon.png -------------------------------------------------------------------------------- /omnify-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/omnify-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /omnify-metadata/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/omnify-metadata/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /omnify-metadata/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/omnify-metadata/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /omnify-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Omnify", 3 | "pluginName": "omnify-metadata", 4 | "author": "Enno Gottschalk", 5 | "email": "mrmaffen@googlemail.com", 6 | "version": "0.0.1", 7 | "website": "http://omni.fyi", 8 | "description": "Supports loading/drag'n'drop of omni.fyi URLs.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/omnify-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tomahawk-resolvers", 3 | "version": "0.7.99", 4 | "description": "Tomahawk Resolvers", 5 | "main": "", 6 | "directories": { 7 | "test": "test" 8 | }, 9 | "scripts": { 10 | "test": "buster-test" 11 | }, 12 | "repository": { 13 | "type": "git", 14 | "url": "git://github.com/tomahawk-player/tomahawk-resolvers.git" 15 | }, 16 | "keywords": [ 17 | "tomahawk", 18 | "resolver" 19 | ], 20 | "author": "", 21 | "license": "Various", 22 | "bugs": { 23 | "url": "https://github.com/tomahawk-player/tomahawk-resolvers/issues" 24 | }, 25 | "homepage": "https://github.com/tomahawk-player/tomahawk-resolvers", 26 | "dependencies": { 27 | "buster": "^0.7.13", 28 | "minimist": "^1.1.0", 29 | "nock": "^0.32.0", 30 | "tomahawkjs": "^0.3.4" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /prostopleer/content/contents/code/pleer.js: -------------------------------------------------------------------------------- 1 | /* pleer.com resolver for Tomahawk. 2 | * 3 | * Written in 2015 by Anton Romanov 4 | * Licensed under the Eiffel Forum License 2. 5 | * 6 | */ 7 | 8 | var ProstopleerResolver = Tomahawk.extend( Tomahawk.Resolver, { 9 | apiVersion: 0.9, 10 | 11 | settings: { 12 | cacheTime: 300, 13 | name: 'prostopleer', 14 | weight: 76, 15 | icon: '../images/icon.png', 16 | timeout: 15 17 | }, 18 | 19 | _convertTrack: function (entry) { 20 | return { 21 | artist: entry.artist, 22 | track: entry.track, 23 | title: entry.track, 24 | size: entry.size, 25 | duration: entry.length, 26 | bitrate: parseInt(entry.bitrate.split(' ')[0]), 27 | url: entry.file, 28 | checked: true, 29 | type: "track", 30 | }; 31 | }, 32 | 33 | search: function (params) { 34 | var that = this; 35 | 36 | var query = params.query.replace(/\ /g, '+'); 37 | 38 | return Tomahawk.get("http://pleer.com/browser-extension/search?q=" + query).then(function (response){ 39 | return response.tracks.map(that._convertTrack, that); 40 | }); 41 | }, 42 | 43 | resolve: function (params) { 44 | var query = [ encodeURIComponent(params.artist), encodeURIComponent(params.track) ].join(' - '); 45 | return this.search({query:query}); 46 | } 47 | }); 48 | 49 | Tomahawk.resolver.instance = ProstopleerResolver; 50 | 51 | -------------------------------------------------------------------------------- /prostopleer/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/prostopleer/content/contents/images/icon.png -------------------------------------------------------------------------------- /prostopleer/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Prostopleer", 3 | "pluginName": "prostopleer", 4 | "author": "Anton Romanov", 5 | "email": "", 6 | "version": "0.0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from pleer.com", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/pleer.js", 12 | "icon": "contents/images/icon.png", 13 | "scripts": [], 14 | "resources": [] 15 | }, 16 | "staticCapabilities": [] 17 | } 18 | -------------------------------------------------------------------------------- /qobuz/content/contents/code/qobuz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/qobuz/content/contents/code/qobuz.png -------------------------------------------------------------------------------- /qobuz/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/qobuz/content/contents/images/icon.png -------------------------------------------------------------------------------- /qobuz/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Qobuz", 3 | "pluginName": "qobuz", 4 | "author": "Qobuz Sarl", 5 | "email": "regbasket@gmail.com", 6 | "version": "0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches Qobuz for playable tracks. Qobuz subscription required.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/qobuz.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [ 15 | "contents/code/qobuz.png", 16 | "contents/code/config.ui" 17 | ] 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /rhapsody/content/contents/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/rhapsody/content/contents/images/logo.png -------------------------------------------------------------------------------- /rhapsody/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Rhapsody", 3 | "pluginName": "rhapsody", 4 | "author": "Anton Romanov", 5 | "email": "", 6 | "version": "0.0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Rhapsody (PREMIER) on-demand streaming", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/rhapsody.js", 12 | "icon": "contents/images/logo.png", 13 | "scripts": [], 14 | "resources": [ 15 | "contents/code/config.ui" 16 | ] 17 | }, 18 | "staticCapabilities": [] 19 | } 20 | -------------------------------------------------------------------------------- /soundcloud/content/contents/code/soundcloud-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/soundcloud/content/contents/code/soundcloud-icon.png -------------------------------------------------------------------------------- /soundcloud/content/contents/code/soundcloud.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/soundcloud/content/contents/code/soundcloud.png -------------------------------------------------------------------------------- /soundcloud/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/soundcloud/content/contents/images/icon.png -------------------------------------------------------------------------------- /soundcloud/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/soundcloud/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /soundcloud/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/soundcloud/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /soundcloud/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "SoundCloud", 3 | "pluginName": "soundcloud", 4 | "author": "Thierry Göckel, Enno Gottschalk", 5 | "email": "thierry@strayrayday.lu", 6 | "version": "1.0.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "Resolves to playable tracks on SoundCloud, including live, cover and remixed versions if specified.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/soundcloud.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/soundcloud.png", 18 | "contents/code/soundcloud-icon.png", 19 | "contents/code/config.ui" 20 | ] 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /spotify-metadata/content/contents/code/spotify-metadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify-metadata/content/contents/code/spotify-metadata.png -------------------------------------------------------------------------------- /spotify-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /spotify-metadata/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify-metadata/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /spotify-metadata/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify-metadata/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /spotify-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Spotify Metadata", 3 | "pluginName": "spotify-metadata", 4 | "author": "Uwe L. Korn, Enno Gottschalk", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.1.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "Supports drag and drop of Spotify artist and track URLs (no Spotify account required)", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/spotify-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/spotify-metadata.png" 18 | ] 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /spotify/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014 Uwe L. Korn 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /spotify/content/contents/code/spotify.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify/content/contents/code/spotify.png -------------------------------------------------------------------------------- /spotify/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify/content/contents/images/icon.png -------------------------------------------------------------------------------- /spotify/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /spotify/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/spotify/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /spotify/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Spotify", 3 | "pluginName": "spotify", 4 | "author": "Uwe L. Korn, Enno Gottschalk", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.4.4", 7 | "website": "http://gettomahawk.com", 8 | "description": "Stream music from Spotify. Requires a Premium account.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/spotify.js", 12 | "icon": "contents/images/icon.png", 13 | "iconWhite": "contents/images/iconWhite.png", 14 | "iconBackground": "contents/images/iconBackground.png", 15 | "scripts": [], 16 | "resources": [ 17 | "contents/code/config.ui", 18 | "contents/code/spotify.png" 19 | ] 20 | }, 21 | "staticCapabilities": [ 22 | "configTestable" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /spotify/native/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project( spotify-native ) 2 | cmake_minimum_required( VERSION 2.8.6 ) 3 | set( CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules" ) 4 | 5 | find_package(Microhttpd REQUIRED) 6 | find_package(Spotify REQUIRED) 7 | 8 | include(CheckCXXCompilerFlag) 9 | check_cxx_compiler_flag( "-std=c++11" CXX11_FOUND ) 10 | check_cxx_compiler_flag( "-std=c++0x" CXX0X_FOUND ) 11 | check_cxx_compiler_flag( "-stdlib=libc++" LIBCPP_FOUND ) 12 | if(CXX11_FOUND) 13 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") 14 | elseif(CXX0X_FOUND) 15 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") 16 | else() 17 | message(FATAL_ERROR "${CMAKE_CXX_COMPILER} does not support C++11, please 18 | use a different compiler") 19 | endif() 20 | if(LIBCPP_FOUND AND APPLE) 21 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") 22 | endif() 23 | 24 | # We want as many as possible warnings 25 | set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra") 26 | 27 | include_directories( 28 | ${MICROHTTPD_INCLUDE_DIR} 29 | ) 30 | 31 | # Define the "resolver" target 32 | add_executable( spotify_native_bin 33 | main.cpp 34 | ) 35 | target_link_libraries( spotify_native_bin 36 | ${MICROHTTPD_LIBRARY} 37 | ) 38 | set_target_properties( spotify_native_bin 39 | PROPERTIES 40 | RUNTIME_OUTPUT_NAME spotify-native${SPOTIFY_NATIVE_SUFFIX} 41 | ) 42 | -------------------------------------------------------------------------------- /spotify/native/CMakeModules/FindMicrohttpd.cmake: -------------------------------------------------------------------------------- 1 | find_package(PkgConfig) 2 | pkg_check_modules(PC_MICROHTTPD libmicrohttpd) 3 | 4 | find_path(MICROHTTPD_INCLUDE_DIR microhttpd.h 5 | HINTS 6 | ${PC_MICROHTTPD_INCLUDEDIR} 7 | ${PC_MICROHTTPD_INCLUDE_DIRS} 8 | ) 9 | 10 | find_library(MICROHTTPD_LIBRARY NAMES microhttpd 11 | HINTS 12 | ${PC_MICROHTTPD_LIBDIR} 13 | ${PC_MICROHTTPD_LIBRARY_DIRS} 14 | ) 15 | 16 | set(MICROHTTPD_VERSION ${PC_MICROHTTPD_VERSION}) 17 | 18 | find_package_handle_standard_args(Microhttpd 19 | REQUIRED_VARS MICROHTTPD_INCLUDE_DIR MICROHTTPD_LIBRARY 20 | VERSION_VAR MICROHTTPD_VERSION 21 | ) 22 | 23 | -------------------------------------------------------------------------------- /spotify/native/CMakeModules/FindSpotify.cmake: -------------------------------------------------------------------------------- 1 | find_package(PkgConfig) 2 | pkg_check_modules(PC_SPOTIFY libspotify) 3 | 4 | find_path(SPOTIFY_INCLUDE_DIR libspotify/api.h 5 | HINTS 6 | ${PC_SPOTIFY_INCLUDEDIR} 7 | ${PC_SPOTIFY_INCLUDE_DIRS} 8 | ) 9 | 10 | find_library(SPOTIFY_LIBRARY NAMES spotify 11 | HINTS 12 | ${PC_SPOTIFY_LIBDIR} 13 | ${PC_SPOTIFY_LIBRARY_DIRS} 14 | ) 15 | 16 | set(SPOTIFY_VERSION ${PC_SPOTIFY_VERSION}) 17 | 18 | find_package_handle_standard_args(Spotify 19 | REQUIRED_VARS SPOTIFY_INCLUDE_DIR SPOTIFY_LIBRARY 20 | VERSION_VAR SPOTIFY_VERSION 21 | ) 22 | 23 | -------------------------------------------------------------------------------- /subsonic/content/contents/code/subsonic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/subsonic/content/contents/code/subsonic.png -------------------------------------------------------------------------------- /subsonic/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/subsonic/content/contents/images/icon.png -------------------------------------------------------------------------------- /subsonic/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/subsonic/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /subsonic/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/subsonic/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /subsonic/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Subsonic", 3 | "pluginName": "subsonic", 4 | "author": "mack_t, Teo and Enno", 5 | "email": "teo@kde.org", 6 | "version": "0.9.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches your Subsonic server for music to play.", 9 | "platform": "any", 10 | "tomahawkVersion": "0.6.99", 11 | "type": "resolver/javascript", 12 | "manifest": { 13 | "main": "contents/code/subsonic.js", 14 | "scripts": [], 15 | "icon": "contents/images/icon.png", 16 | "iconWhite": "contents/images/iconWhite.png", 17 | "iconBackground": "contents/images/iconBackground.png", 18 | "resources": [ 19 | "contents/code/config.ui", 20 | "contents/code/subsonic.png" 21 | ] 22 | }, 23 | "staticCapabilities": [ 24 | "configTestable" 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /synology-audiostation/content/contents/code/audiostation-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/synology-audiostation/content/contents/code/audiostation-icon.png -------------------------------------------------------------------------------- /synology-audiostation/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/synology-audiostation/content/contents/images/icon.png -------------------------------------------------------------------------------- /synology-audiostation/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Synology AudioStation", 3 | "pluginName": "synology", 4 | "author": "Ron Jaegers", 5 | "email": "ron.jaegers@gmail.com", 6 | "version": "0.0.5", 7 | "website": "http://gettomahawk.com", 8 | "description": "Resolves and plays tracks from your Synology AudioStation.", 9 | "platform": "any", 10 | "type": "resolver/javascript", 11 | "manifest": { 12 | "main": "contents/code/synology-audiostation.js", 13 | "scripts": [], 14 | "icon": "contents/images/icon.png", 15 | "resources": [ 16 | "contents/code/config.ui", 17 | "contents/code/audiostation-icon.png" 18 | ] 19 | } 20 | } -------------------------------------------------------------------------------- /test/buster.js: -------------------------------------------------------------------------------- 1 | var config = module.exports; 2 | 3 | config["resolver tests"] = { 4 | rootPath: "../", 5 | environment: "node", 6 | sources: [ 7 | ], 8 | tests: [ 9 | "beatsmusic/content/contents/code/test.js", 10 | "soundcloud/content/contents/code/test.js" 11 | ] 12 | } 13 | 14 | // Add more configuration groups as needed 15 | -------------------------------------------------------------------------------- /test/utils.js: -------------------------------------------------------------------------------- 1 | var fs = require('fs'); 2 | var TomahawkJS = require("tomahawkjs"); 3 | 4 | module.exports.loadAxe = function(path, owner, done, config) { 5 | TomahawkJS.loadAxe(path, function(err, axe) { 6 | axe.getInstance(function(err, instance_context) { 7 | owner.instance = instance_context.instance; 8 | owner.context = instance_context.context; 9 | owner.instance.init(function (error) { 10 | if (error) { 11 | // TODO Loading failed, crash! 12 | } else { 13 | // Resolver loaded successfully, start testing. 14 | done(); 15 | } 16 | }); 17 | }, config); 18 | }); 19 | }; 20 | 21 | module.exports.loadResolver = function (name, owner, done, config) { 22 | owner.metadata = JSON.parse(fs.readFileSync(name + '/content/metadata.json')) 23 | module.exports.loadAxe(name + '/' + name + '-' + owner.metadata.version + '.axe', owner, done, config); 24 | }; 25 | 26 | -------------------------------------------------------------------------------- /tidal/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tidal/content/contents/images/icon.png -------------------------------------------------------------------------------- /tidal/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tidal/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /tidal/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tidal/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /tidal/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "TIDAL", 3 | "pluginName": "tidal", 4 | "author": "Anton Romanov and Will Stott", 5 | "email": "", 6 | "version": "0.0.7", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from tidal.com (requires subscription)", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/tidal.js", 12 | "icon": "contents/images/icon.png", 13 | "iconWhite": "contents/images/iconWhite.png", 14 | "iconBackground": "contents/images/iconBackground.png", 15 | "scripts": [], 16 | "resources": [ 17 | "contents/code/config.ui" 18 | ] 19 | }, 20 | "staticCapabilities": [ 21 | "configTestable" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /tomahawk-metadata/content/contents/code/tomahawk-metadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tomahawk-metadata/content/contents/code/tomahawk-metadata.png -------------------------------------------------------------------------------- /tomahawk-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tomahawk-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /tomahawk-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tomahawk Metadata", 3 | "pluginName": "tomahawk-metadata", 4 | "author": "Enno Gottschalk", 5 | "email": "mrmaffen@googlemail.com", 6 | "version": "0.2.0", 7 | "website": "http://gettomahawk.com", 8 | "description": "Supports loading/drag'n'drop of tomahawk:// URLs.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/tomahawk-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [ 15 | "contents/code/tomahawk-metadata.png" 16 | ] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tomahk-metadata/content/contents/code/tomahk-metadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tomahk-metadata/content/contents/code/tomahk-metadata.png -------------------------------------------------------------------------------- /tomahk-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/tomahk-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /tomahk-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "toma.hk Metadata", 3 | "pluginName": "tomahk-metadata", 4 | "author": "Uwe L. Korn and Enno", 5 | "email": "uwelk@xhochy.com", 6 | "version": "0.2.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Supports loading and drag and drop of toma.hk URLs.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/tomahk-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [ 15 | "contents/code/tomahk-metadata.png" 16 | ] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tools/getstreamurl.js: -------------------------------------------------------------------------------- 1 | var argv = require('minimist')(process.argv.slice(2)); 2 | var utils = require('../test/utils.js'); 3 | 4 | if (argv._.length < 1) { 5 | console.error("Please specify a single resolver"); 6 | process.exit(1); 7 | } 8 | 9 | if (argv._.length < 3) { 10 | console.error("You need to specify at least an artist and a track for resolving."); 11 | process.exit(1); 12 | } 13 | 14 | // We use the string argument as the path to the resolver. 15 | var resolverPath = argv._[0]; 16 | var artist = argv._[1]; 17 | var track = argv._[2]; 18 | var album = ""; 19 | 20 | if (argv._.length > 3) { 21 | album = argv._[3]; 22 | } 23 | 24 | // All -/-- arguments will be added to the config. 25 | // If --config is specified, we will instead load them from the config file. 26 | var resolverConfig = argv; 27 | if (argv.hasOwnProperty("config")) { 28 | // FIXME: Add support for absolute paths 29 | resolverConfig = require("../" + argv.config); 30 | } else { 31 | delete resolverConfig._; 32 | } 33 | 34 | var resolver = {}; 35 | 36 | utils.loadAxe(resolverPath, resolver, function () { 37 | // Use once instead of on here to only handle the first result. 38 | resolver.context.once('track-result', function (qid, result) { 39 | if (resolver.context.Tomahawk.hasCustomUrlHandler) { 40 | resolver.context.getStreamUrl(2, result.url); 41 | } else { 42 | console.log(result.url); 43 | } 44 | }); 45 | resolver.context.once('stream-url', function (qid, url) { 46 | console.log(url); 47 | }); 48 | resolver.instance.resolve("qid", artist, album, track); 49 | }, resolverConfig); 50 | 51 | -------------------------------------------------------------------------------- /tools/resolve.js: -------------------------------------------------------------------------------- 1 | var argv = require('minimist')(process.argv.slice(2)); 2 | var utils = require('../test/utils.js'); 3 | 4 | if (argv._.length < 1) { 5 | console.error("Please specify a single resolver"); 6 | process.exit(1); 7 | } 8 | 9 | if (argv._.length < 3) { 10 | console.error("You need to specify at least an artist and a track for resolving."); 11 | process.exit(1); 12 | } 13 | 14 | // We use the string argument as the path to the resolver. 15 | var resolverPath = argv._[0]; 16 | var artist = argv._[1]; 17 | var track = argv._[2]; 18 | var album = ""; 19 | 20 | if (argv._.length > 3) { 21 | album = argv._[3]; 22 | } 23 | 24 | // All -/-- arguments will be added to the config. 25 | // If --config is specified, we will instead load them from the config file. 26 | var resolverConfig = argv; 27 | if (argv.hasOwnProperty("config")) { 28 | // FIXME: Add support for absolute paths 29 | resolverConfig = require("../" + argv.config); 30 | } else { 31 | delete resolverConfig._; 32 | } 33 | 34 | var resolver = {}; 35 | 36 | utils.loadAxe(resolverPath, resolver, function () { 37 | resolver.context.on('track-result', function (qid, result) { 38 | console.dir(result); 39 | }); 40 | resolver.instance.resolve("qid", artist, album, track); 41 | }, resolverConfig); 42 | -------------------------------------------------------------------------------- /tools/search.js: -------------------------------------------------------------------------------- 1 | var argv = require('minimist')(process.argv.slice(2)); 2 | var utils = require('../test/utils.js'); 3 | 4 | if (argv._.length < 1) { 5 | console.error("Please specify a single resolver"); 6 | process.exit(1); 7 | } 8 | 9 | if (argv._.length < 2) { 10 | console.error("You need to specify at least some characters to search for."); 11 | process.exit(1); 12 | } 13 | 14 | // We use the string argument as the path to the resolver. 15 | var resolverPath = argv._.shift(); 16 | // All other arguments are passed as the search query 17 | var searchQuery = argv._.join(" "); 18 | 19 | // All -/-- arguments will be added to the config. 20 | // If --config is specified, we will instead load them from the config file. 21 | var resolverConfig = argv; 22 | if (argv.hasOwnProperty("config")) { 23 | // FIXME: Add support for absolute paths 24 | resolverConfig = require("../" + argv.config); 25 | } else { 26 | delete resolverConfig._; 27 | } 28 | 29 | var resolver = {}; 30 | 31 | utils.loadAxe(resolverPath, resolver, function () { 32 | resolver.context.on('track-result', function (qid, result) { 33 | console.dir(result); 34 | }); 35 | resolver.instance.search("qid", searchQuery); 36 | }, resolverConfig); 37 | -------------------------------------------------------------------------------- /tools/urllookup.js: -------------------------------------------------------------------------------- 1 | var argv = require('minimist')(process.argv.slice(2)); 2 | var utils = require('../test/utils.js'); 3 | 4 | if (argv._.length < 1) { 5 | console.error("Please specify a single resolver"); 6 | process.exit(1); 7 | } 8 | 9 | if (argv._.length < 2) { 10 | console.error("You need to specify an URL which shall be looked up."); 11 | process.exit(1); 12 | } 13 | 14 | // We use the string argument as the path to the resolver. 15 | var resolverPath = argv._[0]; 16 | var url = argv._[1]; 17 | 18 | // All -/-- arguments will be added to the config. 19 | // TODO: Add an agurment to load the config from a file. 20 | var resolverConfig = argv; 21 | if (argv.hasOwnProperty("config")) { 22 | // FIXME: Add support for absolute paths 23 | resolverConfig = require("../" + argv.config); 24 | } else { 25 | delete resolverConfig._; 26 | } 27 | 28 | var resolver = {}; 29 | 30 | utils.loadAxe(resolverPath, resolver, function () { 31 | if (!resolver.context.hasCapability('urllookup')) { 32 | console.error("Resolver does not support URLLookup."); 33 | } else { 34 | resolver.context.on('url-result', function (url, result) { 35 | console.dir(result); 36 | }); 37 | 38 | if (resolver.instance.canParseUrl(url)) { 39 | resolver.instance.lookupUrl(url); 40 | } else { 41 | console.error("Resolver cannot lookup URLs of the given type."); 42 | } 43 | } 44 | }, resolverConfig); 45 | -------------------------------------------------------------------------------- /vibe3/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/vibe3/content/contents/images/icon.png -------------------------------------------------------------------------------- /vibe3/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vibe3", 3 | "pluginName": "vibe3", 4 | "author": "Lorenz Hübschle-Schneider and Thierry Göckel", 5 | "email": "lorenz@4z2.de", 6 | "version": "0.1.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Looks for tracks to play from www.vibe3.com.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/vibe3.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [] 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /vkontakte/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/vkontakte/content/contents/images/icon.png -------------------------------------------------------------------------------- /vkontakte/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "VK.com", 3 | "pluginName": "vkontakte", 4 | "author": "Anton Romanov", 5 | "email": "theli.ua@gmail.com", 6 | "version": "0.2.2", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches VKontakte (vk.com) for music to play. Requires free account", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/vkontakte.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": [] 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /youtube-metadata/content/contents/code/youtube-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube-metadata/content/contents/code/youtube-icon.png -------------------------------------------------------------------------------- /youtube-metadata/content/contents/code/youtube-metadata.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube-metadata/content/contents/code/youtube-metadata.js -------------------------------------------------------------------------------- /youtube-metadata/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube-metadata/content/contents/images/icon.png -------------------------------------------------------------------------------- /youtube-metadata/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "YouTube Metadata", 3 | "pluginName": "youtube-metadata", 4 | "author": "Thierry Göckel", 5 | "email": "thierry@strayrayday.lu", 6 | "version": "0.0.3", 7 | "website": "http://gettomahawk.com", 8 | "description": "Enables dropping YouTube URLs on Tomahawk.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/youtube-metadata.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "resources": ["contents/code/youtube-icon.png"] 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /youtube/content/contents/code/youtube-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube/content/contents/code/youtube-icon.png -------------------------------------------------------------------------------- /youtube/content/contents/code/youtube.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube/content/contents/code/youtube.png -------------------------------------------------------------------------------- /youtube/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube/content/contents/images/icon.png -------------------------------------------------------------------------------- /youtube/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /youtube/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/youtube/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /youtube/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "YouTube", 3 | "pluginName": "youtube", 4 | "author": "Hugo, Leo, Thierry, Anton and Enno", 5 | "email": "lfranchi@kde.org", 6 | "version": "0.9.28", 7 | "website": "http://gettomahawk.com", 8 | "description": "Searches YouTube for audio content to play.", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/youtube.js", 12 | "scripts": [], 13 | "icon": "contents/images/icon.png", 14 | "iconWhite": "contents/images/iconWhite.png", 15 | "iconBackground": "contents/images/iconBackground.png", 16 | "resources": [ 17 | "contents/code/config.ui", 18 | "contents/code/youtube-icon.png", 19 | "contents/code/youtube.png" 20 | ] 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /zaycevnet/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/zaycevnet/content/contents/images/icon.png -------------------------------------------------------------------------------- /zaycevnet/content/contents/images/iconBackground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/zaycevnet/content/contents/images/iconBackground.png -------------------------------------------------------------------------------- /zaycevnet/content/contents/images/iconWhite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/zaycevnet/content/contents/images/iconWhite.png -------------------------------------------------------------------------------- /zaycevnet/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Zaycevnet", 3 | "pluginName": "zaycevnet", 4 | "author": "Anton Romanov", 5 | "email": "", 6 | "version": "0.0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from zaycevnet.info", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/zaycev.js", 12 | "icon": "contents/images/icon.png", 13 | "iconWhite": "contents/images/iconWhite.png", 14 | "iconBackground": "contents/images/iconBackground.png", 15 | "scripts": [ 16 | "contents/code/strstr.js" 17 | ], 18 | "resources": [] 19 | }, 20 | "staticCapabilities": [] 21 | } 22 | -------------------------------------------------------------------------------- /zv.fm/content/contents/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tomahawk-player/tomahawk-resolvers/7f827bbe410ccfdb0446f7d6a91acc2199c9cc8d/zv.fm/content/contents/images/icon.png -------------------------------------------------------------------------------- /zv.fm/content/metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "zv.fm", 3 | "pluginName": "zv", 4 | "author": "Anton Romanov", 5 | "email": "", 6 | "version": "0.0.1", 7 | "website": "http://gettomahawk.com", 8 | "description": "Streams music from zv.fm", 9 | "type": "resolver/javascript", 10 | "manifest": { 11 | "main": "contents/code/zv.js", 12 | "icon": "contents/images/icon.png", 13 | "scripts": [], 14 | "resources": [] 15 | }, 16 | "staticCapabilities": [] 17 | } 18 | --------------------------------------------------------------------------------